From b24aadf1a13421db7b889e05f493e1556bd5c86c Mon Sep 17 00:00:00 2001 From: Yuvaramachandran Gurusamy <123441336+yuvaramachandran-gurusamy@users.noreply.github.com> Date: Fri, 12 Jun 2026 20:58:20 +0530 Subject: [PATCH 1/2] RDKEMW-19912: Update gdial.cpp --- server/plat/gdial.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/server/plat/gdial.cpp b/server/plat/gdial.cpp index 6e294fde..c474b210 100644 --- a/server/plat/gdial.cpp +++ b/server/plat/gdial.cpp @@ -522,8 +522,13 @@ int gdial_os_application_start(const char *app_name, const char *payload, const auto parsed_query{parse_query(query_string)}; if (parsed_query["action"] == "sleep") { const char *system_key = getenv("SYSTEM_SLEEP_REQUEST_KEY"); - if (system_key && parsed_query["key"] != system_key) { - GDIAL_LOGINFO("system app request to change device to sleep mode, key comparison failed: user provided '%s'", parsed_query["key"].c_str()); + if ((NULL == system_key) || (system_key && parsed_query["key"] != system_key)) { + if (NULL == system_key) { + GDIAL_LOGINFO("SYSTEM_SLEEP_REQUEST_KEY is not configured, So ignoring system app request to change device to sleep mode"); + } + else { + GDIAL_LOGINFO("system app request to change device to sleep mode, key comparison failed: user provided '%s'", parsed_query["key"].c_str()); + } GDIAL_LOGTRACE("Exiting ..."); return GDIAL_APP_ERROR_INTERNAL; } @@ -534,8 +539,13 @@ int gdial_os_application_start(const char *app_name, const char *payload, const } else if (parsed_query["action"] == "togglepower") { const char *system_key = getenv("SYSTEM_SLEEP_REQUEST_KEY"); - if (system_key && parsed_query["key"] != system_key) { - GDIAL_LOGINFO("system app request to toggle the power state, key comparison failed: user provided '%s'", parsed_query["key"].c_str()); + if ((NULL == system_key) || (system_key && parsed_query["key"] != system_key)) { + if (NULL == system_key) { + GDIAL_LOGINFO("SYSTEM_SLEEP_REQUEST_KEY is not configured, So ignoring system app request to toggle the power state"); + } + else { + GDIAL_LOGINFO("system app request to toggle the power state, key comparison failed: user provided '%s'", parsed_query["key"].c_str()); + } GDIAL_LOGTRACE("Exiting ..."); return GDIAL_APP_ERROR_INTERNAL; } From 8668994ae9bef21f3ca048b2e7e532e8fa03a863 Mon Sep 17 00:00:00 2001 From: Yuvaramachandran Gurusamy Date: Mon, 15 Jun 2026 11:10:39 +0530 Subject: [PATCH 2/2] RDKEMW-19912: Fix for L1 test failure Signed-off-by: Yuvaramachandran Gurusamy --- tests/L1Tests/plat/test_gdialCpp.cpp | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/tests/L1Tests/plat/test_gdialCpp.cpp b/tests/L1Tests/plat/test_gdialCpp.cpp index f23a5620..e6337d2a 100644 --- a/tests/L1Tests/plat/test_gdialCpp.cpp +++ b/tests/L1Tests/plat/test_gdialCpp.cpp @@ -310,8 +310,9 @@ TEST_F(GDialCppTest, OsUpdateManufacturerAndModel_AfterInitReturnNone) TEST_F(GDialCppTest, OsApplicationStart_SystemSleepTriggersPowerOff) { ASSERT_TRUE(gdial_cpp_test_init(ctx)); + setenv("SYSTEM_SLEEP_REQUEST_KEY", "testkey", 1); int instance_id = 0; - EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=sleep", "", &instance_id), GDIAL_APP_ERROR_NONE); + EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=sleep&key=testkey", "", &instance_id), GDIAL_APP_ERROR_NONE); EXPECT_EQ(g_power_cb_calls, 1); EXPECT_EQ(g_last_power_state, "STANDBY"); } @@ -319,8 +320,9 @@ TEST_F(GDialCppTest, OsApplicationStart_SystemSleepTriggersPowerOff) TEST_F(GDialCppTest, OsApplicationStart_SystemTogglePowerTriggersToggle) { ASSERT_TRUE(gdial_cpp_test_init(ctx)); + setenv("SYSTEM_SLEEP_REQUEST_KEY", "testkey", 1); int instance_id = 0; - EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=togglepower", "", &instance_id), GDIAL_APP_ERROR_NONE); + EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=togglepower&key=testkey", "", &instance_id), GDIAL_APP_ERROR_NONE); EXPECT_EQ(g_power_cb_calls, 1); EXPECT_EQ(g_last_power_state, "TOGGLE"); } @@ -332,6 +334,26 @@ TEST_F(GDialCppTest, OsApplicationState_SystemReturnsHide) EXPECT_EQ(state, GDIAL_APP_STATE_HIDE); } +TEST_F(GDialCppTest, OsApplicationStart_SystemSleepWithNullKeyReturnsInternal) +{ + ASSERT_TRUE(gdial_cpp_test_init(ctx)); + /* SYSTEM_SLEEP_REQUEST_KEY is unset (NULL) — request must be rejected. */ + int instance_id = 0; + EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=sleep", "", &instance_id), + GDIAL_APP_ERROR_INTERNAL); + EXPECT_EQ(g_power_cb_calls, 0); +} + +TEST_F(GDialCppTest, OsApplicationStart_SystemTogglePowerWithNullKeyReturnsInternal) +{ + ASSERT_TRUE(gdial_cpp_test_init(ctx)); + /* SYSTEM_SLEEP_REQUEST_KEY is unset (NULL) — request must be rejected. */ + int instance_id = 0; + EXPECT_EQ(gdial_cpp_test_os_application_start("system", "", "action=togglepower", "", &instance_id), + GDIAL_APP_ERROR_INTERNAL); + EXPECT_EQ(g_power_cb_calls, 0); +} + TEST_F(GDialCppTest, OsApplicationStart_SystemSleepWithWrongKeyReturnsInternal) { ASSERT_TRUE(gdial_cpp_test_init(ctx));