diff options
author | Guy Harris <guy@alum.mit.edu> | 2006-01-28 23:18:19 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2006-01-28 23:18:19 +0000 |
commit | 54ac396346ac6fda394cf0dc3ff9bae1f7c92555 (patch) | |
tree | 94d330e1ed1a42321ef2c619a0967407353bd7fe /epan/dissectors/packet-lldp.c | |
parent | 5186e3341612be342a0cc21b98dafa6dcd6dc220 (diff) | |
download | wireshark-54ac396346ac6fda394cf0dc3ff9bae1f7c92555.tar.gz wireshark-54ac396346ac6fda394cf0dc3ff9bae1f7c92555.tar.bz2 wireshark-54ac396346ac6fda394cf0dc3ff9bae1f7c92555.zip |
Expand the set of #defines in afn.h (and give a URL for the *current*
list of address families) and the list of strings in afn.c, and use them
in packet-lldp.c instead of having it define its own.
svn path=/trunk/; revision=17114
Diffstat (limited to 'epan/dissectors/packet-lldp.c')
-rw-r--r-- | epan/dissectors/packet-lldp.c | 76 |
1 files changed, 11 insertions, 65 deletions
diff --git a/epan/dissectors/packet-lldp.c b/epan/dissectors/packet-lldp.c index 2d39d83d12..930f44875c 100644 --- a/epan/dissectors/packet-lldp.c +++ b/epan/dissectors/packet-lldp.c @@ -43,6 +43,7 @@ #include <epan/emem.h> #include <epan/etypes.h> #include <epan/oui.h> +#include <epan/afn.h> /* TLV Types */ #define END_OF_LLDPDU_TLV_TYPE 0x00 /* Mandatory */ @@ -154,61 +155,6 @@ const value_string port_id_subtypes[] = { { 0, NULL} }; -#define IANA_ADDR_FAMILY_RESERVED 0 /* Reserved */ -#define IANA_ADDR_FAMILY_IP4 1 /* IP (IP version 4) */ -#define IANA_ADDR_FAMILY_IP6 2 /* IP6 (IP version 6) */ -#define IANA_ADDR_FAMILY_NSAP 3 /* NSAP */ -#define IANA_ADDR_FAMILY_HDLC 4 /* HDLC (8-bit multidrop) */ -#define IANA_ADDR_FAMILY_BBN1822 5 /* BBN 1822 */ -#define IANA_ADDR_FAMILY_802 6 /* 802 (includes all 802 media plus Ethernet "canonical format") */ -#define IANA_ADDR_FAMILY_E163 7 /* E.163 */ -#define IANA_ADDR_FAMILY_E164 8 /* E.164 (SMDS, Frame Relay, ATM) */ -#define IANA_ADDR_FAMILY_F69 9 /* F.69 (Telex) */ -#define IANA_ADDR_FAMILY_X121 10 /* X.121 (X.25, Frame Relay) */ -#define IANA_ADDR_FAMILY_IPX 11 /* IPX */ -#define IANA_ADDR_FAMILY_APPLETALK 12 /* Appletalk */ -#define IANA_ADDR_FAMILY_DECNET_IV 13 /* Decnet IV */ -#define IANA_ADDR_FAMILY_BANYON_VINES 14 /* Banyan Vines */ -#define IANA_ADDR_FAMILY_E164_NSAP 15 /* E.164 with NSAP format subaddress */ -#define IANA_ADDR_FAMILY_DNS 16 /* DNS (Domain Name System) */ -#define IANA_ADDR_FAMILY_DISTINGUISHED 17 /* Distinguished Name */ -#define IANA_ADDR_FAMILY_ASN 18 /* AS Number */ -#define IANA_ADDR_FAMILY_XTP_IP4 19 /* XTP over IP version 4 */ -#define IANA_ADDR_FAMILY_XTP_IP6 20 /* XTP over IP version 6 */ -#define IANA_ADDR_FAMILY_XTP 21 /* XTP native mode XTP */ -#define IANA_ADDR_FAMILY_FIBRE_PORT 22 /* Fibre Channel World-Wide Port Name */ -#define IANA_ADDR_FAMILY_FIBRE_NODE 23 /* Fibre Channel World-Wide Node Name */ -#define IANA_ADDR_FAMILY_GWID 24 /* GWID */ - -const value_string management_addr_values[] = { - { 0, "Reserved"}, - { 1, "IPv4"}, - { 2, "IPv6"}, - { 3, "NSAP"}, - { 4, "HDLC (8-bit multidrop)"}, - { 5, "BBN 1822"}, - { 6, "802 (includes all 802 media plus Ethernet)"}, - { 7, "E.163"}, - { 8, "E.164 (SMDS, Frame Relay, ATM)"}, - { 9, "F.69 (Telex)"}, - { 10, "X.121 (X.25, Frame Relay)"}, - { 11, "IPX"}, - { 12, "Appletalk"}, - { 13, "Decnet IV"}, - { 14, "Banyan Vines"}, - { 15, "E.164 with NSAP format subaddress"}, - { 16, "DNS (Domain Name System)"}, - { 17, "Distinguished Name"}, - { 18, "AS Number"}, - { 19, "XTP over IP version 4"}, - { 20, "XTP over IP version 6"}, - { 21, "XTP native mode XTP"}, - { 22, "Fibre Channel World-Wide Port Name"}, - { 23, "Fibre Channel World-Wide Node Name"}, - { 24, "GWID"}, - { 0, NULL} -}; - const value_string interface_subtype_values[] = { { 1, "Unknown"}, { 2, "ifIndex"}, @@ -603,7 +549,7 @@ dissect_lldp_chassis_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gui addr_family = tvb_get_guint8(tvb,offset+3); /* Check for IPv4 or IPv6 */ switch(addr_family){ - case IANA_ADDR_FAMILY_IP4: + case AFNUM_INET: if (tempLen == 6){ ip_addr = tvb_get_ipv4(tvb, (offset+4)); strPtr = ip_to_str((guint8 *)&ip_addr); @@ -611,7 +557,7 @@ dissect_lldp_chassis_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gui incorrectLen = 1; /* Invalid length */ } break; - case IANA_ADDR_FAMILY_IP6: + case AFNUM_INET6: if (tempLen == 18){ tvb_get_ipv6(tvb, (offset+4), &ip6_addr); strPtr = ip6_to_str(&ip6_addr); @@ -707,10 +653,10 @@ dissect_lldp_chassis_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gui case 5: /* Network address */ proto_tree_add_item(chassis_tree, hf_lldp_network_address_family, tvb, offset+3, 1, FALSE); switch(addr_family){ - case IANA_ADDR_FAMILY_IP4: + case AFNUM_INET: proto_tree_add_ipv4(chassis_tree, hf_chassis_id_ip4, tvb, (offset+4), 4, ip_addr); break; - case IANA_ADDR_FAMILY_IP6: + case AFNUM_INET6: proto_tree_add_ipv6(chassis_tree, hf_chassis_id_ip6, tvb, (offset+4), 16, ip6_addr.bytes); break; default: @@ -778,7 +724,7 @@ dissect_lldp_port_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint3 addr_family = tvb_get_guint8(tvb,offset+3); /* Check for IPv4 or IPv6 */ switch(addr_family){ - case IANA_ADDR_FAMILY_IP4: + case AFNUM_INET: if (tempLen == 6){ ip_addr = tvb_get_ipv4(tvb, (offset+4)); strPtr = ip_to_str((guint8 *)&ip_addr); @@ -786,7 +732,7 @@ dissect_lldp_port_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint3 return -1; } break; - case IANA_ADDR_FAMILY_IP6: + case AFNUM_INET6: if (tempLen == 18){ tvb_get_ipv6(tvb, (offset+4), &ip6_addr); strPtr = ip6_to_str(&ip6_addr); @@ -839,10 +785,10 @@ dissect_lldp_port_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint3 /* Network address family */ proto_tree_add_item(port_tree, hf_lldp_network_address_family, tvb, offset+3, 1, FALSE); switch(addr_family){ - case IANA_ADDR_FAMILY_IP4: + case AFNUM_INET: proto_tree_add_ipv4(port_tree, hf_port_id_ip4, tvb, (offset+4), 4, ip_addr); break; - case IANA_ADDR_FAMILY_IP6: + case AFNUM_INET6: proto_tree_add_ipv6(port_tree, hf_port_id_ip6, tvb, (offset+4), 16, ip6_addr.bytes); break; default: @@ -1159,7 +1105,7 @@ dissect_lldp_management_address(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre /* Get management address subtype */ tempByte = tvb_get_guint8(tvb, tempOffset); proto_tree_add_text(system_mgm_addr, tvb, tempOffset, 1, "Address Subtype: %s (%u)", - val_to_str(tempByte, management_addr_values, "Undefined"), + val_to_str(tempByte, afn_vals, "Undefined"), tempByte); tempOffset++; @@ -2453,7 +2399,7 @@ proto_register_lldp(void) }, { &hf_lldp_network_address_family, { "Network Address family", "lldp.network_address.subtype", FT_UINT8, BASE_DEC, - VALS(management_addr_values), 0, "Network Address family", HFILL } + VALS(afn_vals), 0, "Network Address family", HFILL } }, { &hf_port_id_ip4, { "Port Id", "lldp.port.id.ip4", FT_IPv4, BASE_NONE, |