diff options
author | Anders Broman <anders.broman@ericsson.com> | 2012-05-02 14:23:35 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2012-05-02 14:23:35 +0000 |
commit | e01d3b549edacfd2603190a692870128c40002f4 (patch) | |
tree | 6a579d8fb110d4201f39c20790651944898f9f4f /epan/dissectors/packet-isis-clv.c | |
parent | 203fa68972fec77fc7b785985cb5c0155765c891 (diff) |
From "oss.2nerds":
IEEE P802.1aq/D3.6 and the corresponding IETF draft
(http://tools.ietf.org/html/draft-ietf-isis-ieee-aq-05) defines a series of new
ISIS TLVs for the shortest-path-bridging protocol.
The attached patch file contains a simple dissector for one such TLV (the
MT-Port-Cap TLV) and several corresponding sub-TLVs (mcid, aux_mcid, digest,
and b-vid). The digest sub-TLV dissector has not been exercised because no
suitable capture files are available (the digest sub-TLV seems not to be widely
implemented at this point in time).
Note that the codepoints mentioned in the IETF draft have changed. The
IANA-assigned codepoints are further described in these pages:
http://www.ietf.org/mail-archive/web/spb-isis/current/msg00007.html
http://www.iana.org/assignments/isis-tlv-codepoints/isis-tlv-codepoints.xml#tlv-143
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7154
svn path=/trunk/; revision=42385
Diffstat (limited to 'epan/dissectors/packet-isis-clv.c')
-rw-r--r-- | epan/dissectors/packet-isis-clv.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/epan/dissectors/packet-isis-clv.c b/epan/dissectors/packet-isis-clv.c index 9d32631033..ad78e7f522 100644 --- a/epan/dissectors/packet-isis-clv.c +++ b/epan/dissectors/packet-isis-clv.c @@ -476,8 +476,14 @@ isis_dissect_nlpid_clv(tvbuff_t *tvb, proto_tree *tree, int offset, int length) proto_item_append_text(ti, ", "); } proto_item_append_text(ti, "%s (0x%02x)", - val_to_str(tvb_get_guint8(tvb, offset), nlpid_vals, - "Unknown"), tvb_get_guint8(tvb, offset)); + /* NLPID_IEEE_8021AQ conflicts with NLPID_SNDCF. + * In this context, we want the former. + */ + (tvb_get_guint8(tvb, offset) == NLPID_IEEE_8021AQ + ? "IEEE 802.1aq (SPB)" + : val_to_str(tvb_get_guint8(tvb, offset), nlpid_vals, + "Unknown")), + tvb_get_guint8(tvb, offset)); offset++; first = FALSE; } |