Skip to content

fix: deep code review passes 25-28 - 18 issues fixed - #276

Merged
mikemiles-dev merged 3 commits into
mainfrom
fix/deep-code-review-pass-25-28
Mar 15, 2026
Merged

fix: deep code review passes 25-28 - 18 issues fixed#276
mikemiles-dev merged 3 commits into
mainfrom
fix/deep-code-review-pass-25-28

Conversation

@mikemiles-dev

Copy link
Copy Markdown
Owner

Pass 25 (6 fixes):

  • IPFIX V9 options template validation aligned with V9 parser (reject individual zero-length fields)
  • would_accept() false negative causing data truncation fixed
  • set_pending_flows_config(None) now records dropped metrics
  • IPFIX replay flowset count bound added (consistent with V9)
  • YAF DnsSRVTarget (219) type corrected to String
  • YAF SslPublicKeyLength (250) type corrected to UnsignedDataNumber

Pass 26 (3 fixes):

  • IPFIX "withdraw all" templates implemented per RFC 7011 §8.1
  • V9 replay flowset limit uses break instead of continue
  • IPFIX withdrawal+redefinition in same flowset no longer drains pending flows

Pass 27 (3 fixes):

  • Fuzz round-trip target uses fresh parser for re-parse (no accumulated state)
  • README: 3 missing examples added
  • Redundant test renamed to test_v5_serialization_single_packet

Pass 28 (3 fixes):

  • IPFIX withdraw-all now drains only same-type pending flows (not cross-type)
  • test_pcap_iterator_api now only counts successful parses
  • README v0.7.0 breaking change note updated for v1.0.0

Additional improvements:

  • Dead macro parameter removed from impl_try_from!
  • TemplateHooks::clear() method added
  • test_parser_builder_with_field_count_limits made non-vacuous
  • test_parser_builder_comprehensive strengthened with functional verification

Pass 25 (6 fixes):
- IPFIX V9 options template validation aligned with V9 parser (reject individual zero-length fields)
- would_accept() false negative causing data truncation fixed
- set_pending_flows_config(None) now records dropped metrics
- IPFIX replay flowset count bound added (consistent with V9)
- YAF DnsSRVTarget (219) type corrected to String
- YAF SslPublicKeyLength (250) type corrected to UnsignedDataNumber

Pass 26 (3 fixes):
- IPFIX "withdraw all" templates implemented per RFC 7011 §8.1
- V9 replay flowset limit uses break instead of continue
- IPFIX withdrawal+redefinition in same flowset no longer drains pending flows

Pass 27 (3 fixes):
- Fuzz round-trip target uses fresh parser for re-parse (no accumulated state)
- README: 3 missing examples added
- Redundant test renamed to test_v5_serialization_single_packet

Pass 28 (3 fixes):
- IPFIX withdraw-all now drains only same-type pending flows (not cross-type)
- test_pcap_iterator_api now only counts successful parses
- README v0.7.0 breaking change note updated for v1.0.0

Additional improvements:
- Dead macro parameter removed from impl_try_from!
- TemplateHooks::clear() method added
- test_parser_builder_with_field_count_limits made non-vacuous
- test_parser_builder_comprehensive strengthened with functional verification
@mikemiles-dev
mikemiles-dev merged commit f0e006d into main Mar 15, 2026
12 checks passed
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.

1 participant