From 2a3473820da5834b7d3732a3c6e314245839a673 Mon Sep 17 00:00:00 2001 From: Martin Kaiser Date: Sun, 19 Mar 2017 20:45:20 +0100 Subject: eth: remove unnecessary NULL checks We may safely call proto_item_add_subtree() when the item is NULL. Make sure that expert info are not filtered out by a NULL check. Change-Id: I4516cd750c9b0b568c8de9adaad757d0ea769ad6 Reviewed-on: https://code.wireshark.org/review/20639 Petri-Dish: Michael Mann Tested-by: Petri Dish Buildbot Reviewed-by: Michael Mann --- epan/dissectors/packet-eth.c | 36 +++++++++++++----------------------- 1 file changed, 13 insertions(+), 23 deletions(-) (limited to 'epan/dissectors/packet-eth.c') diff --git a/epan/dissectors/packet-eth.c b/epan/dissectors/packet-eth.c index 1159e2289a..30cfc9f64c 100644 --- a/epan/dissectors/packet-eth.c +++ b/epan/dissectors/packet-eth.c @@ -384,8 +384,7 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, address_with_resolution_to_str(wmem_packet_scope(), &pinfo->dst)); fh_tree = proto_item_add_subtree(ti, ett_ether); addr_item = proto_tree_add_ether(fh_tree, hf_eth_dst, tvb, 0, 6, dst_addr); - if (addr_item) - addr_tree = proto_item_add_subtree(addr_item, ett_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); addr_item=proto_tree_add_string(addr_tree, hf_eth_dst_resolved, tvb, 0, 6, dst_addr_name); PROTO_ITEM_SET_GENERATED(addr_item); @@ -399,8 +398,7 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, proto_tree_add_item(addr_tree, hf_eth_ig, tvb, 0, 3, ENC_BIG_ENDIAN); addr_item = proto_tree_add_ether(fh_tree, hf_eth_src, tvb, 6, 6, src_addr); - if (addr_item) - addr_tree = proto_item_add_subtree(addr_item, ett_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); addr_item=proto_tree_add_string(addr_tree, hf_eth_src_resolved, tvb, 6, 6, src_addr_name); PROTO_ITEM_SET_GENERATED(addr_item); @@ -443,10 +441,8 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, fh_tree=NULL; } - addr_item=proto_tree_add_ether(fh_tree, hf_eth_dst, tvb, 0, 6, dst_addr); - if(addr_item){ - addr_tree = proto_item_add_subtree(addr_item, ett_addr); - } + addr_item = proto_tree_add_ether(fh_tree, hf_eth_dst, tvb, 0, 6, dst_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); addr_item=proto_tree_add_string(addr_tree, hf_eth_dst_resolved, tvb, 0, 6, dst_addr_name); PROTO_ITEM_SET_GENERATED(addr_item); @@ -459,10 +455,8 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, proto_tree_add_item(addr_tree, hf_eth_lg, tvb, 0, 3, ENC_BIG_ENDIAN); proto_tree_add_item(addr_tree, hf_eth_ig, tvb, 0, 3, ENC_BIG_ENDIAN); - addr_item=proto_tree_add_ether(fh_tree, hf_eth_src, tvb, 6, 6, src_addr); - if(addr_item){ - addr_tree = proto_item_add_subtree(addr_item, ett_addr); - } + addr_item = proto_tree_add_ether(fh_tree, hf_eth_src, tvb, 6, 6, src_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); addr_item=proto_tree_add_string(addr_tree, hf_eth_src_resolved, tvb, 6, 6, src_addr_name); PROTO_ITEM_SET_GENERATED(addr_item); @@ -500,11 +494,9 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, fh_tree = proto_item_add_subtree(ti, ett_ether2); } - addr_item=proto_tree_add_ether(fh_tree, hf_eth_dst, tvb, 0, 6, dst_addr); - if(addr_item){ - addr_tree = proto_item_add_subtree(addr_item, ett_addr); - } - addr_item=proto_tree_add_string(addr_tree, hf_eth_dst_resolved, tvb, 0, 6, + addr_item = proto_tree_add_ether(fh_tree, hf_eth_dst, tvb, 0, 6, dst_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); + addr_item = proto_tree_add_string(addr_tree, hf_eth_dst_resolved, tvb, 0, 6, dst_addr_name); PROTO_ITEM_SET_GENERATED(addr_item); PROTO_ITEM_SET_HIDDEN(addr_item); @@ -516,12 +508,10 @@ dissect_eth_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, proto_tree_add_item(addr_tree, hf_eth_lg, tvb, 0, 3, ENC_BIG_ENDIAN); proto_tree_add_item(addr_tree, hf_eth_ig, tvb, 0, 3, ENC_BIG_ENDIAN); - addr_item=proto_tree_add_ether(fh_tree, hf_eth_src, tvb, 6, 6, src_addr); - if(addr_item){ - addr_tree = proto_item_add_subtree(addr_item, ett_addr); - if (tvb_get_guint8(tvb, 6) & 0x01) { - expert_add_info(pinfo, addr_item, &ei_eth_src_not_group); - } + addr_item = proto_tree_add_ether(fh_tree, hf_eth_src, tvb, 6, 6, src_addr); + addr_tree = proto_item_add_subtree(addr_item, ett_addr); + if (tvb_get_guint8(tvb, 6) & 0x01) { + expert_add_info(pinfo, addr_item, &ei_eth_src_not_group); } addr_item=proto_tree_add_string(addr_tree, hf_eth_src_resolved, tvb, 6, 6, src_addr_name); -- cgit v1.2.3