diff options
author | Guy Harris <guy@alum.mit.edu> | 2003-02-04 20:17:01 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2003-02-04 20:17:01 +0000 |
commit | 625d0088d424c53f2308652383f5d132133bcb48 (patch) | |
tree | e3371104722ddbc2caf0cb00f13259aee31edc0e /packet-icmpv6.c | |
parent | e2d77c29113420b5ec4b200bd30ddd356d3a2c46 (diff) | |
download | wireshark-625d0088d424c53f2308652383f5d132133bcb48.tar.gz wireshark-625d0088d424c53f2308652383f5d132133bcb48.tar.bz2 wireshark-625d0088d424c53f2308652383f5d132133bcb48.zip |
From Teemu Rinta-aho: draft 20 MIPv6 support (now in a file of its own).
svn path=/trunk/; revision=7071
Diffstat (limited to 'packet-icmpv6.c')
-rw-r--r-- | packet-icmpv6.c | 69 |
1 files changed, 68 insertions, 1 deletions
diff --git a/packet-icmpv6.c b/packet-icmpv6.c index 2fa4fd8615..9225b82e8f 100644 --- a/packet-icmpv6.c +++ b/packet-icmpv6.c @@ -1,7 +1,7 @@ /* packet-icmpv6.c * Routines for ICMPv6 packet disassembly * - * $Id: packet-icmpv6.c,v 1.69 2003/01/20 05:42:30 guy Exp $ + * $Id: packet-icmpv6.c,v 1.70 2003/02/04 20:16:57 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -1098,6 +1098,26 @@ dissect_icmpv6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) "Unknown"); len = sizeof(struct icmp6_nodeinfo); break; + case ICMP6_MIP6_DHAAD_REQUEST: + typename = coltypename = "Dynamic Home Agent Address Discovery Request"; + codename = "Should always be zero"; + colcodename = NULL; + break; + case ICMP6_MIP6_DHAAD_REPLY: + typename = coltypename = "Dynamic Home Agent Address Discovery Reply"; + codename = "Should always be zero"; + colcodename = NULL; + break; + case ICMP6_MIP6_MPS: + typename = coltypename = "Mobile Prefix Solicitation"; + codename = "Should always be zero"; + colcodename = NULL; + break; + case ICMP6_MIP6_MPA: + typename = coltypename = "Mobile Prefix Advertisement"; + codename = "Should always be zero"; + colcodename = NULL; + break; } if (check_col(pinfo->cinfo, COL_INFO)) { @@ -1368,6 +1388,53 @@ dissect_icmpv6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) "Unknown")); dissect_nodeinfo(tvb, offset, pinfo, icmp6_tree); break; + case ICMP6_MIP6_DHAAD_REQUEST: + proto_tree_add_text(icmp6_tree, tvb, + offset + 4, 2, "Identifier: %d (0x%02x)", + tvb_get_ntohs(tvb, offset + 4), + tvb_get_ntohs(tvb, offset + 4)); + proto_tree_add_text(icmp6_tree, tvb, + offset + 6, 2, "Reserved: %d", + tvb_get_ntohs(tvb, offset + 6)); + break; + case ICMP6_MIP6_DHAAD_REPLY: + proto_tree_add_text(icmp6_tree, tvb, + offset + 4, 2, "Identifier: %d (0x%02x)", + tvb_get_ntohs(tvb, offset + 4), + tvb_get_ntohs(tvb, offset + 4)); + proto_tree_add_text(icmp6_tree, tvb, + offset + 6, 2, "Reserved: %d", + tvb_get_ntohs(tvb, offset + 6)); + /* TODO Show all Home Agent Addresses */ + break; + case ICMP6_MIP6_MPS: + proto_tree_add_text(icmp6_tree, tvb, + offset + 4, 2, "Identifier: %d (0x%02x)", + tvb_get_ntohs(tvb, offset + 4), + tvb_get_ntohs(tvb, offset + 4)); + proto_tree_add_text(icmp6_tree, tvb, + offset + 6, 2, "Reserved: %d", + tvb_get_ntohs(tvb, offset + 6)); + break; + case ICMP6_MIP6_MPA: + proto_tree_add_text(icmp6_tree, tvb, + offset + 4, 2, "Identifier: %d (0x%02x)", + tvb_get_ntohs(tvb, offset + 4), + tvb_get_ntohs(tvb, offset + 4)); + proto_tree_add_text(icmp6_tree, tvb, + offset + 6, 2, + decode_boolean_bitfield(tvb_get_guint8(tvb, offset + 6), + 0x8000, 16, + "Managed Address Configuration", + "No Managed Address Configuration")); + proto_tree_add_text(icmp6_tree, tvb, + offset + 6, 2, + decode_boolean_bitfield(tvb_get_guint8(tvb, offset + 6), + 0x4000, 16, + "Other Stateful Configuration", + "No Other Stateful Configuration")); + /* TODO Show all options */ + break; default: next_tvb = tvb_new_subset(tvb, offset + sizeof(*dp), -1, -1); call_dissector(data_handle,next_tvb, pinfo, tree); |