RDKBWIFI-538: Reject webconfig set when the owning handler is not registered yet - #1304
Open
dkyncu wants to merge 1 commit into
Open
RDKBWIFI-538: Reject webconfig set when the owning handler is not registered yet#1304dkyncu wants to merge 1 commit into
dkyncu wants to merge 1 commit into
Conversation
…istered yet 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_destination_not_found so the setter learns the delivery failed. Signed-off-by: Durmus Koyuncu <durmus.kyncu.kd@gmail.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR fixes a startup race in the RDKB RBUS “set” callback path where a set request could arrive before the owning component’s set_handler is mapped, causing the payload to be silently dropped while still returning success. The change makes the failure explicit by returning a destination-not-found error so the setter can retry or handle delivery failure.
Changes:
- Add an explicit
elsebranch whenuser_cb->set_handleris not registered to reject the set instead of silently succeeding. - Log a clear error message indicating the handler is not registered yet (startup window).
- Return
RBUS_ERROR_DESTINATION_NOT_FOUNDviabus_error_destination_not_foundconversion.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Contributor
Author
|
Could you please review this? Thanks. |
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
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_destination_not_found so the setter learns the delivery failed.