aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-dns.c
diff options
context:
space:
mode:
authorAlexis La Goutte <alexis.lagoutte@gmail.com>2017-08-08 00:01:39 +0200
committerMichael Mann <mmann78@netscape.net>2017-08-07 23:23:26 +0000
commitf5332121ef787684093ed46fd2e01c754c4ef946 (patch)
tree2b0419a06165cb7fabbf32b5eba85c6bab8e5cd7 /epan/dissectors/packet-dns.c
parent1089bdb7d4911a5508f86a0eea59418b424b265c (diff)
XFP: use switch for adress_family
Change-Id: Id0f9fd6d49669f5d4606448788658e5a8ed89f8d Reviewed-on: https://code.wireshark.org/review/23003 Reviewed-by: Michael Mann <mmann78@netscape.net>
Diffstat (limited to 'epan/dissectors/packet-dns.c')
-rw-r--r--epan/dissectors/packet-dns.c50
1 files changed, 27 insertions, 23 deletions
diff --git a/epan/dissectors/packet-dns.c b/epan/dissectors/packet-dns.c
index cab68e774b..440f2a043b 100644
--- a/epan/dissectors/packet-dns.c
+++ b/epan/dissectors/packet-dns.c
@@ -3550,29 +3550,33 @@ dissect_dns_answer(tvbuff_t *tvb, int offsetx, int dns_data_offset,
proto_tree_add_item_ret_uint(rr_tree, hf_dns_xpf_ip_version, tvb, cur_offset, 1, ENC_BIG_ENDIAN, &address_family);
cur_offset++;
- if(address_family == IP_VERSION_NUM_INET){
- proto_tree_add_item(rr_tree, hf_dns_xpf_protocol, tvb, cur_offset, 1, ENC_BIG_ENDIAN);
- cur_offset++;
- proto_tree_add_item(rr_tree, hf_dns_xpf_source_ipv4, tvb, cur_offset, 4, ENC_BIG_ENDIAN);
- cur_offset += 4;
- proto_tree_add_item(rr_tree, hf_dns_xpf_destination_ipv4, tvb, cur_offset, 4, ENC_BIG_ENDIAN);
- cur_offset += 4;
- proto_tree_add_item(rr_tree, hf_dns_xpf_sport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
- cur_offset += 2;
- proto_tree_add_item(rr_tree, hf_dns_xpf_dport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
- cur_offset += 2;
- }
- if(address_family == IP_VERSION_NUM_INET6){
- proto_tree_add_item(rr_tree, hf_dns_xpf_protocol, tvb, cur_offset, 1, ENC_BIG_ENDIAN);
- cur_offset++;
- proto_tree_add_item(rr_tree, hf_dns_xpf_source_ipv6, tvb, cur_offset, 16, ENC_NA);
- cur_offset += 16;
- proto_tree_add_item(rr_tree, hf_dns_xpf_destination_ipv6, tvb, cur_offset, 16, ENC_NA);
- cur_offset += 16;
- proto_tree_add_item(rr_tree, hf_dns_xpf_sport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
- cur_offset += 2;
- proto_tree_add_item(rr_tree, hf_dns_xpf_dport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
- cur_offset += 2;
+ switch (address_family) {
+ case IP_VERSION_NUM_INET:
+ proto_tree_add_item(rr_tree, hf_dns_xpf_protocol, tvb, cur_offset, 1, ENC_BIG_ENDIAN);
+ cur_offset++;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_source_ipv4, tvb, cur_offset, 4, ENC_BIG_ENDIAN);
+ cur_offset += 4;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_destination_ipv4, tvb, cur_offset, 4, ENC_BIG_ENDIAN);
+ cur_offset += 4;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_sport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
+ cur_offset += 2;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_dport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
+ cur_offset += 2;
+ break;
+ case IP_VERSION_NUM_INET6:
+ proto_tree_add_item(rr_tree, hf_dns_xpf_protocol, tvb, cur_offset, 1, ENC_BIG_ENDIAN);
+ cur_offset++;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_source_ipv6, tvb, cur_offset, 16, ENC_NA);
+ cur_offset += 16;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_destination_ipv6, tvb, cur_offset, 16, ENC_NA);
+ cur_offset += 16;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_sport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
+ cur_offset += 2;
+ proto_tree_add_item(rr_tree, hf_dns_xpf_dport, tvb, cur_offset, 2, ENC_BIG_ENDIAN);;
+ cur_offset += 2;
+ break;
+ default: /* Add Expert info ? */
+ break;
}
}