aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-wsmp.c
diff options
context:
space:
mode:
authorChristophe GUERBER <christophe.guerber@gmail.com>2018-12-30 15:40:29 +0100
committerAnders Broman <a.broman58@gmail.com>2019-01-01 18:37:38 +0000
commite9cf698512097f4c7c939decc49b3934f817ec65 (patch)
tree312f32ff6ee0f68508f23357675cef299bf467ff /epan/dissectors/packet-wsmp.c
parentc25dbfa8a7fc5c314d414e64d2b9eef5ff7378d9 (diff)
Use dissector table to dissect content of ieee1609
For unsecured and signed data, the dissector uses a dissector table to determine the next dissector. It uses the psId field to index the table. In the case no psId is provided inside, the caller can set a default psid if it is provided beforehand. If none is provided, data are not dissected. Change-Id: I6f9d6989cd87dd373a155a5b893c460344a0c857 Reviewed-on: https://code.wireshark.org/review/31237 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-wsmp.c')
-rw-r--r--epan/dissectors/packet-wsmp.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/epan/dissectors/packet-wsmp.c b/epan/dissectors/packet-wsmp.c
index 0e6aad3a09..3a1d0030c1 100644
--- a/epan/dissectors/packet-wsmp.c
+++ b/epan/dissectors/packet-wsmp.c
@@ -291,9 +291,11 @@ dissect_wsmp_v3(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint8 oct)
data_tree = proto_tree_add_subtree(tree, tvb, offset, wsm_len, ett_wsmdata, NULL, "Wave Short Message");
if((psid == (guint32)psid_vehicle_to_vehicle_safety_and_awarenesss) && (IEEE1609dot2_handle)){
+ ieee1609dot2_set_next_default_psid(pinfo, psid);
tvbuff_t * tvb_new = tvb_new_subset_remaining(tvb, offset);
call_dissector(IEEE1609dot2_handle, tvb_new, pinfo, data_tree);
} else if ((psid == (guint32)psid_intersection_safety_and_awareness) && (IEEE1609dot2_handle)) {
+ ieee1609dot2_set_next_default_psid(pinfo, psid);
tvbuff_t * tvb_new = tvb_new_subset_remaining(tvb, offset);
call_dissector(IEEE1609dot2_handle, tvb_new, pinfo, data_tree);
}