diff options
author | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2012-08-01 12:22:34 +0000 |
---|---|---|
committer | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2012-08-01 12:22:34 +0000 |
commit | 90ca174c9e4f10e2ac7c353288413e426bcc863b (patch) | |
tree | 7a5ec3720f00d3b5c074c63990488688461a54e6 /epan/dissectors/packet-bpdu.c | |
parent | 025200992d9beff1f06fcc9c6d74b9187ecebc2c (diff) |
From Vasu D. Dasari via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7550
Decode Provider Bridge GVRP Address
Packets with destination MAC address to be that of, provider bridge GVRP address
or 01:80:c2:00:00:0d, the packets are decoded as STP packets
with "Unknown BPDU type".
svn path=/trunk/; revision=44184
Diffstat (limited to 'epan/dissectors/packet-bpdu.c')
-rw-r--r-- | epan/dissectors/packet-bpdu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/epan/dissectors/packet-bpdu.c b/epan/dissectors/packet-bpdu.c index c5cf96ac50..c14369337a 100644 --- a/epan/dissectors/packet-bpdu.c +++ b/epan/dissectors/packet-bpdu.c @@ -274,7 +274,7 @@ dissect_bpdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) dstaddr = pinfo->dl_dst.data; if(dstaddr[0] == 0x01 && dstaddr[1] == 0x80 && dstaddr[2] == 0xC2 && dstaddr[3] == 0x00 && - dstaddr[4] == 0x00 && ((dstaddr[5] & 0xF0) == 0x20)) { + dstaddr[4] == 0x00 && ((dstaddr[5] == 0x0D) || ((dstaddr[5] & 0xF0) == 0x20))) { switch (dstaddr[5]) { @@ -284,6 +284,7 @@ dissect_bpdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) return; case 0x21: + case 0x0D: /* for GVRP */ call_dissector(gvrp_handle, tvb, pinfo, tree); return; |