fix(http): rewrite all User-Agent headers and preserve active sessions - #221
Merged
Merged
Conversation
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.
Summary
UT_arrayfor overflow. Vendor unmodified upstreamutarray.hv2.3.0 ate493aa90a2833b4655927598f169c31cfcdf7861, retaining its BSD notice. No new linked dependency.reallocorfree. Overflow capacity is reused across parser feeds and freed when the session is destroyed.last_activeon nonempty parser input, including incomplete headers, content-length/chunked bodies, and retries on failed sessions. Truly idle sessions still expire.Allocation scope
Allocation-count tests verify zero UA-entry heap allocations for 0–8 entries per parser feed, one overflow allocation at entry 9, and no new parser allocations while reusing enough reserved overflow capacity. This does not claim zero allocations for session objects, network buffers, or the entire daemon. NFQUEUE still allocates a separate copy-out buffer for payloads with more than eight entries.
Validation
ctest --test-dir build --output-on-failure -j 4: 144/144 passed.--wrap; production allocators are unchanged.771671af96210a83aa3bb87ea7cfa6eb4a7d368d: all 27 checks are green, including the 18-variant package build matrix, both QEMU versions, UCI/standalone/musl unit tests, cache/no-cache integration tests, and CodeQL.CI workflows: build and tests, OpenWrt QEMU, CodeQL.
Build dependencies were extracted into the temporary workspace; no system packages or firewall settings were changed.