diff options
author | Jörg Mayer <jmayer@loplof.de> | 2005-08-15 12:41:08 +0000 |
---|---|---|
committer | Jörg Mayer <jmayer@loplof.de> | 2005-08-15 12:41:08 +0000 |
commit | 773325425383ac6c30d6d278a0417c69ad67654c (patch) | |
tree | 03c65e7aece28b1872bac5700fea2a304cd79b14 /epan/dissectors/packet-extreme.c | |
parent | 12e2db899c40754f1614273fe832b33803aefce9 (diff) | |
download | wireshark-773325425383ac6c30d6d278a0417c69ad67654c.tar.gz |
- Documentation update
- The slot and port numbers printed on the chassis are off by
one when compared to the transmitted values (reported by
Jim Young).
svn path=/trunk/; revision=15358
Diffstat (limited to 'epan/dissectors/packet-extreme.c')
-rw-r--r-- | epan/dissectors/packet-extreme.c | 63 |
1 files changed, 59 insertions, 4 deletions
diff --git a/epan/dissectors/packet-extreme.c b/epan/dissectors/packet-extreme.c index 95606ae8cb..4dc2ce3b20 100644 --- a/epan/dissectors/packet-extreme.c +++ b/epan/dissectors/packet-extreme.c @@ -35,6 +35,13 @@ The Display string may be incomplete (no spec) Look for FIXME in the code :-) +The following information is taken from the Extreme knowledge base +(login required). Search for ESRP. +Note: The information seems to be incorrect in at least one place + (position of Vlan ID). + +================================ snip ================================ + ESRP Packet Format: ------------------- @@ -82,6 +89,49 @@ EDP is a SNAP encapsulated frame. The top level looks like this: The top level format is like this: [ SNAP header ] [ EDP header] [ TLV 0 ] [ TLV 1 ] ... [ TLV N ] +Header format: +1 octet: EDP version +1 octet: reserved +2 octets: length +2 octets: checksum +2 octets: sequence # +8 octets: device id (currently 2 0 octets followed by system mac address) + +TLV stands for Type, Length, Value. +Format of a TLV entry: +marker ( 1 octet): Hex 99 +type ( 1 octet): + The following types are used: + Null (used as an end signal): 0 + Display (Mib II display string): 1 + Info (Basic system information): 2 + Vlan Info : 5 + ESRP : 8 +Length: Length of subsequent data(2 octets) +Value: Length octets of data. + +Format for Info TLV: +two octets: originating slot # +two octets: originating port # +two octets: Virtual Chassis Id (If originating port is connected to a virtual chassis). +six octets: reserved +four octets: software version +16 octets: Virtual Chassis Id connections + +Format for Vlan info: +octet 0: Flags (bit 8 = 1 means this vlan has an IP interface) +octets 1,2,3: reserved. +octets 4,5: vlan Id (0 if untagged) +octets 6,7: reserved. +octets 8 - 11: Vlan IP address. +Rest of value: VLAN name. + +Display string is merely length octets of the MIBII display string. + +These are the structures you will see most often in EDP frames. + +================================ snap ================================ + */ #ifdef HAVE_CONFIG_H @@ -240,13 +290,18 @@ dissect_info_tlv(tvbuff_t *tvb, packet_info *pinfo _U_, int offset, int length _ proto_item *tlvi; proto_tree *ver_tree; guint8 major1, major2, sustaining, internal; + guint16 port, slot; - proto_tree_add_item(tree, hf_edp_info_slot, tvb, offset, 2, - FALSE); + /* The slot and port numbers printed on the chassis are 1 + bigger than the transmitted values indicate */ + slot = tvb_get_ntohs(tvb, offset) + 1; + proto_tree_add_uint(tree, hf_edp_info_slot, tvb, offset, 2, + slot); offset += 2; - proto_tree_add_item(tree, hf_edp_info_port, tvb, offset, 2, - FALSE); + port = tvb_get_ntohs(tvb, offset) + 1; + proto_tree_add_uint(tree, hf_edp_info_port, tvb, offset, 2, + port); offset += 2; proto_tree_add_item(tree, hf_edp_info_vchassid, tvb, offset, 2, |