Ethereal-dev: [Ethereal-dev] dissection of PPP/BCP frames

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Kirby Files <kfiles@xxxxxxxxxxx>
Date: Wed, 15 Feb 2006 23:23:22 -0500
Hi, I'm confused about why dissect_bpdu is registered as the handler for PPP/BCP traffic (PPP Protocol code 0x0031). The Bridge Control Protocol (BCP) is defined in RFC3518, and looks nothing like the Spanning Tree Protocol, which packet-bpdu.c parses.

I see that IANA assigned numbers calls the 0x0031 protocol code "Bridging PDU", and wonder if someone just mentally associated that with bridging PDUs from STP? Or is there some real use for parsing STP frames in a PPP frame with an NCP designated by 0x0031?

To me, this seems to be a bug, as I would like to decode true RFC3518 BCP traffic, and the current dissector registration hampers this. A BCP frame would just have 1 byte of flags, 1 byte indicating the 802.x framing type, and an 802.x frame. When I try to decode my BCP traffic, I get:

Point-to-Point Protocol
    Protocol: Bridging PDU (0x0031)
Spanning Tree Protocol
    Protocol Identifier: Unknown (0x0001)
    Protocol Version Identifier: Spanning Tree (0)
    BPDU Type: Unknown (0x03)
Data (100 bytes)

Should I file a bug, and then submit a true BCP dissector?

Thanks,
  --kirby