diff options
author | Guy Harris <guy@alum.mit.edu> | 1999-11-27 07:46:44 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 1999-11-27 07:46:44 +0000 |
commit | 73ef3d4490de4098dd48ed5013add43e8dec0fe7 (patch) | |
tree | ec5ed336fad0eea8f8089dfedc71f464a933f95b /packet-dns.c | |
parent | 8089383761b7e96ade6762b906d65d1f6d91433d (diff) | |
download | wireshark-73ef3d4490de4098dd48ed5013add43e8dec0fe7.tar.gz wireshark-73ef3d4490de4098dd48ed5013add43e8dec0fe7.tar.bz2 wireshark-73ef3d4490de4098dd48ed5013add43e8dec0fe7.zip |
Dissect AAAA resource records.
svn path=/trunk/; revision=1127
Diffstat (limited to 'packet-dns.c')
-rw-r--r-- | packet-dns.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/packet-dns.c b/packet-dns.c index a50e54b646..70dad3e3fc 100644 --- a/packet-dns.c +++ b/packet-dns.c @@ -1,7 +1,7 @@ /* packet-dns.c * Routines for DNS packet disassembly * - * $Id: packet-dns.c,v 1.29 1999/11/16 11:42:28 guy Exp $ + * $Id: packet-dns.c,v 1.30 1999/11/27 07:46:44 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@zing.org> @@ -900,7 +900,28 @@ dissect_dns_answer(const u_char *pd, int offset, int dns_data_offset, } } break; - + + case T_AAAA: + if (fd != NULL) { + col_append_fstr(fd, COL_INFO, " %s %s", type_name, + ip6_to_str((struct e_in6_addr *)dptr)); + } + if (dns_tree != NULL) { + trr = proto_tree_add_text(dns_tree, offset, (dptr - data_start) + data_len, + "%s: type %s, class %s, addr %s", + name, type_name, class_name, + ip6_to_str((struct e_in6_addr *)dptr)); + rr_tree = add_rr_to_tree(trr, ett_dns_rr, offset, name, name_len, + long_type_name, class_name, ttl, data_len); + if (!BYTES_ARE_IN_FRAME(cur_offset, 16)) { + /* We ran past the end of the captured data in the packet. */ + return 0; + } + proto_tree_add_text(rr_tree, cur_offset, 16, "Addr: %s", + ip6_to_str((struct e_in6_addr *)dptr)); + } + break; + case T_LOC: { if (fd != NULL) |