Skip to content

fix(toolkit): the pypcapfile engine never finds IPv4 carried in IPv6 (4in6) #1592

Closed

Description

@JarryShaw

With engine='pypcapfile', IPv4 carried inside IPv6 (4in6) is never found, so its datagrams are missing and no warning says so.

Repro on main, 3.11, pypcapfile 0.12.0: Ethernet + IPv6 (next header 4) + an IPv4 fragment.

  • Default engine: an IPv4 reassembly input for the inner IPv4. pcapkit/toolkit/pcap.py:173-174 takes the first IPv4 in the chain.
  • pypcapfile: no input and no warning.

Cause: _network (pcapkit/toolkit/pypcapfile.py:305-327) only finds IPv4 directly over Ethernet, and pypcapfile has no IPv6 decoder.

Expected: the same IPv4 input as the default engine. Failing that, a once-per-capture warning, like the one #1575 adds for tunnelled TCP.

Found by the #1575 worker and confirmed by its cross-review. Blocked until #1575 merges.

Activity

  1. added
    fixPull requests that fix a defect (fix: subject prefix)
    blockedDeferred pending another issue or decision; see the last comment for what unblocks it
    on Oct 10, 2026
  2. JarryShaw commented on Oct 10, 2026

    @JarryShaw
    OwnerAuthor

    Work has started ahead of #1575 merging, together with #1590–#1593 and #1596 because all five are in the same pypcapfile.py header walk. It is on a branch built on #1575's head 1de91947b. The PR opens, rebased onto main, once #1575 merges.

  3. added
    wipWork in flight - a covering PR is open or an agent is actively on it
    and removed
    blockedDeferred pending another issue or decision; see the last comment for what unblocks it
    on Oct 10, 2026
  4. moved this from Blocked to WIP in PyPCAPKiton Oct 10, 2026
  5. removed
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 10, 2026
  6. added this to the PyPCAPKit v1.5 milestone on Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    fixPull requests that fix a defect (fix: subject prefix)

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions