diff options
author | Nicolás Alvarez <nicolas.alvarez@gmail.com> | 2021-06-05 20:54:29 -0300 |
---|---|---|
committer | Wireshark GitLab Utility <gerald+gitlab-utility@wireshark.org> | 2021-06-09 13:58:44 +0000 |
commit | 391c4ef517d97c8c178616cf8e52478951ddbd9e (patch) | |
tree | 3aba93edeeb3f321fc7d067eec7f2b51932d0084 /epan/dissectors/packet-diameter.c | |
parent | a948542b56a1208392b6e419f7ec40971175fc63 (diff) |
Remove unnecessary null check in diameter dissector
dissect_diameter_mip6_feature_vector is checking whether the data argument
(assigned to diam_sub_dis_inf) is null, but later dereferences it outside
the conditional, so if it was null it would crash anyway. It doesn't seem
possible for the data argument to actually be null, so this commit removes
the redundant check. I'm also adding an assert to document the non-null
assumption.
Bug found by clang static analyzer.
Fixes #17427.
Diffstat (limited to 'epan/dissectors/packet-diameter.c')
-rw-r--r-- | epan/dissectors/packet-diameter.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/epan/dissectors/packet-diameter.c b/epan/dissectors/packet-diameter.c index 60ad9681a7..ac41996628 100644 --- a/epan/dissectors/packet-diameter.c +++ b/epan/dissectors/packet-diameter.c @@ -601,10 +601,9 @@ dissect_diameter_mip6_feature_vector(tvbuff_t *tvb, packet_info *pinfo _U_, prot guint32 application_id = 0; diam_sub_dis_t *diam_sub_dis_inf = (diam_sub_dis_t*)data; + DISSECTOR_ASSERT(diam_sub_dis_inf); - if(diam_sub_dis_inf) { - application_id = diam_sub_dis_inf->application_id; - } + application_id = diam_sub_dis_inf->application_id; /* Hide the item created in packet-diameter.c and only show the one created here */ proto_item_set_hidden(diam_sub_dis_inf->item); |