Skip to content

Fix array path parsing and cleanup in centijson values - #95

Open
aidangarske wants to merge 15 commits into
wolfSSL:masterfrom
aidangarske:fenrir-fixes-11599-8754-8763
Open

aidangarske wants to merge 15 commits into
wolfSSL:masterfrom
aidangarske:fenrir-fixes-11599-8754-8763

Conversation

@aidangarske

Copy link
Copy Markdown
Member

F-11599 - 3d30178 - JSON value paths now parse the documented attached and negative array index forms.

F-8777 - 76a1515 - Array range removal now rejects an index or count that wraps.

F-8763 - 5ee8a0b - A cloned array is now finalized on failure and only initialized elements are tracked.

F-13882 - 902f106 - Cloning an empty array no longer makes a zero-size allocation.

F-10491 - 737dc5f - The value compatibility predicate now rejects lossy numeric conversions.

F-13888 - 962014d - The value compatibility predicate now range checks floating values before casting them.

F-11604 - 156d92f - Dictionary removal now frees the removed node and keeps the size consistent when finalize fails.

F-11603 - 67dfd96 - Dictionary cleanup no longer frees a node that is still linked, so a failed cleanup can be retried.

F-10499 - 3992d02 - Cleaning or cloning an empty dictionary no longer makes a zero-size stack allocation.

F-8754 - e35340a - Shrinking an array to zero capacity now frees its buffer directly.

… attached and negative array index path forms
…ray on failure and track only initialized elements
…eric conversions in compatibility predicate
…ting values before casting in compatibility predicate
…tionary node and keep size consistent on finalize failure
…retryable by not freeing a still-linked node on cleanup failure
…tack allocation when cleaning or cloning an empty dictionary
…directly when shrinking to zero capacity
@aidangarske aidangarske self-assigned this Oct 23, 2026
…est constants without C99 long long literals
…owth whose doubled capacity wraps instead of shrinking to zero
…ary stack walk when no stack was allocated for an empty tree

@wolfSSL-Fenrir-bot wolfSSL-Fenrir-bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fenrir Automated Review — PR #95

Scan targets checked: wolfsentry-src, wolfsentry-bugs
Not reviewed (no scan target covers them): tests/filter-clang-analyzer.py
Coverage: 1 of 2 in-scope changed file(s) opened by the reviewer; not opened: tests/unittests.c

Findings: 1
1 finding(s) posted as inline comments (see file-level comments below)

This review was generated automatically by Fenrir. Reported findings require changes before merge.

Review tier: Lite

…ionary node before freeing it so a failed clean can be retried

@wolfSSL-Fenrir-bot wolfSSL-Fenrir-bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fenrir Automated Review — PR #95

Scan targets checked: wolfsentry-src, wolfsentry-bugs
Not reviewed (no scan target covers them): tests/filter-clang-analyzer.py
Coverage: 1 of 2 in-scope changed file(s) opened by the reviewer; not opened: tests/unittests.c

Fenrir result: Approved ✅

No new issues found in the changed files.

Advisory only — this automated result does not count as a GitHub approval.

Review tier: Lite

@wolfSSL-Fenrir-bot
wolfSSL-Fenrir-bot dismissed their stale review October 24, 2026 01:30

Fenrir's latest completed scan found no issues; clearing the prior automated change request.

@aidangarske
aidangarske marked this pull request as ready for review October 24, 2026 01:44
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.

2 participants