Repository navigation
Sync Easymesh changes to main - community fixes and features from develop (69 commits) - #1
Closed
Nikita-Hakai wants to merge 69 commits into
Closed
Nikita-Hakai wants to merge 69 commits into
Nikita-Hakai wants to merge 69 commits into
Conversation
Reason for change: No existing subdocs which provides the VAP configuration corresponding to a radio is present. This is required for easymesh usecase, thus the change. Test Procedure: Encode, decode and apply of VAP configuration per radio tested on Raspberry Pi. (cherry picked from commit 044e904)
Multi vap, Single Radio subdoc changes and Easymesh translation changes (cherry picked from commit 103e9f8)
(cherry picked from commit f38e9a6)
… to support EasyMesh Reason for change: EasyMesh integration in BPI Test Procedure: Able to compile ccsp-one-wifi-libwebconfig with wifi_Easymesh_translator.c Risks: Low Signed-off-by: keerthana.p <keerthana_pandurangan@comcast.com> (cherry picked from commit 752e55c)
Reason for change: To allow client connection in mesh_backhaul mac_filter_mode is changed to wifi_mac_filter_mode_black_list Test Procedure: In colocated mode, if there is single vap at al mac address, ensure it is configured as mesh_backhaul Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit 84fd07a)
…linux (rdkcentral#363) * Split up linux build into bpi and rpi Signed-off-by: Benjamin Carlson <b.carlson@cablelabs.com> * Update GitHub Action for new paths. Signed-off-by: Benjamin Carlson <b.carlson@cablelabs.com> --------- Signed-off-by: Benjamin Carlson <b.carlson@cablelabs.com> Co-authored-by: Amarnath Hullur Subramanyam <amarnath.hs@gmail.com> (cherry picked from commit 5790356)
…ad the result (rdkcentral#606) Reason for change: OneWifi wifi_api2 switched from direct rbus API usages to bus abstraction, and starts to use full name tag for publishing values (instead of hard-coded "value"), but test wifi_api2 wasn't aligned and as a result wifi_api2 doesn't work. This fix align SetValue name and GetValue and fix wifi_api2. In additional to that several issues in wifiapi_result_publish were fixed to make it more robust. Test procedure: execute wifi_api2 command for some api and check it gets result Risk: Low Priority: P2 Co-authored-by: Sathish Kumar Gnanasekaran <gsathish86@gmail.com> (cherry picked from commit 57cb226)
…dkcentral#678) Reason for change: Build scripts need to point to the updated hostap URL from the previous URL which is no longer valid. Test Procedure: Ensured builds are working fine with this change. Risks: Low (cherry picked from commit 7817f94)
…dkcentral#652) RDKB-62199: Increasing the MAX_SCANNED_VAPS macro for DPP scanning Reason for change: The BSS scan results are getting truncated to 32 max results. Have changed the BSS results to be in dynamic mem to reduce stack memory. Test Procedure: Ensure that the scan for CCE IEs were successful Risks: Medium Priority: P1 Signed-off-by: sriraaman-c <sriraaman33@gmail.com> (cherry picked from commit 8616f50)
…kcentral#689) enabled RDKB BPI builds. Reason for change: Below line is the crash pointer at ../../../git/source/core/wifi_ctrl_rbus_handlers.c:2105 onewifi crash is observing due to l_interface_name value is NULL. Test Procedure: Able to fetch wifi info via below command dmcli eRT getv Device.WiFi. Risks: Low Signed-off-by: keerthana.p <keerthana_pandurangan@comcast.com> (cherry picked from commit 8415b5b)
* wifi_8021x: fix null pointer dereference The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph and @jweese. This PR modifies the `process_eap_data` function in `source/core/wifi_8021x.c` to move null checks for `data` and `data->data` to the beginning of the function and return early to avoid segfaults. on-behalf-of: @permanence-ai <github-ai@permanence.ai> * use wifi_util_error_print to record null pointer condition on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit 5b004ce)
The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph and @jweese. This change adds a null check for `data` at the beginning of the `webconfig_stats_config_apply` function. If `data` is null, the function logs an error and returns immediately to prevent null pointer dereferences. The later check involving `data` was removed since `data` cannot be null past the early return. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit a34428a)
The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph. This change adds a null check for `data` at the beginning of the `webconfig_steering_clients_apply` function. If `data` is null, the function logs an error and returns immediately to prevent null pointer dereferences. The later check involving data was removed since data cannot be null past the early return. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit 4ba8f84)
The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph and @jweese. This change adds a null check for `data` at the beginning of the `webconfig_steering_config_apply` function. If `data` is null, the function logs an error and returns immediately to prevent null pointer dereferences. The later check involving data was removed since data cannot be null past the early return. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit 52044eb)
…l#695) The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph and @jweese. This change adds a null check for data before dereferencing it in the `webconfig_vif_neighbors_apply` function. If data is null, the function logs an error and returns immediately to prevent null pointer dereferences. The later check involving data was removed since data cannot be null past the early return. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit 855a9be)
rdkcentral#696) The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph. This change moves the deallocation of dev_array outside of the for loop to prvent a null pointer dereference when num_devs > 1. In addition, it adds a null check for dev_array after the call to wifi_getApAssociatedDeviceDiagnosticResult3. If dev_array is null, an error message is written to result_buf and the function returns early to prevent null pointer deferecnces. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit ee43b72)
The changes in this PR were automatically generated by the Permanence AI Coder and reviewed by @fwph. The file source/core/wifi_ctrl.c is modified to add a null check for the name parameter at the beginning of the bus_get_vap_init_parameter function before it is dereferenced. If name is null, the function logs an error and returns immediately. The later check on name is removed, as the pointer is not modified during the function. on-behalf-of: @permanence-ai <github-ai@permanence.ai> (cherry picked from commit 74c63ba)
Reason for change: Bus abstraction was missing handling data from table getter callback. This feature is present in rbus, the change will make use of this feature. Other bus backends are currently not handled. Risks: Low Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit 121b609)
…dkcentral#840) (cherry picked from commit 9f50c72)
…ecution (rdkcentral#908) Reason for change: The existing timeout calculation is based on current time scheduler start. If the scheduler timeout and timer task interval is same, small micro seconds difference in scheduler start make the timer task to skip the execution and need to wait till the next iteration. Fixed the issue a) by modifying the timeout calculation based on last timeout instead of current time. And b) updated timeout while adding a new timer task with start_immediately as false. Test Procedure: Ensure the timer task run in configured intervals and no regressions. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> Co-authored-by: Sathish Kumar Gnanasekaran <gsathish86@gmail.com> (cherry picked from commit f4c9de9)
) Reason for change: Latest MP4.2 Kernel 6.6 package is required for MLO support, current OpenWRT platform supported is 5.4 version. These changes are to enable support for the Kernel 6.6 version. Test Procedure: Build and sanity testing of Easymesh scenario Priority: P1 Risks: Low Signed-off-by: Amarnath Hullur Subramanyam <amarnath.hs@gmail.com> (cherry picked from commit 1005559)
…ral#940) Reason for change: BPI Linux based build was using older hostap version and also did not have GENERIC_MLO flag enabled. This change enables MLO build with 2.11 based hostap Priority: P1 Risks: Low Signed-off-by: Amarnath Hullur Subramanyam <amarnath.hs@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit dc7b6e9)
…6 Build and enable MLO for private VAPs (rdkcentral#947) Reason for change: To update rdk-wifi-libhostap patches for OpenWRT kernel 6.6 Build and make it in sync with RDKB Yocto builds. Also enabled MLO for all private VAPs Test Procedure: Ensure all patches are applied without any failures. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit f09ec5c)
…central#955) Reason for change: To use gdb and analyze crash dump Test Procedure: Build and sanity testing of Easymesh scenario Priority: P1 Risks: Low Signed-off-by: Amarnath Hullur Subramanyam <amarnath.hs@gmail.com> (cherry picked from commit 17cb563)
Reason for change: BPI Linux based build updated to use the latest hostap patches of MLO. Also added additional authors to be associated with community contribution. Test Procedure:Build of OneWifi on Linux platform. Priority: P1 Risks: Low Signed-off-by: Amarnath Hullur Subramanyam <amarnath.hs@gmail.com> (cherry picked from commit ddc983b)
…kcentral#970) * RDKB-63321: RPI build to apply hostap telemetry enhancement patch Reason for change: rdk-wifi-hal recent changes require this patch to be applied for compilation. Adding this patch for 2.10 compilation * RDKB-63321: OpenWRT5.4 script to apply hostap telemetry enhancement patch Reason for change: rdk-wifi-hal recent changes require this patch to be applied for compilation. --------- Co-authored-by: Sathish Kumar Gnanasekaran <gsathish86@gmail.com> (cherry picked from commit 7230e5a)
…nt (rdkcentral#971) Reason for change: To sync rdk-wifi-libhostap patch from RDKB-63321 for BPI Builds. Also fix kernel 5.4 build error due to KERNEL_6_6 flag in makefile. Test Procedure: Ensure patch file is applied without any failures. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit b5c6c3e)
…sh build (rdkcentral#978) Reason for change: Backhaul connectivity issues were triggered due to failure in registering for management frames. To support beacon frame registration in BPI, kernel patch needs to be applied. Additionally added missing compilation flags to openwrt makefile wrt RDKB build. Test Procedure: Ensure backhaul extender connection work without any disconnect. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit 904bf76)
Reason for change: Mesh backhaul is loosing whenever easymesh agent is on-boarding in Extender. Improvising the conditional check for security structure of sta_info in is_vap_param_config_changed() Test Procedure: Mesh backhaul found to be stable Risks: Medium Signed-off-by: keerthana.p <keerthana_pandurangan@comcast.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit 6e94a59)
rdkcentral#967) * RDKBWIFI-381: [Easymesh] Fix unsafe strncpy usage by replacing with snprintf in easymesh webconfig Reason for change: there are wrong usages of strncpy like missing Nul-termination after copying or inccorrect sizes of input buffer Thus all of strncpy replaced with snprintf which checks buff size and Nul-termination using same patern: snprintf(dst, sizeof(dst), "%s", src). For string literals is used strcpy as size of the dest buffers are big enough. Test procedure: 1. Vaps configured properly 2. No regressions in Easymesh test procedure Priority: P2 Risks: Low * fixed code reiview comments Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * replaced remaining strcpy calls to snprintf --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> (cherry picked from commit 1a65205)
…central#1212) Reason for change: Observing below errors, ../../../git/source/webconfig/wifi_ovsdb_translator.c:3075:98: error: 'struct schema_Wifi_VIF_State' has no member named 'mld_if_name'; did you mean 'if_name'? | 3075 | if (get_mlo_vap_name_from_per_radio(vap->vap_name, vap_row->mld_if_name, sizeof(vap_row->mld_if_name))) { Test Procedure: BPI build successful Risks: None Signed-off-by: keerthana.p <keerthana_pandurangan@comcast.com> (cherry picked from commit bca9e26)
This is a placeholder commit, for the dependencies from unified-mesh. Added dummy functions, which will be replaced later once the driver changes are available. Signed-off-by: Sangeetha <sangeetha.s1@tataelxsi.co.in> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit bbad8ec)
…ral#1167) Reason for change: When a Wi-Fi client fails to connect due to authentication or association failure (e.g., wrong password, MIC failure, ACL deny), there is no RBUS event to notify upper layers about the failure. This change introduces the Device.WiFi.EM.FailedConnection event that is published on connection failure, carrying the BSSID, station MAC, IEEE 802.11 status code, and reason code as a JSON payload. Test Procedure: 1. WPA3-SAE wrong password — verified event published with status=15 (SAE Challenge Failure), reason=0 2. WPA2-PSK wrong password — verified event published with status=0, reason=14 (MIC Failure) 3. ACL deny (blacklist) — verified event published with status=33 (Unspecified/ACL deny), reason=0 All scenarios validated via RBUS subscriber and packet capture on rdkb-lgm platform. Risks: Low. New RBUS event only; no modification to existing connection or data path logic. No impact on normal association flow. Signed-off-by: sgunasekaran@maxlinear.com Signed-off-by: sgunasekaran@maxlinear.com Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit cb6c574)
rdkcentral#1164) * RDKBWIFI-460: Fixes and improvements for EasyMesh AP metrics reporting * added checks for get_wifidb_vap_map * fix radio index mismatch in ap_report_push_cb * use strncpy for client_type copies * sync vap_metrics.num_of_assoc_stas with sta_cnt after client_stats_map iteration * fix vap_reports OOB and encoder/decoder inconsistency on alloc failure (cherry picked from commit 5594b76)
…kcentral#1254) Reason for change: With latest changes from RDKB-65811: MLO link reconfiguration for BPi-R4, the temporary change made earlier is no longer needed. Hence removing it from code. Test Procedure: Ensure fronthaul VAPs are coming up in MLO mode bydefault. Risks:Medium Priority:P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit 36dc153)
…ties) (rdkcentral#1244) Reason for change: Added encode and decode changes for MLOOperationalCap and TIDLinkMapNegotiation. Also added translation changes for max_nummlds, apmld_maxlinks, bstamld_maxlinks and tidlink_map. Test Procedure: Ensure Wi-Fi 7 Agent Capabilities are updated properly. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> (cherry picked from commit 34475e6)
…on (rdkcentral#1157) * Added station RSSI (unassociated STA statistics) implementation - get_NaSta and rbus handlers integration * Added support for webconfig_subdoc_type_nasta_query * Added a credit for MaxLinear in NOTICE * changed sscanf specificator to %u for vap_idx Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * webconfig nasta added for linux and openwrt builds * set correct raw_data_len as strlen + 1 * aligned names with rdk-wifi-halif * added missed webconfig subtypes to wifi_event_subtype_to_string * removed unused headers * added static const to nasta_query_objects definitions * removed data->u.encoded.json = json * added space for NUL-symbol in value.raw_data_len * marked unused var asyncHandle in get_NaSta func * fixed review comments * removed placeholder definitions * rewerted WIFI_NASTA_RESPONSE_EVENT to original wifi_ctrl_rbus_handlers.c file * fixed review comments * changed webconfig_nasta_apply debug logs to dbg level --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> (cherry picked from commit 1124e22)
…rdkcentral#1277) Reason for change: Added NULL guard to prevent crash if associated_devices_map is NULL. Also addressed a wrong code comparison for radio index. Test Procedure: Ensure no crash issues with onewifi with AP Metrics reporting. Risks: Medium Priority: P1 Signed-off-by: Rakhil P E <rakhilpe001@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit b284d90)
…slation (rdkcentral#1275) The EasyMesh device translator hardcoded the device country to "US", so the actual regulatory country never propagated to the controller and Device.WiFi.DataElements Network.Device.{i}.CountryCode could not be reported. Report the device's country from the radio config (via country_code_conversion) when building the device object, falling back to US only when it is unavailable. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit da1e9c4)
…central#1274) The channels_2g_40_mhz[] table in get_on_channel_scan_list() used a +/-2 channel offset for the HT40 secondary channel (e.g. primary 1 -> {1,3}). In 2.4GHz the channel numbers are spaced 5 MHz apart, so the two non overlapping 20MHz halves of a 40MHz bond are 20 MHz = 4 channel numbers apart (secondary = primary +/-4). {1,3} are only 10 MHz apart and overlap, which is not a valid 40MHz pair. The 5GHz and 6GHz tables in the same function already use the correct +4 spacing. With the wrong offset, get_on_channel_scan_list() returned an overlapping sub channel for every 2.4GHz 40MHz primary, so consumers that check the sub channels against an allowed list (e.g. channel scan, ACS) could not deploy a 2.4GHz 40MHz channel and fell back to 20MHz. Correct the table to the standard 2.4GHz HT40 pairs (1+5, 6+10, 11+7, ...). Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit b11e1ca)
…ntral#871) Reason for change: provision to handle easymesh based on flag Test Procedure: OneWifi running while EasyMesh services are disabled Risks: None Signed-off-by: sai satish <skotapati@maxlinear.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit d7e5e66)
…pp publishers (rdkcentral#1250) The EasyMesh AP metrics pipeline leaks on both ends of the webconfig subdoc exchange, growing the consumer of the report (EM agent, via libwifi_webconfig) and OneWifi itself on every reporting interval. Leaks were located with LeakSanitizer and validated fixed on a device (RSS flat over 8 hours). Decode side (libwifi_webconfig): - decode_em_ap_metrics_report_subdoc never freed data->u.encoded.json; per framework convention (see decode_radio_subdoc) the subdoc decoder owns the parsed tree, so the whole cJSON tree of every report leaked. Delete it on the success path and on the two error paths that were missing it. - decode_em_ap_metrics_report_object mallocs per-vap sta_traffic_stats and sta_link_metrics arrays into the decoded params, but nothing on the decode/translate path freed them (webconfig_data_free only frees u.encoded.raw). Free them in webconfig_easymesh_decode after translation, mirroring the existing assoc-map cleanup. EM app publishers (wifi_em.c): - All four publishers (AP metrics report, sta link metrics report, channel scan report, beacon report) leaked the encoded JSON string: webconfig_encode allocates data->u.encoded.raw, the bus publish copies the payload, and the cleanup paths freed the decoded members and `data` but never the encoded string. The beacon report publisher also leaked wb_data itself on the success path. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit cd27b70)
rdkcentral#1299) The EasyMesh Radio Metrics TLV carries time fractions in units of 1/255 over the reporting window and noise as ANPI, but the radio metrics were filled from the raw cumulative HAL survey counters, so the decoded values were out of range. Convert the delta since the previous sample into 1/255 fractions and encode noise as ANPI. Derive the channel utilization from the same window as max(busy, tx + rx): the spec defines it as the time spent transmitting and receiving, and some drivers do not include own TX time in the busy counter. Report zero on the first sample, a counter reset or a channel change. Also fix the radio index bound check, which allowed radio_index == MAX_NUM_RADIOS. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit fa2099f)
…al#1319) The RBUS<->bus_data type mapping tables already cover uint8/uint16, but the value marshalling switches did not: the property list branch of set_rbus_property_data() (bulk/getExt responses) lacked uint8/uint16 cases and the scalar path lacked uint16, so such values were dropped with "value type not supported". e.g. the Capabilities.WiFi6APRole./WiFi7APRole. leaves were missing from bulk gets. Add the missing cases. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> * Fix indentation per copilot --------- Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Mateusz Cieslak <mateusz.cieslak2@globallogic.com> (cherry picked from commit 64e0440)
…istered yet (rdkcentral#1304) During startup the webconfig south element is registered with the bus mux before the WifiCtrl component maps its user set handler. A set arriving in that window hit "if (user_cb->set_handler != NULL)" with no else branch, so rbus_set_handler returned success while silently dropping the payload. The EasyMesh agent's Vap subdocs sent right after WSC M2 were lost this way and onboarding deadlocked. Return bus_error_not_writable (a new bus_error_t code mapped to RBUS_ERROR_NOT_WRITABLE) so the setter learns the delivery failed. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit 7ec2867)
…ents (rdkcentral#1321) * RDKBWIFI-553: OneWifi memory leak in webconfig_subdoc_type_associated_clients * fix error path * fixed hash_maps cleaning * Guarding loops with MAX_NUM_RADIOS / MAX_NUM_VAP_PER_RADIO avoids potential out-of-bounds access Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Sathish Kumar Gnanasekaran <gsathish86@gmail.com> (cherry picked from commit b43baaf)
* RDKB-66207 : BPI ci-build check overhaul * Update makefile.yml action versions and runner * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Add missing mock header * Copilot fixes * add build summary listing warnings and errors * Scope out OneWifi to separate warning block. Use clean -Werr promotion, disable noisy warning flags - based on yocto flag set. * Fix copilot language nitpicks * Additional fix - update actions version for community label workflow too. * Fix 4 format-truncation occurences, which could trigger crash via overflow. * Delineate -Wformat\* warnings in detail. Show errors on job summary too. * Enable clang-tidy run * Upload summaries of all steps into the review * Scope the summary sticky note to bpi only for now. * Add missing license to diff_to_suggestions.py * port a few warning-friendly fixes to rpi too * copilot fixes * Final batch of fixes. --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> (cherry picked from commit 07a92e3)
Reason for change: Resolve Data Element GET/SET Failures Caused by Redundant Schema Parsing. Risks: Medium Test procedure: Flash the image and verify that the GET and SET operations function as expected. (cherry picked from commit 8362d57)
Reason for change: Multi-ap policy config commit introduced encode and decode json objects, however one of decoding object has a wrong name, and this PR is fixing it Test procedure: check webconfig logs and verify there are no decoding errors. Priority: P1 Risks: Low (cherry picked from commit 77c2565)
…on (rdkcentral#1340) Security modes pushed by the EasyMesh controller are not applied correctly by the translation layer. translate_auth_type_from_easymesh() handles four of the WSC auth type flags and falls through to WPA3 Personal for everything else, so an open, a WPA2 Enterprise or an Enhanced Open profile silently comes up as WPA3 Personal. Add the missing cases; the fallback keeps its current behaviour for unrecognised flags. The M2 override copies the network key into security.u.key.key regardless of the translated mode. security.u is a union shared with the RADIUS settings and the webconfig encoder reads it as RADIUS settings for the open and the enterprise modes: the leftover key bytes are emitted as a RADIUS server address, fail address validation on the receiving side and the whole VAP subdoc is rejected. The override also leaves the encryption method as decoded from the current VAP, so once a VAP has actually been open, switching it back to a keyed mode produces a mode/encryption pair that fails validation and the private subdoc encode fails on every resent M2, leaving the agent unable to finish configuration. Move the handling into a helper shared by the AP and mesh STA branches: the union is cleared for the open and the personal modes, kept for the enterprise modes (their RADIUS settings live in it and M2 carries none), encryption is set to none for open, to AES for Enhanced Open together with the PMF it requires, and for the keyed modes to AES when the current method is not valid for the target mode - AES is what this stack uses for all the personal modes (the M2 encryption attribute is hardcoded to AES by the controller and discarded by the agent, so the mode is the authoritative information on the wire). translate_per_radio_vap_object_to_easymesh_bss_info() has no dispatch branch for the hotspot vaps, so they hit the unknown-type branch which aborts the translation of the whole subdoc: every vap after the hotspot ones is dropped and the EasyMesh data model keeps stale BSS state. Skip hotspot vaps the same way translate_vap_object_to_easymesh_for_dml() already does. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com> (cherry picked from commit 367ac1a)
…robe Response. (rdkcentral#729) Enabled the BSS load update period such that BSS load element is present as part of Probe response Signed-off-by: Sangeetha <sangeetha.s1@tataelxsi.co.in> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit 24b6870)
… Yocto layersto GitHub (rdkcentral#1381) * MediaTek disabled git01.mediatek.com (2026-08) and moved their public Yocto layers to GitHub, which broke the openwrt setup script(setup_MP4_2.sh). Fixed it by updating github link Signed-off-by: Sachin Chougale <cm.sachin@capgemini.com> * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Signed-off-by: Sachin Chougale <cm.sachin@capgemini.com> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> (cherry picked from commit 6281b77)
… STA (rdkcentral#1130) * RDKBWIFI-442: Collection of Beacon measurement report from the associated STA * Apply batched suggestions from code review Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Apply batched suggestions from code review Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * em: fix beacon report build error and unbounded hex-buffer allocation - wifi_em.c failed to build due to a missing include. - encode_beacon_report_object() computed data_len * 2 + 1 without capping data_len, allowing integer overflow and unbounded malloc. Cap data_len to MAX_FRAME_SZ and cast to size_t before the multiplication, matching encode_frame_data's existing bound. * address review comments --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> (cherry picked from commit 152019d)
… link conflicts (rdkcentral#1393) wifi_rrm_send_beacon_req, wifi_wnm_send_bss_tm_req, handle_wnm_action_frame, and handle_rrm_action_frame are already defined in rdk-wifi-hal's wifi_hal_wnm_rrm.c and linked in via libwifihal.a. Referencing wifi_hal_parse_rm_beaon_report() (same object file) now pulls that .o into the gtest binary, causing "multiple definition" errors against the mock stubs here. Dropping the stale mocks; the real implementations satisfy the link. (cherry picked from commit 8a387f6)
…rdkcentral#1222) - Refactored implementation to support multiple STA entries per message (spec compliant) - Changed the struct to json format to carry cacr information from UWM to OneWifi. Signed-off-by: Sundram Patel <sundram.p@tataelxsi.co.in> Co-authored-by: Narendra Varma Dandu <narendandu@gmail.com> (cherry picked from commit 99bef6a)
Collaborator
Author
|
Closing - retargeting to rdkcentral/OneWifi:main upstream. |
🔨 Build summaryCommit Banana Pi R4 - MLO — no build log capturedRaspberry Pi — build failure❌ Errors (29 unique)
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Syncs 69 community changes from
rdkcentral/OneWifi:developinto thismain-based branch. Each commit below was cherry-picked individually (or manually re-applied where conflicts required adaptation tomain's current state); commits already present inmain(via prior manual cherry-picks, bulk syncs, or superseding work) were excluded.Tickets included
RDKB-59512, RDKBWIFI-37, RDKBDEV-3291, RDKBACCL-1229, RDKB-62199, RDKBACCL-1240, RDKBWIFI-181, RDKBWIFI-201, RDKBWIFI-203, RDKBWIFI-204, RDKBACCL-1193, RDKBWIFI-323, RDKBWIFI-348, RDKBWIFI-360, RDKBWIFI-375, RDKBWIFI-377, RDKB-63321, RDKBWIFI-382, RDKBWIFI-384, RDKBACCL-1522, RDKBWIFI-381, RDKBWIFI-387, RDKBWIFI-399, RDKBWIFI-322, RDKBWIFI-278, RDKBWIFI-401, RDKBWIFI-386, RDKCOM-5487, RDKBWIFI-359, RDKBWIFI-464, RDKBWIFI-428, RDKBWIFI-286, RDKBWIFI-445, RDKBACCL-1885, RDKBWIFI-459, RDKBWIFI-460, RDKBWIFI-503, RDKBWIFI-454, RDKBWIFI-520, RDKBWIFI-518, RDKBWIFI-517, RDKBDEV-3367, RDKBWIFI-498, RDKBWIFI-531, RDKBWIFI-544, RDKBWIFI-538, RDKBWIFI-553, RDKB-66207, RDKBWIFI-513, RDKBWIFI-563, RDKBACCL-1313, RDKBWIFI-442, RDKBACCL-672
Commits / PRs included (chronological)
Notes
main(via prior manual cherry-picks, bulk translator syncs, or superseded by latermain-only work) were intentionally excluded to avoid duplication/regressions.main-only refactors while incorporating the develop-side fix, adding a missing CI matrix entry, fixing a couple of latent bugs uncovered during merge). See individual commit messages for details.