Skip to content

Fix: Node List len is reported 0x00 when LR node is inlcuded#54

Open
harshithChukka wants to merge 2 commits into
SiliconLabs:mainfrom
harshithChukka:fix-find_min_bitmask_len-fn-v2
Open

Fix: Node List len is reported 0x00 when LR node is inlcuded#54
harshithChukka wants to merge 2 commits into
SiliconLabs:mainfrom
harshithChukka:fix-find_min_bitmask_len-fn-v2

Conversation

@harshithChukka
Copy link
Copy Markdown

When an LR node is included, ZIPGW may send Node List Report / Failed Node List Report with LR node list length as 0x00 even though the Serial API returns a valid LR bitmask. This can hide LR nodes from downstream consumers.

Bug 1: find_min_bitmask_len() stops at first zero byte => This assumes non-zero bytes are contiguous from index 0, which is not valid for LR bitmasks.

Bug 2: Out-of-bounds read in BuildFailedNodeListFrame() => BuildFailedNodeListFrame() passed MAX_NODEMASK_LENGTH (500) instead of MAX_LR_NODEMASK_LENGTH (468) to find_min_bitmask_len():

@lmolina
Copy link
Copy Markdown
Collaborator

lmolina commented May 28, 2026

Thanks for reporting and sharing the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants