Skip to content

fix(link): L2TPv2 and OSPF drop the octets past their own Length field on rebuild #1455

Closed

Description

@JarryShaw

Bug. L2TPv2 and OSPF have no trailer key, so octets captured past their own Length field are lost on rebuild. IPv4 and IPv6 keep these as trailer (#1209/#1431), and IPX does the same (#1435).

Repro on main (b14d676c5):

raw = bytes.fromhex('4002000800010002') + b'pp'   # L2TPv2 with Length=8, 10 octets captured
L2TPv2.from_data(L2TPv2(raw, 10).info).data          # 4002000800010002: 8 of 10 octets

OSPF behaves the same way: a Packet Length of 24 followed by b'zz' rebuilds 24 of 26 octets. I reproduced the L2TPv2 case myself; the OSPF case comes from the #1454 worker.

Found by the edge-case suite in #1454 (#1202).

Activity

  1. added
    fixPull requests that fix a defect (fix: subject prefix)
    pendingAccepted and unstarted - nobody is on it and nothing blocks it
    on Oct 9, 2026
  2. added
    wipWork in flight - a covering PR is open or an agent is actively on it
    and removed
    pendingAccepted and unstarted - nobody is on it and nothing blocks it
    on Oct 9, 2026
  3. JarryShaw commented on Oct 9, 2026

    @JarryShaw
    OwnerAuthor

    A worker is on it now, on branch fix/1455-l2tpv2-ospf-trailer.

  4. removed
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 9, 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

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions