Skip to content

refactor(reassembly): bring DTLS reassembly to IP/TCP parity (deferred packet, __protocol_type__) #2531

Closed

Description

@JarryShaw

Follow-up from #2528 (owner's answer to Q4). After #2496's rework, DTLS reassembly still differs from IP and TCP in the two ways reassembly-integration.rst lists as remaining divergences:

  • no deferred Datagram.packet that runs dtls_handshake the way IP and TCP use Deferred;
  • no __protocol_type__ on the DTLS reassembly class, which is now possible because DTLS.read() no longer imports reassembly.

Blocked: this builds on #2528's toolkit and analysis routing, and unblocks when #2528 merges.

Activity

  1. added
    refactorRestructuring for its own sake — neither a fix nor a new capability (refactor: prefix)
    blockedDeferred pending another issue or decision; see the last comment for what unblocks it
    on Nov 1, 2026
  2. moved this to Blocked in PyPCAPKiton Nov 1, 2026
  3. JarryShaw commented on Nov 1, 2026

    @JarryShaw
    OwnerAuthor

    Unblocked: #2528 merged, so DTLS reassembly now routes through the toolkit and foundation.analysis. Dispatched.

  4. 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 Nov 1, 2026
  5. moved this from Blocked to WIP in PyPCAPKiton Nov 1, 2026
  6. JarryShaw commented on Nov 1, 2026

    @JarryShaw
    OwnerAuthor

    And what about IP and TCP reassembly analysis? Should we also add to the analysis module?

  7. JarryShaw commented on Nov 1, 2026

    @JarryShaw
    OwnerAuthor

    Paraphrased: should IP and TCP reassembly also get foundation.analysis modules? Today only DTLS has one. IP and TCP outcomes go through the general Protocol.analyze dispatcher via Deferred, and reassembly-integration.rst records that point 3 holds for DTLS alone. Options and a recommendation are on #2581: add thin analysis/ip.py and analysis/tcp.py, so the package mirrors reassembly engine by engine. That is a separate change after this issue's PR, since both edit the same package and page. This issue stays on its DTLS parity scope.

  8. added this to the PyPCAPKit v1.6 milestone on Nov 2, 2026
  9. removed
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Nov 2, 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

    refactorRestructuring for its own sake — neither a fix nor a new capability (refactor: prefix)

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions