Skip to content

Fix capture bugs from Fable 5 scan; consolidate synthetic pcap generators - #4097

Merged
awick merged 1 commit into
mainfrom
fable-improvements-17
Jul 4, 2026
Merged

Fix capture bugs from Fable 5 scan; consolidate synthetic pcap generators#4097
awick merged 1 commit into
mainfrom
fable-improvements-17

Conversation

@awick

@awick awick commented Jul 4, 2026

Copy link
Copy Markdown
Contributor
  • packet.c: session-command throttle never engaged when packetQ >= 75% full
  • cloud.c: memory leak refreshing AWS credentials every 280s
  • rules.c: count-field ranges spanning 20+ values never matched
  • reader-scheme-s3.c: listing stopped early on pages with no matching keys
  • reader-tpacketv3.c: unchecked PACKET_STATISTICS added garbage stats; %zu fmt
  • reader-netmap.c: stats always 0, now counted from the RX loop
  • reader-pcapoverip.c: NULL unref GLib warning when socket creation fails
  • arp/nbns detail.jade: clicks built nonexistent ip.arp/ip.nbns expressions
  • adb.c: shell,v2 with parameters not tagged adb:shell-v2
  • camel.c: party numbers now decoded as ISUP Q.763 (2 header bytes, odd filler)
  • certs.c: isCA tested cRLSign instead of keyCertSign; SAN before keyUsage aborted the extension walk
  • http.c: CONNECT 2xx response now reclassifies the tunnel and skips the fake body (no more md5/sha256 of tunnel bytes); flush counts on unregister
  • imap.c: CR/LF split across packets left trailing CR, missed end of headers
  • krb5.c: TCP record length now full 32-bit per RFC 4120
  • quic.c: zero-length CHLO tag values no longer stop SNI/VER; drop dead code
  • rdp.c/s7comm.c: reassembly overflow now tagged+unregistered; s7comm frames clamped to the TPKT boundary
  • sctp.c: multi-stream interleaved fragments no longer corrupt reassembly
  • smb.c: SMB1 ByteCount/DialectIndex read as u16; all command cases parse from a message-clamped BSB (no remlen underflow or cross-message strings)
  • field.c: HASH_COUNT prefix typo; misc comment fixes
  • tests/gen: one gen_.py per pcap/synthetic that regenerates the whole pcap byte-identically; appender scripts merged as section functions
  • tests/mini-aws.pl: ListObjects now paginates (5 keys) with continuation-token
  • new regression sessions: certs keyUsage x3, imap CR-split, krb5 big record, quic zero-length tag, s7comm frame clamp, sctp interleave, smb1 dialect0, smb1 malformed delete, adb shell-v2 params

License

I confirm that this contribution is made under an Apache 2.0 license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

…tors

- packet.c: session-command throttle never engaged when packetQ >= 75% full
- cloud.c: memory leak refreshing AWS credentials every 280s
- rules.c: count-field ranges spanning 20+ values never matched
- reader-scheme-s3.c: listing stopped early on pages with no matching keys
- reader-tpacketv3.c: unchecked PACKET_STATISTICS added garbage stats; %zu fmt
- reader-netmap.c: stats always 0, now counted from the RX loop
- reader-pcapoverip.c: NULL unref GLib warning when socket creation fails
- arp/nbns detail.jade: clicks built nonexistent ip.arp/ip.nbns expressions
- adb.c: shell,v2 with parameters not tagged adb:shell-v2
- camel.c: party numbers now decoded as ISUP Q.763 (2 header bytes, odd filler)
- certs.c: isCA tested cRLSign instead of keyCertSign; SAN before keyUsage
  aborted the extension walk
- http.c: CONNECT 2xx response now reclassifies the tunnel and skips the
  fake body (no more md5/sha256 of tunnel bytes); flush counts on unregister
- imap.c: CR/LF split across packets left trailing CR, missed end of headers
- krb5.c: TCP record length now full 32-bit per RFC 4120
- quic.c: zero-length CHLO tag values no longer stop SNI/VER; drop dead code
- rdp.c/s7comm.c: reassembly overflow now tagged+unregistered; s7comm frames
  clamped to the TPKT boundary
- sctp.c: multi-stream interleaved fragments no longer corrupt reassembly
- smb.c: SMB1 ByteCount/DialectIndex read as u16; all command cases parse
  from a message-clamped BSB (no remlen underflow or cross-message strings)
- field.c: HASH_COUNT prefix typo; misc comment fixes
- tests/gen: one gen_<name>.py per pcap/*synthetic* that regenerates the
  whole pcap byte-identically; appender scripts merged as section functions
- tests/mini-aws.pl: ListObjects now paginates (5 keys) with continuation-token
- new regression sessions: certs keyUsage x3, imap CR-split, krb5 big record,
  quic zero-length tag, s7comm frame clamp, sctp interleave, smb1 dialect0,
  smb1 malformed delete, adb shell-v2 params

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@awick
awick merged commit 55937f4 into main Jul 4, 2026
23 of 26 checks passed
@awick
awick deleted the fable-improvements-17 branch July 4, 2026 15:38
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