Repository navigation
Prepare v0.4.0: IPv4 fragment support, VLAN isolation, and DNS parser hardening - #20
Merged
Merged
Conversation
Main has the same tree as existing ancestor 4e4c5f4. Resolve the ancestry-induced conflicts while retaining the current v0.4.0 tree unchanged.
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.
This PR adds native VLAN/QinQ handling and opt-in IPv4 fragment processing, strengthens DNS validation, and improves shutdown behavior, resource controls, and pseudonymization.
Changes
--allow-fragmentsfor matching queries with observable first IPv4 response fragments, and--full-fragmentsfor bounded IPv4 reassembly with incomplete-response fallback. Preserve event ordering across batches and reject overlapping, inconsistent, or UDP-length-mismatched fragment sets.--max-dns-compression-jumpsandDPP_MAX_DNS_COMPRESSION_JUMPS: default32, with0disabling the jump limit. Cache validated suffixes within each message while retaining bounds, backward-pointer, overlap, and expanded-name-length checks.--threadsandDPP_THREADSenforce a positive CPU execution-budget ceiling.Compatibility and operational notes
source_ip. Legacy key files remain supported; IPv6 pseudonyms remain unchanged when using the same legacy key.--threadsandDPP_THREADSwere previously compatibility no-ops and now affect execution.response_timestampand emptyresponse_codeindicate an observed response prefix whose complete response code is unavailable.