summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Mann <mmann78@netscape.net>2013-11-19 01:07:28 +0000
committerMichael Mann <mmann78@netscape.net>2013-11-19 01:07:28 +0000
commitbfcc63972eaec585105f169927ffe23def39ae2c (patch)
treec68ea375d08a53ad56e0e5e8cae5bd99381b5d8e
parentd766ab65603c5ee5b0a5458de8226a5285253094 (diff)
downloadwireshark-bfcc63972eaec585105f169927ffe23def39ae2c.tar.gz
Remove ppid member from packet_info structure and just pass it to SCTP subdissectors. There are no subdissectors currently in Wireshark source that use the ppid member so any third party dissectors need to update accordingly.
svn path=/trunk/; revision=53424
-rw-r--r--epan/dissectors/packet-sctp.c12
-rw-r--r--epan/packet_info.h1
2 files changed, 5 insertions, 8 deletions
diff --git a/epan/dissectors/packet-sctp.c b/epan/dissectors/packet-sctp.c
index 0a998425fa..14fe5667ab 100644
--- a/epan/dissectors/packet-sctp.c
+++ b/epan/dissectors/packet-sctp.c
@@ -2049,12 +2049,10 @@ dissect_payload(tvbuff_t *payload_tvb, packet_info *pinfo, proto_tree *tree, gui
{
guint32 low_port, high_port;
- pinfo->ppid = ppi;
-
if (enable_ulp_dissection) {
if (try_heuristic_first) {
/* do lookup with the heuristic subdissector table */
- if (dissector_try_heuristic(sctp_heur_subdissector_list, payload_tvb, pinfo, tree, NULL))
+ if (dissector_try_heuristic(sctp_heur_subdissector_list, payload_tvb, pinfo, tree, GUINT_TO_POINTER(ppi)))
return TRUE;
}
@@ -2075,7 +2073,7 @@ dissect_payload(tvbuff_t *payload_tvb, packet_info *pinfo, proto_tree *tree, gui
XXX - we ignore port numbers of 0, as some dissectors use a port
number of 0 to disable the port. */
- if (dissector_try_uint(sctp_ppi_dissector_table, ppi, payload_tvb, pinfo, tree))
+ if (dissector_try_uint_new(sctp_ppi_dissector_table, ppi, payload_tvb, pinfo, tree, TRUE, GUINT_TO_POINTER(ppi)))
return TRUE;
if (pinfo->srcport > pinfo->destport) {
low_port = pinfo->destport;
@@ -2085,15 +2083,15 @@ dissect_payload(tvbuff_t *payload_tvb, packet_info *pinfo, proto_tree *tree, gui
high_port = pinfo->destport;
}
if (low_port != 0 &&
- dissector_try_uint(sctp_port_dissector_table, low_port, payload_tvb, pinfo, tree))
+ dissector_try_uint_new(sctp_port_dissector_table, low_port, payload_tvb, pinfo, tree, TRUE, GUINT_TO_POINTER(ppi)))
return TRUE;
if (high_port != 0 &&
- dissector_try_uint(sctp_port_dissector_table, high_port, payload_tvb, pinfo, tree))
+ dissector_try_uint_new(sctp_port_dissector_table, high_port, payload_tvb, pinfo, tree, TRUE, GUINT_TO_POINTER(ppi)))
return TRUE;
if (!try_heuristic_first) {
/* do lookup with the heuristic subdissector table */
- if (dissector_try_heuristic(sctp_heur_subdissector_list, payload_tvb, pinfo, tree, NULL))
+ if (dissector_try_heuristic(sctp_heur_subdissector_list, payload_tvb, pinfo, tree, GUINT_TO_POINTER(ppi)))
return TRUE;
}
}
diff --git a/epan/packet_info.h b/epan/packet_info.h
index b4d48cb568..d928ffb766 100644
--- a/epan/packet_info.h
+++ b/epan/packet_info.h
@@ -176,7 +176,6 @@ typedef struct _packet_info {
tvbuff_t *gssapi_decrypted_tvb;
gboolean gssapi_data_encrypted;
- guint32 ppid; /**< SCTP PPI of current DATA chunk */
/** This is a valid PPID, but we use it to mark the end of the list */
#define LAST_PPID 0xffffffff
guint32 ppids[MAX_NUMBER_OF_PPIDS]; /**< The first NUMBER_OF_PPIDS PPIDS which are present