aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-atm.c
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2016-01-15 16:14:12 +0100
committerPascal Quantin <pascal.quantin@gmail.com>2016-01-15 19:58:52 +0000
commita9e126a617d46af80be7e8b258c5ddfcb82a5637 (patch)
treebc9fcd7f7293a458e9ad5c41d65f96900fa8a295 /epan/dissectors/packet-atm.c
parentbebb63bea9cf58665a31c78abcbbe82658b1e49d (diff)
ATM: do not try to dissect if pseudo header is not present
Bug: 12013 Change-Id: If753fcdbb01d646fc4db43485549e8c6f668eced Reviewed-on: https://code.wireshark.org/review/13311 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-atm.c')
-rw-r--r--epan/dissectors/packet-atm.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/epan/dissectors/packet-atm.c b/epan/dissectors/packet-atm.c
index 381bd0dd93..c60bda7dbb 100644
--- a/epan/dissectors/packet-atm.c
+++ b/epan/dissectors/packet-atm.c
@@ -1644,6 +1644,10 @@ dissect_atm_truncated(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void
{
struct atm_phdr *atm_info = (struct atm_phdr *)data;
+ if (!atm_info) {
+ return 0;
+ }
+
return dissect_atm_common(tvb, pinfo, tree, TRUE, atm_info, FALSE);
}
@@ -1652,6 +1656,10 @@ dissect_atm_pw_truncated(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, vo
{
struct atm_phdr *atm_info = (struct atm_phdr *)data;
+ if (!atm_info) {
+ return 0;
+ }
+
return dissect_atm_common(tvb, pinfo, tree, TRUE, atm_info, TRUE);
}
@@ -1660,6 +1668,10 @@ dissect_atm_untruncated(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, voi
{
struct atm_phdr *atm_info = (struct atm_phdr *)data;
+ if (!atm_info) {
+ return 0;
+ }
+
return dissect_atm_common(tvb, pinfo, tree, FALSE, atm_info, FALSE);
}
@@ -1668,6 +1680,10 @@ dissect_atm_pw_untruncated(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
{
struct atm_phdr *atm_info = (struct atm_phdr *)data;
+ if (!atm_info) {
+ return 0;
+ }
+
return dissect_atm_common(tvb, pinfo, tree, FALSE, atm_info, TRUE);
}