From 298ff2e9365c25175a5a1a0212a2aaec9ca4f4a9 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj Date: Fri, 26 Sep 2025 10:52:18 +0100 Subject: [PATCH 01/16] RDKB-60436 : Develop Code. Reason for change: RDKB-59763 - Develop that US acceptance criteria. Test Procedure: Build should passed WANManager functionality should work without any issue Risks: Medium Signed-off-by: LakshminarayananShenbagaraj --- .../arm_shared/scripts/network_response.sh | 6 ++ .../middle_layer_src/cosa_rbus_handler_apis.c | 62 +++++++++++++++++++ .../middle_layer_src/cosa_rbus_handler_apis.h | 5 ++ 3 files changed, 73 insertions(+) diff --git a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh index 0370beb..b398c99 100644 --- a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh +++ b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh @@ -88,12 +88,18 @@ checkForWanFailOver() if [ "x$currentWanIf" = "x" ] || [ "$currentWanIf" == "$defaultWanIf" ];then AllowRemoteInterfaces=`dmcli eRT getv Device.X_RDK_WanManager.AllowRemoteInterfaces | grep value | cut -f3 -d : | cut -f2 -d" "` Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "REMOTE_LTE,1"` + HS_Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "HOTSPOT,1"` echo_t "AllowRemoteInterfaces: $AllowRemoteInterfaces Interface_Available_Status: $Interface_Available_Status" if [[ "x$Interface_Available_Status" != "x" ]] && [ "$AllowRemoteInterfaces" = "true" ] then #LTE wan interface is available echo_t "Network Response: checkForWanFailOver : enabled" return 1 + elif [[ "x$HS_Interface_Available_Status" != "x" ]] + then + #Hotspot wan interface is available + echo_t "Network Response: checkForWanFailOver : enabled" + return 1 else echo_t "Network Response: checkForWanFailOver : disabled" return 0 diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 58df0f9..b477542 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -28,6 +28,7 @@ #include "safec_lib_common.h" #include "cosa_dhcpv6_apis.h" #include "syscfg/syscfg.h" +#include "secure_wrapper.h" #if defined (RBUS_WAN_IP) #include "cosa_deviceinfo_dml.h" @@ -1343,6 +1344,61 @@ rbusError_t eventWANIPSubHandler(rbusHandle_t handle, rbusEventSubAction_t actio #endif /*RBUS_WAN_IP*/ +#if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) +static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEvent_t const* event, rbusEventSubscription_t* subscription) +{ + (void)handle; + (void)subscription; + + const char* eventName = event->name; + + if((eventName == NULL)) + { + CcspTraceError(("%s %d : FAILED , value is NULL\n",__FUNCTION__, __LINE__)); + return; + } + + CcspTraceInfo(("%s %d: Received %s\n", __FUNCTION__, __LINE__, eventName)); + + // CurrentStatus Event + if( 0 == strncmp(eventName, WANMGR_CURRENT_STATUS_TR181, strlen(WANMGR_CURRENT_STATUS_TR181)) ) + { + rbusValue_t value; + value = rbusObject_GetValue(event->data, NULL); + + char acStatus[16] = {0}; + strncpy(acStatus, rbusValue_GetString(value, NULL), sizeof(acStatus) - 1); + + CcspTraceInfo(("%s: Event:%s Status:%s\n", __FUNCTION__, eventName, acStatus)); + + // Trigger Network Response script + if( 0 == strncmp(acStatus, "Up", 2) ) + { + v_secure_system("sh /etc/network_response.sh &"); + } +#if defined (_XB6_PRODUCT_REQ_) + else + { + v_secure_system("sh /etc/network_response.sh OnlyForNoRf &"); + } +#endif /** _XB6_PRODUCT_REQ_ */ + } +} + +/** Cosa_Rbus_Handler_SubscribeWanStatusEvent() */ +void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ) +{ + rbusError_t rc = RBUS_ERROR_SUCCESS; + + rc = rbusEvent_Subscribe(handle, WANMGR_CURRENT_STATUS_TR181, Cosa_Rbus_Handler_WanStatus_EventHandler, NULL, 60); + if(rc != RBUS_ERROR_SUCCESS) + { + CcspTraceError(("%s %d - Failed to Subscribe %s, Error=%s \n", __FUNCTION__, __LINE__, WANMGR_CURRENT_STATUS_TR181, rbusError_ToString(rc))); + return; + } +} +#endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ + #if defined (WAN_FAILOVER_SUPPORTED) || defined(RDKB_EXTENDER_ENABLED) || defined(RBUS_BUILD_FLAG_ENABLE) || defined(_HUB4_PRODUCT_REQ_) || defined (_PLATFORM_RASPBERRYPI_) || defined (WIFI_MANAGE_SUPPORTED) || defined (RBUS_WAN_IP) /*********************************************************************** @@ -1392,6 +1448,12 @@ rbusError_t devCtrlRbusInit() //initialize sysevent PAM_Rbus_SyseventInit(); #endif + +#if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) + //Subcribe WAN Status Event + Cosa_Rbus_Handler_SubscribeWanStatusEvent( ); +#endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ + return rc; } #endif diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h index ac15050..deefdda 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h @@ -39,6 +39,7 @@ #define PRIMARY_WAN_IPv6_ADDRESS "Device.DeviceInfo.X_COMCAST-COM_WAN_IPv6" #endif /*RBUS_WAN_IP*/ +#define WANMGR_CURRENT_STATUS_TR181 "Device.X_RDK_WanManager.CurrentStatus" #define ARRAY_SZ(x) (sizeof(x) / sizeof((x)[0])) #if defined (WAN_FAILOVER_SUPPORTED) || defined(RDKB_EXTENDER_ENABLED) @@ -91,6 +92,10 @@ rbusError_t RRD_SetBoolHandler(rbusHandle_t handle, rbusProperty_t property, rbu rbusError_t devCtrlRbusInit(); #endif +#if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) +void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ); +#endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ + #if defined (RBUS_WAN_IP) typedef struct { char* event_name; From 119fd03d8bce0863e11195da277c823fbc24a771 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Thu, 23 Oct 2025 09:03:53 +0100 Subject: [PATCH 02/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index b477542..d5d2410 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1450,7 +1450,7 @@ rbusError_t devCtrlRbusInit() #endif #if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) - //Subcribe WAN Status Event + //Subscribe WAN Status Event Cosa_Rbus_Handler_SubscribeWanStatusEvent( ); #endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ From 0d1b73f2c29b98ac055cfff41d27e9ec96f1c785 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Thu, 23 Oct 2025 09:04:10 +0100 Subject: [PATCH 03/16] Update arch/intel_usg/boards/arm_shared/scripts/network_response.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- arch/intel_usg/boards/arm_shared/scripts/network_response.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh index b398c99..697da60 100644 --- a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh +++ b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh @@ -96,7 +96,7 @@ checkForWanFailOver() echo_t "Network Response: checkForWanFailOver : enabled" return 1 elif [[ "x$HS_Interface_Available_Status" != "x" ]] - then + then #Hotspot wan interface is available echo_t "Network Response: checkForWanFailOver : enabled" return 1 From ccfda705587ea2b301e698a03d664a1ca3222c2f Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Thu, 23 Oct 2025 09:04:23 +0100 Subject: [PATCH 04/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index d5d2410..05cabe4 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1368,7 +1368,7 @@ static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEv char acStatus[16] = {0}; strncpy(acStatus, rbusValue_GetString(value, NULL), sizeof(acStatus) - 1); - + acStatus[sizeof(acStatus) - 1] = '\0'; CcspTraceInfo(("%s: Event:%s Status:%s\n", __FUNCTION__, eventName, acStatus)); // Trigger Network Response script From 7e58dd94808dc82fabe6f78a1224f4c0b0dea979 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:26:25 +0000 Subject: [PATCH 05/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../middle_layer_src/cosa_rbus_handler_apis.c | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 47e964f..01764b5 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1367,8 +1367,25 @@ static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEv value = rbusObject_GetValue(event->data, NULL); char acStatus[16] = {0}; - strncpy(acStatus, rbusValue_GetString(value, NULL), sizeof(acStatus) - 1); - acStatus[sizeof(acStatus) - 1] = '\0'; + if (value != NULL) + { + const char* statusStr = rbusValue_GetString(value, NULL); + if (statusStr != NULL) + { + strncpy(acStatus, statusStr, sizeof(acStatus) - 1); + acStatus[sizeof(acStatus) - 1] = '\0'; + } + else + { + CcspTraceError(("%s %d : FAILED , rbusValue_GetString returned NULL\n",__FUNCTION__, __LINE__)); + return; + } + } + else + { + CcspTraceError(("%s %d : FAILED , rbusObject_GetValue returned NULL\n",__FUNCTION__, __LINE__)); + return; + } CcspTraceInfo(("%s: Event:%s Status:%s\n", __FUNCTION__, eventName, acStatus)); // Trigger Network Response script From 39ee2242323c27c8bfe51eca3003f56c9de1cfbb Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:27:16 +0000 Subject: [PATCH 06/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 01764b5..e507d68 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1405,7 +1405,7 @@ static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEv /** Cosa_Rbus_Handler_SubscribeWanStatusEvent() */ void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ) { - rbusError_t rc = RBUS_ERROR_SUCCESS; + rbusError_t rc; rc = rbusEvent_Subscribe(handle, WANMGR_CURRENT_STATUS_TR181, Cosa_Rbus_Handler_WanStatus_EventHandler, NULL, 60); if(rc != RBUS_ERROR_SUCCESS) From c1477c9d316a19a787d0ce58cb9629100a282bca Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:28:07 +0000 Subject: [PATCH 07/16] Update arch/intel_usg/boards/arm_shared/scripts/network_response.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- arch/intel_usg/boards/arm_shared/scripts/network_response.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh index 697da60..a638eba 100644 --- a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh +++ b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh @@ -89,7 +89,7 @@ checkForWanFailOver() AllowRemoteInterfaces=`dmcli eRT getv Device.X_RDK_WanManager.AllowRemoteInterfaces | grep value | cut -f3 -d : | cut -f2 -d" "` Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "REMOTE_LTE,1"` HS_Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "HOTSPOT,1"` - echo_t "AllowRemoteInterfaces: $AllowRemoteInterfaces Interface_Available_Status: $Interface_Available_Status" + echo_t "AllowRemoteInterfaces: $AllowRemoteInterfaces Interface_Available_Status: $Interface_Available_Status HS_Interface_Available_Status: $HS_Interface_Available_Status" if [[ "x$Interface_Available_Status" != "x" ]] && [ "$AllowRemoteInterfaces" = "true" ] then #LTE wan interface is available From c0064a8a7dde78f340512abd1ed4bb7bfbe9f0e7 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:32:44 +0000 Subject: [PATCH 08/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index e507d68..19f0189 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1352,7 +1352,7 @@ static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEv const char* eventName = event->name; - if((eventName == NULL)) + if (eventName == NULL) { CcspTraceError(("%s %d : FAILED , value is NULL\n",__FUNCTION__, __LINE__)); return; From caff0569bb36d05306e2648f2b87415b931b0aae Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:33:10 +0000 Subject: [PATCH 09/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 19f0189..056a6f0 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1410,7 +1410,7 @@ void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ) rc = rbusEvent_Subscribe(handle, WANMGR_CURRENT_STATUS_TR181, Cosa_Rbus_Handler_WanStatus_EventHandler, NULL, 60); if(rc != RBUS_ERROR_SUCCESS) { - CcspTraceError(("%s %d - Failed to Subscribe %s, Error=%s \n", __FUNCTION__, __LINE__, WANMGR_CURRENT_STATUS_TR181, rbusError_ToString(rc))); + CcspTraceError(("%s %d - Failed to Subscribe %s, Error=%s\n", __FUNCTION__, __LINE__, WANMGR_CURRENT_STATUS_TR181, rbusError_ToString(rc))); return; } } From 0c6fddfa1233f3a3c876f5d1f90de21edba9a2bd Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:33:40 +0000 Subject: [PATCH 10/16] Update arch/intel_usg/boards/arm_shared/scripts/network_response.sh Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- arch/intel_usg/boards/arm_shared/scripts/network_response.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh index a638eba..78e1d18 100644 --- a/arch/intel_usg/boards/arm_shared/scripts/network_response.sh +++ b/arch/intel_usg/boards/arm_shared/scripts/network_response.sh @@ -87,7 +87,7 @@ checkForWanFailOver() echo_t "currentWanIf: $currentWanIf defaultWanIf: $defaultWanIf" if [ "x$currentWanIf" = "x" ] || [ "$currentWanIf" == "$defaultWanIf" ];then AllowRemoteInterfaces=`dmcli eRT getv Device.X_RDK_WanManager.AllowRemoteInterfaces | grep value | cut -f3 -d : | cut -f2 -d" "` - Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "REMOTE_LTE,1"` + Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "REMOTE_LTE,1"` HS_Interface_Available_Status=`dmcli eRT getv Device.X_RDK_WanManager.InterfaceAvailableStatus | grep -i "HOTSPOT,1"` echo_t "AllowRemoteInterfaces: $AllowRemoteInterfaces Interface_Available_Status: $Interface_Available_Status HS_Interface_Available_Status: $HS_Interface_Available_Status" if [[ "x$Interface_Available_Status" != "x" ]] && [ "$AllowRemoteInterfaces" = "true" ] From 9abfeeff8dacb906ed8c9834ae0afc6bedc29607 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:33:54 +0000 Subject: [PATCH 11/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 056a6f0..5da9792 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1468,7 +1468,7 @@ rbusError_t devCtrlRbusInit() #if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) //Subscribe WAN Status Event - Cosa_Rbus_Handler_SubscribeWanStatusEvent( ); + Cosa_Rbus_Handler_SubscribeWanStatusEvent( ); #endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ return rc; From 63899c2eec9923fed35796d1e75e553d171ec4db Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:34:21 +0000 Subject: [PATCH 12/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 5da9792..e81c2b5 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1389,7 +1389,7 @@ static void Cosa_Rbus_Handler_WanStatus_EventHandler(rbusHandle_t handle, rbusEv CcspTraceInfo(("%s: Event:%s Status:%s\n", __FUNCTION__, eventName, acStatus)); // Trigger Network Response script - if( 0 == strncmp(acStatus, "Up", 2) ) + if( 0 == strcmp(acStatus, "Up") ) { v_secure_system("sh /etc/network_response.sh &"); } From 9a395e6574cba3c729dd4c3febba8c4eacf4e1d0 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:38:27 +0000 Subject: [PATCH 13/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h index deefdda..c9c2e5a 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.h @@ -39,7 +39,7 @@ #define PRIMARY_WAN_IPv6_ADDRESS "Device.DeviceInfo.X_COMCAST-COM_WAN_IPv6" #endif /*RBUS_WAN_IP*/ -#define WANMGR_CURRENT_STATUS_TR181 "Device.X_RDK_WanManager.CurrentStatus" +#define WANMGR_CURRENT_STATUS_TR181 "Device.X_RDK_WanManager.CurrentStatus" #define ARRAY_SZ(x) (sizeof(x) / sizeof((x)[0])) #if defined (WAN_FAILOVER_SUPPORTED) || defined(RDKB_EXTENDER_ENABLED) From 0ceda095b457b14df4b2e81940546ff59b2ed327 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:38:58 +0000 Subject: [PATCH 14/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 1 + 1 file changed, 1 insertion(+) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index e81c2b5..2ee419a 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1413,6 +1413,7 @@ void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ) CcspTraceError(("%s %d - Failed to Subscribe %s, Error=%s\n", __FUNCTION__, __LINE__, WANMGR_CURRENT_STATUS_TR181, rbusError_ToString(rc))); return; } + CcspTraceInfo(("%s %d - Successfully subscribed to %s\n", __FUNCTION__, __LINE__, WANMGR_CURRENT_STATUS_TR181)); } #endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ From 5d83120b3f9ba8c9950efcf91b0de09df980b238 Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:41:51 +0000 Subject: [PATCH 15/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 2ee419a..3d562a8 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1469,7 +1469,7 @@ rbusError_t devCtrlRbusInit() #if defined(RBUS_BUILD_FLAG_ENABLE) && !defined(_HUB4_PRODUCT_REQ_) && !defined(RDKB_EXTENDER_ENABLED) //Subscribe WAN Status Event - Cosa_Rbus_Handler_SubscribeWanStatusEvent( ); + Cosa_Rbus_Handler_SubscribeWanStatusEvent(); #endif /** RBUS_BUILD_FLAG_ENABLE && !_HUB4_PRODUCT_REQ_ && !RDKB_EXTENDER_ENABLED */ return rc; From 26b083970d8f76cb24c8cb6ac83d489f4ae33e3e Mon Sep 17 00:00:00 2001 From: LakshminarayananShenbagaraj <166714137+LakshminarayananShenbagaraj@users.noreply.github.com> Date: Mon, 10 Nov 2025 20:42:36 +0000 Subject: [PATCH 16/16] Update source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c index 3d562a8..c8f4c46 100644 --- a/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c +++ b/source/TR-181/middle_layer_src/cosa_rbus_handler_apis.c @@ -1407,6 +1407,8 @@ void Cosa_Rbus_Handler_SubscribeWanStatusEvent( void ) { rbusError_t rc; + /* Timeout value of 60 seconds is chosen to balance responsiveness and resource usage for WAN status event subscription. + This duration allows sufficient time for event delivery and processing under typical network conditions. */ rc = rbusEvent_Subscribe(handle, WANMGR_CURRENT_STATUS_TR181, Cosa_Rbus_Handler_WanStatus_EventHandler, NULL, 60); if(rc != RBUS_ERROR_SUCCESS) {