From 0a3293d0df27b362a44927c2cd4899a31488c738 Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Thu, 27 Nov 2025 00:19:47 +0000 Subject: [PATCH 1/6] RDKB-777777: Get the udhcpc arguments for virtual mta interface Reason for change:Added the new entry for virual mta interface Test Procedure: verify the logic and functionality Risks: Low Priority: P1 --- .../apply_system_defaults.c | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c index 1430afbc..f7119630 100644 --- a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c +++ b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c @@ -1405,6 +1405,13 @@ STATIC void addInSysCfgdDB (char *key, char *value) set_syscfg_partner_values( value,"StartupIPMode" ); } } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc")) + { + if (0 == IsValuePresentinSyscfgDB("ConfigMacVlanWithUdhcpc")) + { + set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); + } + } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { if ( 0 == IsValuePresentinSyscfgDB( "IPv4PrimaryDhcpServerOptions" ) ) @@ -1683,6 +1690,10 @@ STATIC void updateSysCfgdDB (char *key, char *value) { set_syscfg_partner_values( value,"StartupIPMode" ); } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc")) + { + set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); + } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { set_syscfg_partner_values( value,"IPv4PrimaryDhcpServerOptions" ); @@ -2335,6 +2346,7 @@ static int apply_partnerId_default_values (char *data, char *PartnerID) char *startupipmode = NULL, *pridhcpoption = NULL, *secdhcpoption = NULL, + *pConfigMacVlanWithUdhcpc = NULL, *voiceDefaultConfigFile = NULL; #endif int isNeedToApplyPartnersDefault = 1; @@ -3000,6 +3012,20 @@ static int apply_partnerId_default_values (char *data, char *PartnerID) APPLY_PRINT("%s - Default Value of StartupIPMode is NULL\n", __FUNCTION__ ); } + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc"), "ActiveValue"); + if (paramObjVal != NULL) + { + pConfigMacVlanWithUdhcpc = paramObjVal->valuestring; + if (pConfigMacVlanWithUdhcpc[0] != '\0') + { + set_syscfg_partner_values(pConfigMacVlanWithUdhcpc, "ConfigMacVlanWithUdhcpc"); + pConfigMacVlanWithUdhcpc = NULL; + } + } + else + { + APPLY_PRINT("%s - Default Value of ConfigMacVlanWithUdhcpc is NULL\n", __FUNCTION__); + } paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem( partnerObj, "Default_VoIP_Configuration_FileName"), "ActiveValue"); if ( paramObjVal != NULL ) { From 99fbc60d0fd3cccd69fbe840ee02463ab809c5ca Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Thu, 18 Dec 2025 00:13:03 +0000 Subject: [PATCH 2/6] RDKB-777777: Get the udhcpc arguments for virtual mta interface Reason for change:Added the new entry for virual mta interface Test Procedure: verify the logic and functionality Risks: Low Priority: P1 --- .../init/src/apply_system_defaults/apply_system_defaults.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c index b808b7ed..7cf12d56 100644 --- a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c +++ b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c @@ -1414,6 +1414,10 @@ STATIC void addInSysCfgdDB (char *key, char *value) { set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); } + if (0 == IsValuePresentinSyscfgDB("mtaIface")) + { + set_syscfg_partner_values("mta0", "mtaIface"); + } } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { @@ -1696,6 +1700,7 @@ STATIC void updateSysCfgdDB (char *key, char *value) if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc")) { set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); + set_syscfg_partner_values("mta0", "mtaIface"); } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { @@ -3022,6 +3027,7 @@ static int apply_partnerId_default_values (char *data, char *PartnerID) if (pConfigMacVlanWithUdhcpc[0] != '\0') { set_syscfg_partner_values(pConfigMacVlanWithUdhcpc, "ConfigMacVlanWithUdhcpc"); + set_syscfg_partner_values("mta0", "mtaIface"); pConfigMacVlanWithUdhcpc = NULL; } } From 65c01cf9ce10544a7d15ceeb178dcd155d22b11c Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Fri, 19 Dec 2025 02:34:10 +0000 Subject: [PATCH 3/6] RDKB-777777: Get the udhcpc arguments for virtual mta interface Reason for change:Added the new entry for virual mta interface Test Procedure: verify the logic and functionality Risks: Low Priority: P1 --- .../apply_system_defaults.c | 88 ++++++++++++------- 1 file changed, 55 insertions(+), 33 deletions(-) diff --git a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c index 7cf12d56..414ee957 100644 --- a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c +++ b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c @@ -1408,17 +1408,6 @@ STATIC void addInSysCfgdDB (char *key, char *value) set_syscfg_partner_values( value,"StartupIPMode" ); } } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc")) - { - if (0 == IsValuePresentinSyscfgDB("ConfigMacVlanWithUdhcpc")) - { - set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); - } - if (0 == IsValuePresentinSyscfgDB("mtaIface")) - { - set_syscfg_partner_values("mta0", "mtaIface"); - } - } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { if ( 0 == IsValuePresentinSyscfgDB( "IPv4PrimaryDhcpServerOptions" ) ) @@ -1440,6 +1429,21 @@ STATIC void addInSysCfgdDB (char *key, char *value) set_syscfg_partner_values( value,"IPv6PrimaryDhcpServerOptions" ); } } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled")) { + if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_Enabled")) { + set_syscfg_partner_values(value, "VoiceMtaIface_Enabled"); + if (0 == IsValuePresentinSyscfgDB("mtaIface")) + set_syscfg_partner_values("mta0", "mtaIface"); + } + } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled")) { + if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_DhcpV4Enabled")) + set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV4Enabled"); + } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV6Enabled")) { + if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_DhcpV6Enabled")) + set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV6Enabled"); + } #endif if ( 0 == strcmp ( key, "Device.X_RDK_WebConfig.URL") ) { @@ -1697,11 +1701,6 @@ STATIC void updateSysCfgdDB (char *key, char *value) { set_syscfg_partner_values( value,"StartupIPMode" ); } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc")) - { - set_syscfg_partner_values(value, "ConfigMacVlanWithUdhcpc"); - set_syscfg_partner_values("mta0", "mtaIface"); - } if ( 0 == strcmp ( key, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.IPv4PrimaryDhcpServerOptions") ) { set_syscfg_partner_values( value,"IPv4PrimaryDhcpServerOptions" ); @@ -1710,6 +1709,15 @@ STATIC void updateSysCfgdDB (char *key, char *value) { set_syscfg_partner_values( value,"IPv4SecondaryDhcpServerOptions" ); } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled")) { + set_syscfg_partner_values(value, "VoiceMtaIface_Enabled"); + set_syscfg_partner_values("mta0", "mtaIface"); + } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled")) + set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV4Enabled"); + + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV6Enabled")) + set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV6Enabled"); #endif if ( 0 == strcmp ( key, "Device.X_RDK_WebConfig.URL") ) { @@ -2354,7 +2362,6 @@ static int apply_partnerId_default_values (char *data, char *PartnerID) char *startupipmode = NULL, *pridhcpoption = NULL, *secdhcpoption = NULL, - *pConfigMacVlanWithUdhcpc = NULL, *voiceDefaultConfigFile = NULL; #endif int isNeedToApplyPartnersDefault = 1; @@ -3019,22 +3026,6 @@ static int apply_partnerId_default_values (char *data, char *PartnerID) { APPLY_PRINT("%s - Default Value of StartupIPMode is NULL\n", __FUNCTION__ ); } - - paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj, "Device.X_RDKCENTRAL-COM_EthernetWAN_MTA.ConfigMacVlanWithUdhcpc"), "ActiveValue"); - if (paramObjVal != NULL) - { - pConfigMacVlanWithUdhcpc = paramObjVal->valuestring; - if (pConfigMacVlanWithUdhcpc[0] != '\0') - { - set_syscfg_partner_values(pConfigMacVlanWithUdhcpc, "ConfigMacVlanWithUdhcpc"); - set_syscfg_partner_values("mta0", "mtaIface"); - pConfigMacVlanWithUdhcpc = NULL; - } - } - else - { - APPLY_PRINT("%s - Default Value of ConfigMacVlanWithUdhcpc is NULL\n", __FUNCTION__); - } paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem( partnerObj, "Default_VoIP_Configuration_FileName"), "ActiveValue"); if ( paramObjVal != NULL ) { @@ -3109,6 +3100,37 @@ if ( paramObjVal != NULL ) { APPLY_PRINT("%s - Default Value of Secondary dhcp server option is NULL\n", __FUNCTION__ ); } + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled"),"ActiveValue"); + if(paramObjVal != NULL) + { + char *pVoiceMtaIfaceEnable = NULL; + pVoiceMtaIfaceEnable = paramObjVal->valuestring; + if(pVoiceMtaIfaceEnable != NULL) + { + set_syscfg_partner_values(pVoiceMtaIfaceEnable,"VoiceMtaIface_Enabled"); + set_syscfg_partner_values("mta0","mtaIface"); + pVoiceMtaIfaceEnable = NULL; + } + else + { + APPLY_PRINT("%s - VoiceMtaIfaceEnabled Value is NULL\n", __FUNCTION__ ); + } + } + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled"),"ActiveValue"); + if(paramObjVal != NULL) + { + char *pVoiceMtaIfaceDhcpV4Enable = NULL; + pVoiceMtaIfaceDhcpV4Enable = paramObjVal->valuestring; + if(pVoiceMtaIfaceDhcpV4Enable != NULL) + { + set_syscfg_partner_values(pVoiceMtaIfaceDhcpV4Enable,"VoiceMtaIface_DhcpV4Enabled"); + pVoiceMtaIfaceDhcpV4Enable = NULL; + } + else + { + APPLY_PRINT("%s - VoiceMtaIfaceDhcpV4Enabled Value is NULL\n", __FUNCTION__ ); + } + } #endif paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem( partnerObj, "Device.DeviceInfo.X_RDKCENTRAL-COM_Syndication.WANsideSSH.Enable"), "ActiveValue"); if ( paramObjVal != NULL ) From 3caa07e05eac347600e272eb0b8328b11c507eb9 Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Wed, 24 Dec 2025 02:03:16 +0000 Subject: [PATCH 4/6] RDKB-777777: Get the udhcpc arguments for macvlan mta interface Reason for change:Added the new entry for mac vlan interface Test Procedure: verify the logic and functionality Risks: High Priority: P1 --- source/service_udhcpc/service_udhcpc.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/source/service_udhcpc/service_udhcpc.c b/source/service_udhcpc/service_udhcpc.c index cc40679c..db6899c7 100644 --- a/source/service_udhcpc/service_udhcpc.c +++ b/source/service_udhcpc/service_udhcpc.c @@ -1544,6 +1544,7 @@ STATIC int send_dhcp_data_to_wanmanager (ipc_dhcpv4_data_t *dhcpv4_data) int service_udhcpc_main(int argc, char *argv[]) { udhcpc_script_t info; + char cInterfaceName[32] = {0}; if ((argc < 2) || !argv) { return -1; @@ -1559,13 +1560,31 @@ int service_udhcpc_main(int argc, char *argv[]) return -1; } init_udhcpc_script_info(&info,argv[1]); + const char *pIfname = getenv("interface"); + if (pIfname) { + OnboardLog ("%s-%d DHCP event on interface %s \n", __FUNCTION__, __LINE__, pIfname); + } + else { + OnboardLog ("%s-%d DHCP event on unknown interface \n", __FUNCTION__, __LINE__); + } + syscfg_get(NULL, "mtaIface", cInterfaceName, sizeof(cInterfaceName)); if (!strcmp (argv[1],"deconfig")) { - handle_defconfig(&info); + if ((pIfname != NULL) && ('\0' != cInterfaceName[0]) && (strcmp(pIfname, cInterfaceName) == 0)) + { + OnboardLog ("%s-%d Clearing MTA parameters on deconfig event \n", __FUNCTION__, __LINE__); + //Handle defconfig for MTA interface + }else + handle_defconfig(&info); } else if ((!strcmp (argv[1],"bound")) || (!strcmp (argv[1],"renew")) || (!strcmp (argv[1],"invalid_lease"))) { - handle_wan(&info); + if ((pIfname != NULL) && ('\0' != cInterfaceName[0]) && (strcmp(pIfname, cInterfaceName) == 0)) + { + OnboardLog ("%s-%d Setting MTA parameters on %s event \n", __FUNCTION__, __LINE__, argv[1]); + //Handle bound/renew for MTA interface + }else + handle_wan(&info); } #ifdef FEATURE_RDKB_WAN_MANAGER else if( !strcmp (argv[1], "leasefail")) From 6440c35abebb45ef891c52e721824b74fa2563da Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Thu, 25 Dec 2025 00:41:25 +0000 Subject: [PATCH 5/6] RDKB-62812:Create Virtual Interface for voice and initialize DHCP Reason for change:Added the new entry for virual mta interface Test Procedure: verify the logic and functionality Risks: High Priority: P1 --- .../apply_system_defaults.c | 86 +++++++++++-------- source/service_udhcpc/service_udhcpc.c | 23 +---- 2 files changed, 50 insertions(+), 59 deletions(-) diff --git a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c index 414ee957..4f474a95 100644 --- a/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c +++ b/source/scripts/init/src/apply_system_defaults/apply_system_defaults.c @@ -1429,21 +1429,18 @@ STATIC void addInSysCfgdDB (char *key, char *value) set_syscfg_partner_values( value,"IPv6PrimaryDhcpServerOptions" ); } } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled")) { - if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_Enabled")) { - set_syscfg_partner_values(value, "VoiceMtaIface_Enabled"); - if (0 == IsValuePresentinSyscfgDB("mtaIface")) - set_syscfg_partner_values("mta0", "mtaIface"); - } - } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled")) { - if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_DhcpV4Enabled")) - set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV4Enabled"); - } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV6Enabled")) { - if (0 == IsValuePresentinSyscfgDB("VoiceMtaIface_DhcpV6Enabled")) - set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV6Enabled"); - } + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Enabled")) + if (0 == IsValuePresentinSyscfgDB("VoiceSupport_Enabled")) + set_syscfg_partner_values(value, "VoiceSupport_Enabled"); + + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.InterfaceName")) + if (0 == IsValuePresentinSyscfgDB("VoiceSupport_IfaceName")) + set_syscfg_partner_values(value, "VoiceSupport_IfaceName"); + + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Mode")) + if (0 == IsValuePresentinSyscfgDB("VoiceSupport_Mode")) + set_syscfg_partner_values(value, "VoiceSupport_Mode"); + #endif if ( 0 == strcmp ( key, "Device.X_RDK_WebConfig.URL") ) { @@ -1709,15 +1706,14 @@ STATIC void updateSysCfgdDB (char *key, char *value) { set_syscfg_partner_values( value,"IPv4SecondaryDhcpServerOptions" ); } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled")) { - set_syscfg_partner_values(value, "VoiceMtaIface_Enabled"); - set_syscfg_partner_values("mta0", "mtaIface"); - } - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled")) - set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV4Enabled"); + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Enabled")) + set_syscfg_partner_values(value, "VoiceSupport_Enabled"); + + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.InterfaceName")) + set_syscfg_partner_values(value, "VoiceSupport_IfaceName"); - if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV6Enabled")) - set_syscfg_partner_values(value, "VoiceMtaIface_DhcpV6Enabled"); + if (0 == strcmp(key, "Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Mode")) + set_syscfg_partner_values(value, "VoiceSupport_Mode"); #endif if ( 0 == strcmp ( key, "Device.X_RDK_WebConfig.URL") ) { @@ -3100,35 +3096,49 @@ if ( paramObjVal != NULL ) { APPLY_PRINT("%s - Default Value of Secondary dhcp server option is NULL\n", __FUNCTION__ ); } - paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.Enabled"),"ActiveValue"); + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Enabled"),"ActiveValue"); + if(paramObjVal != NULL) + { + char *pVoiceSupportEnabled = NULL; + pVoiceSupportEnabled = paramObjVal->valuestring; + if(pVoiceSupportEnabled != NULL) + { + set_syscfg_partner_values(pVoiceSupportEnabled,"VoiceSupport_Enabled"); + pVoiceSupportEnabled = NULL; + } + else + { + APPLY_PRINT("%s - VoiceSupportEnabled Value is NULL\n", __FUNCTION__ ); + } + } + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.InterfaceName"),"ActiveValue"); if(paramObjVal != NULL) { - char *pVoiceMtaIfaceEnable = NULL; - pVoiceMtaIfaceEnable = paramObjVal->valuestring; - if(pVoiceMtaIfaceEnable != NULL) + char *pVoiceSupportIfaceName = NULL; + pVoiceSupportIfaceName = paramObjVal->valuestring; + if(pVoiceSupportIfaceName != NULL) { - set_syscfg_partner_values(pVoiceMtaIfaceEnable,"VoiceMtaIface_Enabled"); - set_syscfg_partner_values("mta0","mtaIface"); - pVoiceMtaIfaceEnable = NULL; + set_syscfg_partner_values(pVoiceSupportIfaceName,"VoiceSupport_IfaceName"); + pVoiceSupportIfaceName = NULL; } else { - APPLY_PRINT("%s - VoiceMtaIfaceEnabled Value is NULL\n", __FUNCTION__ ); + APPLY_PRINT("%s - VoiceSupportIfaceName Value is NULL\n", __FUNCTION__ ); } } - paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceMtaIface.DhcpV4Enabled"),"ActiveValue"); + paramObjVal = cJSON_GetObjectItem(cJSON_GetObjectItem(partnerObj,"Device.X_RDKCENTRAL-COM_Epon_MTA.VoiceSupport.Mode"),"ActiveValue"); if(paramObjVal != NULL) { - char *pVoiceMtaIfaceDhcpV4Enable = NULL; - pVoiceMtaIfaceDhcpV4Enable = paramObjVal->valuestring; - if(pVoiceMtaIfaceDhcpV4Enable != NULL) + char *pVoiceSupportMode = NULL; + pVoiceSupportMode = paramObjVal->valuestring; + if(pVoiceSupportMode != NULL) { - set_syscfg_partner_values(pVoiceMtaIfaceDhcpV4Enable,"VoiceMtaIface_DhcpV4Enabled"); - pVoiceMtaIfaceDhcpV4Enable = NULL; + set_syscfg_partner_values(pVoiceSupportMode,"VoiceSupport_Mode"); + pVoiceSupportMode = NULL; } else { - APPLY_PRINT("%s - VoiceMtaIfaceDhcpV4Enabled Value is NULL\n", __FUNCTION__ ); + APPLY_PRINT("%s - VoiceSupportMode Value is NULL\n", __FUNCTION__ ); } } #endif diff --git a/source/service_udhcpc/service_udhcpc.c b/source/service_udhcpc/service_udhcpc.c index db6899c7..cc40679c 100644 --- a/source/service_udhcpc/service_udhcpc.c +++ b/source/service_udhcpc/service_udhcpc.c @@ -1544,7 +1544,6 @@ STATIC int send_dhcp_data_to_wanmanager (ipc_dhcpv4_data_t *dhcpv4_data) int service_udhcpc_main(int argc, char *argv[]) { udhcpc_script_t info; - char cInterfaceName[32] = {0}; if ((argc < 2) || !argv) { return -1; @@ -1560,31 +1559,13 @@ int service_udhcpc_main(int argc, char *argv[]) return -1; } init_udhcpc_script_info(&info,argv[1]); - const char *pIfname = getenv("interface"); - if (pIfname) { - OnboardLog ("%s-%d DHCP event on interface %s \n", __FUNCTION__, __LINE__, pIfname); - } - else { - OnboardLog ("%s-%d DHCP event on unknown interface \n", __FUNCTION__, __LINE__); - } - syscfg_get(NULL, "mtaIface", cInterfaceName, sizeof(cInterfaceName)); if (!strcmp (argv[1],"deconfig")) { - if ((pIfname != NULL) && ('\0' != cInterfaceName[0]) && (strcmp(pIfname, cInterfaceName) == 0)) - { - OnboardLog ("%s-%d Clearing MTA parameters on deconfig event \n", __FUNCTION__, __LINE__); - //Handle defconfig for MTA interface - }else - handle_defconfig(&info); + handle_defconfig(&info); } else if ((!strcmp (argv[1],"bound")) || (!strcmp (argv[1],"renew")) || (!strcmp (argv[1],"invalid_lease"))) { - if ((pIfname != NULL) && ('\0' != cInterfaceName[0]) && (strcmp(pIfname, cInterfaceName) == 0)) - { - OnboardLog ("%s-%d Setting MTA parameters on %s event \n", __FUNCTION__, __LINE__, argv[1]); - //Handle bound/renew for MTA interface - }else - handle_wan(&info); + handle_wan(&info); } #ifdef FEATURE_RDKB_WAN_MANAGER else if( !strcmp (argv[1], "leasefail")) From c3f88aec7ef426f34f70ff7598c40f3b98c9a009 Mon Sep 17 00:00:00 2001 From: Amaresh-Kotekal Date: Sat, 31 Jan 2026 01:26:10 +0000 Subject: [PATCH 6/6] RDKB-62813:DHCP Data Handling and Initialization of voice Reason for change:Initializing the voice Test Procedure: verify the voice is initialized or not Risks: High Priority: P1 --- source/firewall/firewall.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/source/firewall/firewall.c b/source/firewall/firewall.c index b0237dd7..d6301a5c 100644 --- a/source/firewall/firewall.c +++ b/source/firewall/firewall.c @@ -12546,6 +12546,16 @@ static int prepare_subtables(FILE *raw_fp, FILE *mangle_fp, FILE *nat_fp, FILE * updateAmenityNetworkRules(filter_fp,mangle_fp , AF_INET); #endif } + #if defined(SCXF10) + char cVoiceRule[64] = {0}; + sysevent_get(sysevent_fd, sysevent_token, "VoiceIpRule", cVoiceRule, sizeof(cVoiceRule)); + FIREWALL_DEBUG("%s: VoiceIpRule=%s\n" COMMA __FUNCTION__ COMMA cVoiceRule); + if (strlen(cVoiceRule) > 0) + { + fprintf(filter_fp,"%s\n", cVoiceRule); + FIREWALL_DEBUG("%s: Applied VoiceIpRule\n" COMMA __FUNCTION__); + } + #endif //Add wan2self restrictions to other wan interfaces //ping is allowed to cm and mta inferfaces regardless the firewall level #if !defined(_HUB4_PRODUCT_REQ_)