Repository navigation
test: generate FRAD's NLPID map and the ICMP type registries - #2612
Conversation
|
GOOD TO GO at |
|
Coverage: 94.04% (unit tier, Python 3.15,
Per-file detail: the |
|
resolve conflicts |
|
On it. A rebase onto |
…es (#2560) - dispatch.py: a `frad` family over `FRAD.__proto__`, probing each NLPID through a LINUX_SLL capture with `arphrd_type` FRAD, and `PINNED_TARGETS` entries for both codes; `test_cases_cover_every_table_named_in_the_issue` counts them. - options.py: `icmpv4-type` and `icmpv6-type` families over `ICMPv4.__type__` and `ICMPv6.__type__`, with non-degenerate echo, quoted-packet, pointer and MTU arguments; neither writes a capture. - test_option_generator_icmp_2560_unit: pins each generated message's data model and body against RFC 792 and RFC 4443, which catches a retarget between two types of the same layout that the round trip cannot see.
fd9d47d to
1ef0195
Compare
|
Rebased onto
|
…s latest wave into 1.6.0 (#2449) - Added: every whole HTTP/2 frame in a TCP segment is a further HTTPv2 layer, the previous frame's payload, as with TLS (#2609). - Folded into unreleased entries: SSLv3 lives in pcapkit.protocols.application.sslv3 (#2602), and a reassembled DTLS Datagram's packet holds the deferred handshake decode (#2605). tls.SSLv3 is in no release tag, so the entry records no move. - Changed: the remaining xdist jobs at -n logical (#2606) join the CI entry, and the member-order entry cites the last reorder (#2613). - No entry for the test-only #2611 and #2612, or for #2610's private registry sentinel, which changes no behaviour. - CHANGELOG.md regenerated; util/changelog_md.py --check passes.
make pylint,make mypy,make isort)make testpasses, and a test case covers the changeWhat is the purpose of your pull request?
test— tests onlyDescription of your pull request and other information
The dispatch generators now cover FRAD's NLPID map and the ICMP type registries.
examples/generators/dispatch.pygains afradfamily andPINNED_TARGETSentries. Both of FRAD's entries, 0xCC to IPv4 and 0x8E to IPv6, are reached through LinuxSLL and parsed to TCP.examples/generators/options.pygains ICMPv4 and ICMPv6 type families, covering every__type__entry.test_cases_cover_every_table_named_in_the_issuegoes up exactly.A mutation check shows the new cases fail when the dispatch they pin is broken.
test_option_generator_icmp_2560_unitalso catches a retarget between two types with the same layout, which the round trip alone cannot see. The ICMP families write no capture, so the existing option fixtures stay unchanged.The held radiotap (#2607) and DCCP (#2593) branches append to the same tables, so whichever merges later resolves a trivial conflict. #2592 tracks LinuxSLL's own registry and the test-coverage.rst gap this exposed.
Closes #2560