- cmInetAddr((S8*)DU_IP_V4_ADDR, &ipv4_du);
- cmInetAddr((S8*)RIC_IP_V4_ADDR, &ipv4_ric);
-
- cuCfgParams.cuId = RIC_ID;
- strcpy(cuCfgParams.cuName, RIC_NAME);
-
- /* DU IP Address and Port*/
- cuCfgParams.sctpParams.duIpAddr.ipV4Addr = ipv4_du;
- cuCfgParams.sctpParams.duIpAddr.ipV6Pres = false;
- cuCfgParams.sctpParams.duPort = DU_PORT;
+ ricCfgParams.ricId = RIC_ID;
+ strcpy(ricCfgParams.ricName, RIC_NAME);
+#ifdef O1_ENABLE
+ if( getStartupConfigForStub(&g_cfg) != ROK )
+ {
+ DU_LOG("\nError --> RIC : Could not fetch startup "\
+ "configurations from Netconf interface\n");
+ exit(1);
+ }
+
+ cmInetAddr((S8*)g_cfg.DU_IPV4_Addr, &ipv4_du);
+ cmInetAddr((S8*)g_cfg.RIC_IPV4_Addr, &ipv4_ric);
+
+ ricCfgParams.sctpParams.sctpAssoc[0].duIpAddr.ipV4Addr = ipv4_du;
+ ricCfgParams.sctpParams.sctpAssoc[0].duIpAddr.ipV6Pres = false;
+ ricCfgParams.sctpParams.sctpAssoc[0].duPort = g_cfg.RIC_Port;
+
+ ricCfgParams.sctpParams.sctpAssoc[0].ricIpAddr.ipV4Addr = ipv4_ric;
+ ricCfgParams.sctpParams.sctpAssoc[0].ricIpAddr.ipV6Pres = false;
+ ricCfgParams.sctpParams.sctpAssoc[0].ricPort = g_cfg.RIC_Port;
+
+ ricCfgParams.sctpParams.numDu = 1;
+
+#else
+ ricCfgParams.sctpParams.numDu = 0;
+ numDu = &ricCfgParams.sctpParams.numDu;
+ while(*numDu < MAX_DU_SUPPORTED)
+ {
+ /* DU IP Address and Port*/
+ memset(&ipv4_du, 0, sizeof(uint32_t));
+ cmInetAddr((S8*)DU_IP_V4_ADDR[*numDu], &ipv4_du);
+ ricCfgParams.sctpParams.sctpAssoc[*numDu].duIpAddr.ipV4Addr = ipv4_du;
+ ricCfgParams.sctpParams.sctpAssoc[*numDu].duIpAddr.ipV6Pres = false;
+ ricCfgParams.sctpParams.sctpAssoc[*numDu].duPort = DU_SCTP_PORT[*numDu];