diff options
author | Michael Mann <mmann78@netscape.net> | 2014-11-22 20:47:59 -0500 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2014-11-25 15:18:05 +0000 |
commit | e3a04bb392824781b8a3ef6ec98a37ef96c6c827 (patch) | |
tree | c51c48f12e302c76bc2c1619d24b9787384db261 /epan/dissectors/packet-sip.c | |
parent | 7f22ce7f6610333f4b40dfad6cde22e352abae6f (diff) |
Ensure dissector data parameter is used instead of pinfo->private_data when passing data between dissectors using the "media_type" subdissector.
Change-Id: I82cbfed770b41404bc42cb6a4413db07d04dffdc
Reviewed-on: https://code.wireshark.org/review/5462
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-sip.c')
-rw-r--r-- | epan/dissectors/packet-sip.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/epan/dissectors/packet-sip.c b/epan/dissectors/packet-sip.c index d559c4f1a4..8e26934266 100644 --- a/epan/dissectors/packet-sip.c +++ b/epan/dissectors/packet-sip.c @@ -3727,9 +3727,6 @@ dissect_sip_common(tvbuff_t *tvb, int offset, int remaining_length, packet_info /* give the content type parameters to sub dissectors */ if ( media_type_str_lower_case != NULL ) { - void *save_private_data = pinfo->private_data; - pinfo->private_data = content_type_parameter_str; - /* SDP needs a transport layer to determine request/response */ if (!strcmp(media_type_str_lower_case, "application/sdp")) { /* Resends don't count */ @@ -3777,7 +3774,7 @@ dissect_sip_common(tvbuff_t *tvb, int offset, int remaining_length, packet_info found_match = dissector_try_string(media_type_dissector_table, media_type_str_lower_case, next_tvb, pinfo, - message_body_tree, NULL); + message_body_tree, content_type_parameter_str); DENDENT(); DPRINT(("done calling dissector_try_string() with found_match=%s", found_match?"TRUE":"FALSE")); @@ -3790,12 +3787,11 @@ dissect_sip_common(tvbuff_t *tvb, int offset, int remaining_length, packet_info found_match = dissector_try_string(media_type_dissector_table, "multipart/", next_tvb, pinfo, - message_body_tree, NULL); + message_body_tree, content_type_parameter_str); DENDENT(); DPRINT(("done calling dissector_try_string() with found_match=%s", found_match?"TRUE":"FALSE")); } - pinfo->private_data = save_private_data; /* If no match dump as text */ } if ( found_match != TRUE ) |