-
Notifications
You must be signed in to change notification settings - Fork 3
Merge #87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge #87
Conversation
Signed-off-by: Venkata Bojja <venkata_bojja@comcast.com>
RDK-56550 : Add new RFC value for LaunchDarkly env key
L2 test fixes
Reason for change: Fixing L2 in tr69hostif. Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com Signed-off-by: gsanto722 <grandhi_santoshkumar@comcast.com>
|
Venkata Bojja seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
Reason for change:Fix L2 link issue Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
Reason for change:Fix L2 link issue Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
…dkcentral/tr69hostif into feature/RDK-55702-use-pwr-plugin_retry
Reason for change:FIx L2 linking issue. Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
…dkcentral/tr69hostif into feature/RDK-55702-use-pwr-plugin_retry
Reason for change: Fix L2 test Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
Reason for change: Update the MW clients to use Power Manager Plugin Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
Reason for change: Fix L2 and native compilation. Test Procedure: Refer RDK-55702 Risks: Low Signed-off-by:gsanto722 grandhi_santoshkumar@comcast.com
…e tr181 parameters (#303) * ES1-2915-[ES1]: xPKI cert creation is failed due to unable to retrieve tr181 parameters ES1-2915-[ES1]: xPKI cert creation is failed due to unable to retrieve tr181 parameters Reason for change:Removing duplicate entries so that rbuscli works for different dm Test Procedure: Check the parameter valuess and ensure rbus commands are working Risks: Medium Priority: P1 Signed-off-by: Vismal S Kumar <VismalSasi_Kumar@comcast.com> * ES1-2915-[ES1]: xPKI cert creation is failed due to unable to retrieve tr181 parameters ES1-2915-[ES1]: xPKI cert creation is failed due to unable to retrieve tr181 parameters Reason for change:Removing duplicate entries so that rbuscli works for different dm Test Procedure: Check the parameter valuess and ensure rbus commands are working Risks: Medium Priority: P1 Signed-off-by: Vismal S Kumar <VismalSasi_Kumar@comcast.com> * Remove ProductClass parameter from data model Removed the 'ProductClass' parameter from the data model. * Remove ProductClass parameter from data-model-tv.xml Removed the ProductClass parameter from the data model. * Add CovaticSDK object with Enable parameter --------- Signed-off-by: Vismal S Kumar <VismalSasi_Kumar@comcast.com>
tr69hostif 1.2.8 release
…/secure (#318) RDKTV-39100 : [SECVULN] migrate configuration files from /opt to /opt/secure Reason for change: Move /opt/parodus_cfg.json to /opt/secure/parodus_cfg.json to avoid security vulnerability Test Procedure: For crud requests, parodus should use /opt/secure/parodus_cfg.json path. Risks: Medium Priority: P1 Signed off by:Vismal S Kumar
Reason for Change: Set the default value of Memcapture to False Co-authored-by: nhanas001c <naveenkumar_hanasi@comcast.com>
* Update test_bootup_sequence.py Enhanced the bootup sequence * Update test_handlers_communications.py * Update tr69hostif_deviceip.py * Refactor WebPA tests with updated payloads and order Updated test order and modified payload URLs in multiple test functions for consistency and to use mock URLs. * Refactor WebPA firmware download URL test Refactor test_WebPA_Get_FWDL_URL_Handler to remove duplicate assertions and streamline the process. * Fix indentation for test_WebPA_Get_FWDL_URL_Handler * Update run_l2.sh * Implement test for RFC defaults file existence Add test for RFC defaults file creation and validation * Update test order in test_handlers_communications.py * Update test execution order for device tests * Update test order for WebPA handlers --------- Co-authored-by: nhanasi <navihansi@gmail.com>
Tr69hostif release from develop for 1.2.9
* Update data-model-generic.xml * Update data-model-generic.xml * Update data-model-generic.xml * Update src/hostif/parodusClient/waldb/data-model/data-model-generic.xml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/hostif/parodusClient/waldb/data-model/data-model-generic.xml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/hostif/parodusClient/waldb/data-model/data-model-generic.xml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/hostif/parodusClient/waldb/data-model/data-model-generic.xml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update src/hostif/parodusClient/waldb/data-model/data-model-generic.xml Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update data-model-generic.xml --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update Device_DeviceInfo.cpp * RDK-60387 [tr69hostif] Reduce repetitive logging RDK-60387-[tr69hostif] Reduce repetitive logging Reason for change:Move the Info logs to debug
* Remove alternate ValidateInput_Arguments implementation Removed the alternate implementation of ValidateInput_Arguments function under the RDKV_TR69 preprocessor directive. * Change ExecStart command to use shell execution to force apparmor process file * Change ExecStart to use shell for parodus service * Fix ExecStart command syntax in parodus.service --------- Co-authored-by: Shibu Kakkoth Vayalambron <shibu.kakkoth@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR merges various changes including service configuration updates, new test files, refactoring, and bug fixes across the tr69hostif codebase.
Changes:
- Modified systemd service files to update dependencies and remove environment variables
- Added comprehensive WebPA and DeviceIP functional test suites
- Fixed resource leak in
get_security_token()function - Added stub implementations for unit testing and gtest support
- Updated test helper functions with renamed
grep_tr69hostiflogsfunction
Reviewed changes
Copilot reviewed 150 out of 154 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| tr69hostif.service | Updated service dependencies and execution parameters, added timeout configuration |
| tr69hostif_no_new_http_server.service | Removed environment variables and script execution from service startup |
| test/functional-tests/tests/tr69hostif_webpa.py | New comprehensive WebPA handler test suite with mock parodus integration |
| test/functional-tests/tests/tr69hostif_deviceip.py | New test suite for Device.IP and Device.Services handlers |
| test/functional-tests/tests/test_handlers_communications.py | Updated test order and renamed helper function calls |
| test/functional-tests/tests/test_bootup_sequence.py | Expanded bootup validation tests with detailed initialization checks |
| test/functional-tests/tests/helper_functions.py | Renamed clear_T2logs to clear_tr69hostiflogs and added grep_paroduslogs |
| src/hostif/src/hostIf_utils.cpp | Fixed resource leak by ensuring v_secure_pclose is called; added gtest helper |
| src/hostif/src/IniFile.cpp | Performance optimization using std::move |
| src/hostif/profiles/wifi/Device_WiFi_SSID.cpp | Added RDKV_NM support and fixed field name from "isEnabled" to "enabled" |
| src/unittest/stubs/* | Added numerous stub files for unit testing infrastructure |
| src/integrationtest/conf/* | Added configuration files for integration testing |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| } | ||
| } | ||
| } | ||
| v_secure_pclose(pSecurity); |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent indentation: this line uses a tab character while surrounding code uses spaces. This should use consistent indentation (spaces) to match the rest of the file.
| ERR_CHK(rc); | ||
| } | ||
| cJSON *isEnabled = cJSON_GetObjectItem(interface, "isEnabled"); | ||
| cJSON *isEnabled = cJSON_GetObjectItem(interface, "enabled"); |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Variable name isEnabled is misleading as it now retrieves the 'enabled' field. Consider renaming the variable to enabled or enabledField to match the JSON field name being accessed.
| if(rc!=EOK) | ||
| { | ||
| ERR_CHK(rc); | ||
| } |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent indentation using both tabs and spaces throughout this function. The code should use consistent indentation style (either all spaces or all tabs, matching the project convention).
| @pytest.mark.run(order=44) | ||
| def test_WebPA_Set_FirmwareToDownload_For_Upgrade(): | ||
| print("Starting parodus mock process - Set firmware to download") | ||
| payload = '{"command":"SET","parameters":[{"name":"Device.DeviceInfo.X_RDKCENTRAL-COM_FirmwareToDownload","dataType":0,"value":" TESTIMAGE_DEV.bin"}]}' |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The value for FirmwareToDownload contains leading spaces (' TESTIMAGE_DEV.bin'). This appears unintentional and could cause issues. The value should likely be 'TESTIMAGE_DEV.bin' without leading whitespace.
| Feature: WebPA Set Get using mock parodus | ||
|
|
||
| Background: | ||
| Given the mock parodus executable is avaliable at "/usr/local/bin/parodus" |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Corrected spelling of 'available' from 'avaliable'.
| assert RFC_PARAM_LINE in file_content, f"Expected parameter '{RFC_PARAM_NAME}' not found in {RFC_DEFAULTS_FILE}" | ||
|
|
||
| #Get the parameter value from that file | ||
| param_value = rbus_get_data(RFC_PARAM_NAME) |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Variable param_value is not used.
| import pytest | ||
| from time import sleep | ||
|
|
||
| from helper_functions import * |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import pollutes the enclosing namespace, as the imported module helper_functions does not define 'all'.
| import pytest | ||
| from time import sleep | ||
|
|
||
| from helper_functions import * |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import pollutes the enclosing namespace, as the imported module helper_functions does not define 'all'.
| #################################################################################### | ||
|
|
||
|
|
||
| import subprocess |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import of 'subprocess' is not used.
|
|
||
| import subprocess | ||
| import pytest | ||
| from time import sleep |
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import of 'sleep' is not used.
Tr69hostif 1.3.0 version release
* Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h * Update Device_DeviceInfo.h
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 150 out of 154 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| git clone https://github.com/xmidt-org/trower-base64.git | ||
| cd trower-base64 | ||
| meson setup build | ||
| ninja -C build | ||
| ninja -C build install | ||
| cd $WORKDIR | ||
| rm -rf trower-base64 | ||
|
|
||
| # cJson flavor used in RDK stack | ||
| cd $WORKDIR | ||
| git clone https://github.com/DaveGamble/cJSON.git | ||
| cd cJSON | ||
| mkdir build | ||
| cd build | ||
| cmake .. | ||
| make && make install | ||
| cd $WORKDIR | ||
| rm -rf cJSON | ||
|
|
||
| # Include WDMP package | ||
| cd $WORKDIR | ||
| git clone https://github.com/xmidt-org/wdmp-c.git | ||
| cd wdmp-c | ||
| sed -i '/WDMP_ERR_SESSION_IN_PROGRESS/a\ WDMP_ERR_INTERNAL_ERROR,\n WDMP_ERR_DEFAULT_VALUE,' src/wdmp-c.h | ||
| cmake -H. -Bbuild -DBUILD_FOR_DESKTOP=ON -DCMAKE_BUILD_TYPE=Debug | ||
| make -C build && make -C build install | ||
| cd $WORKDIR | ||
| rm -rf wdmp-c | ||
|
|
||
| # Install dependencies of libparodus | ||
| cd $WORKDIR | ||
| git clone https://github.com/nanomsg/nanomsg.git | ||
| cd nanomsg | ||
| mkdir build | ||
| cd build | ||
| cmake .. | ||
| cmake --build . | ||
| cmake --build . --target install | ||
| cd $WORKDIR | ||
| rm -rf nanomsg | ||
|
|
||
| git clone https://github.com/xmidt-org/cimplog.git | ||
| cd cimplog | ||
| git checkout 8a5fb3c2f182241d17f5342bea5b7688c28cd1fd | ||
| mkdir build | ||
| cd build | ||
| cmake .. | ||
| make && make install | ||
| cd $WORKDIR | ||
| rm -rf cimplog | ||
|
|
||
|
|
||
| cd $WORKDIR | ||
| git clone https://github.com/xmidt-org/wrp-c.git | ||
| cd wrp-c | ||
| git checkout 9587e8db33dbbfcd9b78ef66cc2eaf16dfb9afcf | ||
| # replace 7a98138f27f27290e680bf8fbf1f8d1b089bf138 with 445880108a1d171f755ff6ac77e03fbebbb23729 in CMakeLists.txt | ||
| # Message pack revision used in libparadous is not buildable with latest gcc versions | ||
| sed -i 's/7a98138f27f27290e680bf8fbf1f8d1b089bf138/445880108a1d171f755ff6ac77e03fbebbb23729/g' CMakeLists.txt | ||
| mkdir build | ||
| cd build | ||
| cmake .. | ||
| make && make install | ||
| cd $WORKDIR | ||
| rm -rf wrp-c | ||
|
|
||
| cd $WORKDIR | ||
| git clone https://github.com/xmidt-org/libparodus.git | ||
| cd libparodus | ||
| # replace 7a98138f27f27290e680bf8fbf1f8d1b089bf138 with 445880108a1d171f755ff6ac77e03fbebbb23729 in CMakeLists.txt | ||
| # Message pack revision used in libparadous is not buildable with latest gcc versions | ||
| sed -i 's/7a98138f27f27290e680bf8fbf1f8d1b089bf138/445880108a1d171f755ff6ac77e03fbebbb23729/g' CMakeLists.txt | ||
| mkdir build | ||
| cd build | ||
| cmake .. | ||
| make && make install | ||
| cd $WORKDIR | ||
| rm -rf libparodus |
Copilot
AI
Feb 5, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The dependent_rdk_pkg_installer.sh script clones and builds several third-party projects (e.g. trower-base64, cJSON, wdmp-c, nanomsg) directly from mutable GitHub branches/tags without pinning to immutable commits or verifying integrity, then installs them into the build/runtime environment. If any of these upstream repositories are compromised or force-pushed, an attacker could inject malicious code that is built and executed in your CI or developer environments, potentially compromising build artifacts or secrets. To mitigate this supply-chain risk, pin each git clone to a specific trusted commit or release tag and, where possible, add checksum/signature verification before building and installing.
Co-authored-by: nhanasi <navihansi@gmail.com>
No description provided.