aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--epan/dissectors/packet-6lowpan.c44
-rw-r--r--epan/dissectors/packet-atalk.c2
-rw-r--r--epan/dissectors/packet-bacapp.c2
-rw-r--r--epan/dissectors/packet-batadv.c2
-rw-r--r--epan/dissectors/packet-ber.c2
-rw-r--r--epan/dissectors/packet-btobex.c2
-rw-r--r--epan/dissectors/packet-capwap.c4
-rw-r--r--epan/dissectors/packet-cell_broadcast.c2
-rw-r--r--epan/dissectors/packet-clnp.c2
-rw-r--r--epan/dissectors/packet-dcerpc.c2
-rw-r--r--epan/dissectors/packet-dcm.c2
-rw-r--r--epan/dissectors/packet-dcp-etsi.c2
-rw-r--r--epan/dissectors/packet-dnp.c12
-rw-r--r--epan/dissectors/packet-dtls.c2
-rw-r--r--epan/dissectors/packet-dtn.c2
-rw-r--r--epan/dissectors/packet-dvbci.c6
-rw-r--r--epan/dissectors/packet-eap.c2
-rw-r--r--epan/dissectors/packet-gsm_cbch.c2
-rw-r--r--epan/dissectors/packet-gsm_sms.c2
-rw-r--r--epan/dissectors/packet-gsm_sms_ud.c2
-rw-r--r--epan/dissectors/packet-gssapi.c2
-rw-r--r--epan/dissectors/packet-h223.c4
-rw-r--r--epan/dissectors/packet-iax2.c2
-rw-r--r--epan/dissectors/packet-idmp.c2
-rw-r--r--epan/dissectors/packet-ieee80211.c6
-rw-r--r--epan/dissectors/packet-ip.c10
-rw-r--r--epan/dissectors/packet-ipv6.c6
-rw-r--r--epan/dissectors/packet-isakmp.c2
-rw-r--r--epan/dissectors/packet-isup.c2
-rw-r--r--epan/dissectors/packet-lapdm.c2
-rw-r--r--epan/dissectors/packet-lapsat.c2
-rw-r--r--epan/dissectors/packet-ltp.c2
-rw-r--r--epan/dissectors/packet-mp2t.c2
-rw-r--r--epan/dissectors/packet-mux27010.c2
-rw-r--r--epan/dissectors/packet-ncp2222.inc2
-rw-r--r--epan/dissectors/packet-ndmp.c2
-rw-r--r--epan/dissectors/packet-ndps.c2
-rw-r--r--epan/dissectors/packet-netbios.c2
-rw-r--r--epan/dissectors/packet-ositp.c2
-rw-r--r--epan/dissectors/packet-p_mul.c2
-rw-r--r--epan/dissectors/packet-pop.c2
-rw-r--r--epan/dissectors/packet-q931.c2
-rw-r--r--epan/dissectors/packet-reload.c2
-rw-r--r--epan/dissectors/packet-rpc.c2
-rw-r--r--epan/dissectors/packet-rtp.c4
-rw-r--r--epan/dissectors/packet-rtse.c30
-rw-r--r--epan/dissectors/packet-sccp.c2
-rw-r--r--epan/dissectors/packet-scsi.c6
-rw-r--r--epan/dissectors/packet-ses.c2
-rw-r--r--epan/dissectors/packet-smb-pipe.c2
-rw-r--r--epan/dissectors/packet-smb.c2
-rw-r--r--epan/dissectors/packet-smtp.c8
-rw-r--r--epan/dissectors/packet-sndcp.c2
-rw-r--r--epan/dissectors/packet-ssl.c2
-rw-r--r--epan/dissectors/packet-t38.c36
-rw-r--r--epan/dissectors/packet-tcp.c6
-rw-r--r--epan/dissectors/packet-tds.c4
-rw-r--r--epan/dissectors/packet-teamspeak2.c2
-rw-r--r--epan/dissectors/packet-tipc.c2
-rw-r--r--epan/dissectors/packet-wai.c2
-rw-r--r--epan/dissectors/packet-wtp.c2
-rw-r--r--epan/dissectors/packet-x25.c2
-rw-r--r--epan/dissectors/packet-zbee-aps.c2
-rw-r--r--epan/reassemble.c6
-rw-r--r--epan/reassemble.h40
65 files changed, 241 insertions, 87 deletions
diff --git a/epan/dissectors/packet-6lowpan.c b/epan/dissectors/packet-6lowpan.c
index 8247ae466f..821bae0b4b 100644
--- a/epan/dissectors/packet-6lowpan.c
+++ b/epan/dissectors/packet-6lowpan.c
@@ -407,6 +407,8 @@ static const fragment_items lowpan_frag_items = {
&hf_6lowpan_reassembled_in,
/* Reassembled length field */
&hf_6lowpan_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"6LoWPAN fragments"
};
@@ -496,7 +498,7 @@ static lowpan_context_data *lowpan_context_find(guint8 cid, guint16 pan);
* NAME
* lowpan_pfxcpy
* DESCRIPTION
- * A version of memcpy that takes a length in bits. If the
+ * A version of memcpy that takes a length in bits. If the
* length is not byte-aligned, the final byte will be
* manipulated so that only the desired number of bits are
* copied.
@@ -545,7 +547,7 @@ lowpan_context_hash(gconstpointer key)
* PARAMETERS
* key ; Pointer to a lowpan_context_key type.
* RETURNS
- * gboolean ;
+ * gboolean ;
*---------------------------------------------------------------
*/
static gboolean
@@ -564,7 +566,7 @@ lowpan_context_equal(gconstpointer a, gconstpointer b)
* cid ; Context identifier.
* pan ; PAN identifier.
* RETURNS
- * lowpan_context_data *;
+ * lowpan_context_data *;
*---------------------------------------------------------------
*/
static lowpan_context_data *
@@ -572,23 +574,23 @@ lowpan_context_find(guint8 cid, guint16 pan)
{
lowpan_context_key key;
lowpan_context_data *data;
-
+
/* Check for the internal link-local context. */
if (cid == LOWPAN_CONTEXT_LINK_LOCAL) return &lowpan_context_local;
-
+
/* Lookup the context from the table. */
key.pan = pan;
key.cid = cid;
data = g_hash_table_lookup(lowpan_context_table, &key);
if (data) return data;
-
+
/* If we didn't find a match, try again with the broadcast PAN. */
if (pan != IEEE802154_BCAST_PAN) {
key.pan = IEEE802154_BCAST_PAN;
data = g_hash_table_lookup(lowpan_context_table, &key);
if (data) return data;
}
-
+
/* If the lookup failed, return the default context (::/0) */
return &lowpan_context_default;
} /* lowpan_context_find */
@@ -605,7 +607,7 @@ lowpan_context_find(guint8 cid, guint16 pan)
* prefix ; Compression prefix.
* frame ; Frame number.
* RETURNS
- * void ;
+ * void ;
*---------------------------------------------------------------
*/
void
@@ -615,11 +617,11 @@ lowpan_context_insert(guint8 cid, guint16 pan, guint8 plen, struct e_in6_addr *p
lowpan_context_data *data;
gpointer pkey;
gpointer pdata;
-
+
/* Sanity! */
if (plen > 128) return;
if (!prefix) return;
-
+
/* Search the context table for an existing entry. */
key.pan = pan;
key.cid = cid;
@@ -634,7 +636,7 @@ lowpan_context_insert(guint8 cid, guint16 pan, guint8 plen, struct e_in6_addr *p
else {
pkey = se_memdup(&key, sizeof(key));
}
-
+
/* Create a new context */
data = se_alloc(sizeof(lowpan_context_data));
data->frame = frame;
@@ -689,7 +691,7 @@ static gboolean
lowpan_dlsrc_to_ifcid(packet_info *pinfo, guint8 *ifcid)
{
ieee802154_hints_t *hints;
-
+
/* Check the link-layer address field. */
if (pinfo->dl_src.type == AT_EUI64) {
memcpy(ifcid, pinfo->dl_src.data, LOWPAN_IFC_ID_LEN);
@@ -697,7 +699,7 @@ lowpan_dlsrc_to_ifcid(packet_info *pinfo, guint8 *ifcid)
ifcid[0] ^= 0x02;
return TRUE;
}
-
+
/* Lookup the IEEE 802.15.4 addressing hints. */
hints = (ieee802154_hints_t *)p_get_proto_data(pinfo->fd,
proto_get_id_by_filter_name(IEEE802154_PROTOABBREV_WPAN));
@@ -736,7 +738,7 @@ lowpan_dldst_to_ifcid(packet_info *pinfo, guint8 *ifcid)
ifcid[0] ^= 0x02;
return TRUE;
}
-
+
/* Lookup the IEEE 802.15.4 addressing hints. */
hints = (ieee802154_hints_t *)p_get_proto_data(pinfo->fd,
proto_get_id_by_filter_name(IEEE802154_PROTOABBREV_WPAN));
@@ -1369,7 +1371,7 @@ dissect_6lowpan_iphc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint d
tvbuff_t * ipv6_tvb;
/* Next header chain */
struct lowpan_nhdr *nhdr_list;
-
+
/* Lookup the IEEE 802.15.4 addressing hints. */
hints = (ieee802154_hints_t *)p_get_proto_data(pinfo->fd,
proto_get_id_by_filter_name(IEEE802154_PROTOABBREV_WPAN));
@@ -1431,7 +1433,7 @@ dissect_6lowpan_iphc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint d
/* Lookup the contexts. */
/*
* Don't display their origin until after we decompress the address in case
- * the address modes indicate that we should use a different context.
+ * the address modes indicate that we should use a different context.
*/
sctx = lowpan_context_find(iphc_sci, hint_panid);
dctx = lowpan_context_find(iphc_dci, hint_panid);
@@ -2765,7 +2767,7 @@ proto_register_6lowpan(void)
*/
pref_name = g_strdup_printf("context%d", i);
pref_title = g_strdup_printf("Context %d", i);
- prefs_register_string_preference(prefs_module, pref_name, pref_title,
+ prefs_register_string_preference(prefs_module, pref_name, pref_title,
"IPv6 prefix to use for stateful address decompression.",
&lowpan_context_prefs[i]);
}
@@ -2788,18 +2790,18 @@ proto_init_6lowpan(void)
/* Initialize the fragment reassembly table. */
fragment_table_init(&lowpan_fragment_table);
reassembled_table_init(&lowpan_reassembled_table);
-
+
/* Initialize the context table. */
if (lowpan_context_table)
g_hash_table_destroy(lowpan_context_table);
lowpan_context_table = g_hash_table_new(lowpan_context_hash, lowpan_context_equal);
-
-
+
+
/* Initialize the link-local context. */
lowpan_context_local.frame = 0;
lowpan_context_local.plen = LOWPAN_CONTEXT_LINK_LOCAL_BITS;
memcpy(&lowpan_context_local.prefix, lowpan_llprefix, sizeof(lowpan_llprefix));
-
+
/* Reload static contexts from our preferences. */
prefs_6lowpan_apply();
} /* proto_init_6lowpan */
diff --git a/epan/dissectors/packet-atalk.c b/epan/dissectors/packet-atalk.c
index 7a871fe699..48791a9ca9 100644
--- a/epan/dissectors/packet-atalk.c
+++ b/epan/dissectors/packet-atalk.c
@@ -353,6 +353,8 @@ static const fragment_items atp_frag_items = {
&hf_atp_segment_count,
&hf_atp_reassembled_in,
&hf_atp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-bacapp.c b/epan/dissectors/packet-bacapp.c
index 2445f38345..97d89af8ed 100644
--- a/epan/dissectors/packet-bacapp.c
+++ b/epan/dissectors/packet-bacapp.c
@@ -4698,6 +4698,8 @@ static const fragment_items msg_frag_items = {
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-batadv.c b/epan/dissectors/packet-batadv.c
index 81b1df3e53..3cf7b39358 100644
--- a/epan/dissectors/packet-batadv.c
+++ b/epan/dissectors/packet-batadv.c
@@ -513,6 +513,8 @@ static const fragment_items msg_frag_items = {
/* Reassembled in field */
&hf_msg_reassembled_in,
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-ber.c b/epan/dissectors/packet-ber.c
index 179a513ff4..f695d1aff1 100644
--- a/epan/dissectors/packet-ber.c
+++ b/epan/dissectors/packet-ber.c
@@ -282,6 +282,8 @@ static const fragment_items octet_string_frag_items = {
&hf_ber_reassembled_in,
/* Reassembled length field */
&hf_ber_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"OCTET STRING fragments"
};
diff --git a/epan/dissectors/packet-btobex.c b/epan/dissectors/packet-btobex.c
index 7d40fca593..cef0752029 100644
--- a/epan/dissectors/packet-btobex.c
+++ b/epan/dissectors/packet-btobex.c
@@ -88,6 +88,8 @@ static const fragment_items btobex_frag_items = {
&hf_btobex_fragment_count,
&hf_btobex_reassembled_in,
&hf_btobex_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-capwap.c b/epan/dissectors/packet-capwap.c
index ba9dc6ae7a..96fbdf68f5 100644
--- a/epan/dissectors/packet-capwap.c
+++ b/epan/dissectors/packet-capwap.c
@@ -281,6 +281,8 @@ static const fragment_items capwap_frag_items = {
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
@@ -1375,7 +1377,7 @@ dissect_capwap_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if (global_capwap_reassemble && fragment_is)
{
const int len_rem = tvb_length_remaining(tvb, offset);
- if (len_rem <= 0)
+ if (len_rem <= 0)
return offset;
pinfo->fragmented = TRUE;
diff --git a/epan/dissectors/packet-cell_broadcast.c b/epan/dissectors/packet-cell_broadcast.c
index 95797fb15c..6d38f34d07 100644
--- a/epan/dissectors/packet-cell_broadcast.c
+++ b/epan/dissectors/packet-cell_broadcast.c
@@ -157,6 +157,8 @@ static const fragment_items gsm_page_items = {
&hf_gsm_cbs_page_count,
&hf_gsm_cbs_message_reassembled_in,
&hf_gsm_cbs_message_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"pages"
};
diff --git a/epan/dissectors/packet-clnp.c b/epan/dissectors/packet-clnp.c
index b9d0ec6ca8..66c5bec8d3 100644
--- a/epan/dissectors/packet-clnp.c
+++ b/epan/dissectors/packet-clnp.c
@@ -84,6 +84,8 @@ static const fragment_items clnp_frag_items = {
&hf_clnp_segment_count,
&hf_clnp_reassembled_in,
&hf_clnp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-dcerpc.c b/epan/dissectors/packet-dcerpc.c
index 3ba4d08370..7b9993ed90 100644
--- a/epan/dissectors/packet-dcerpc.c
+++ b/epan/dissectors/packet-dcerpc.c
@@ -610,6 +610,8 @@ static const fragment_items dcerpc_frag_items = {
&hf_dcerpc_fragment_count,
NULL,
&hf_dcerpc_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-dcm.c b/epan/dissectors/packet-dcm.c
index 277bf4d2a9..f6d1f064d1 100644
--- a/epan/dissectors/packet-dcm.c
+++ b/epan/dissectors/packet-dcm.c
@@ -370,6 +370,8 @@ static const fragment_items dcm_pdv_fragment_items = {
&hf_dcm_pdv_fragment_count,
&hf_dcm_pdv_reassembled_in,
&hf_dcm_pdv_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-dcp-etsi.c b/epan/dissectors/packet-dcp-etsi.c
index cacafdaaf3..672316c74b 100644
--- a/epan/dissectors/packet-dcp-etsi.c
+++ b/epan/dissectors/packet-dcp-etsi.c
@@ -122,6 +122,8 @@ static const fragment_items dcp_frag_items = {
&hf_edcp_reassembled_in,
/* Reassembled length field */
&hf_edcp_reassembled_length,
+/* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-dnp.c b/epan/dissectors/packet-dnp.c
index 3134193ef0..e6318b5078 100644
--- a/epan/dissectors/packet-dnp.c
+++ b/epan/dissectors/packet-dnp.c
@@ -1097,6 +1097,8 @@ static const fragment_items dnp3_frag_items = {
&hf_dnp3_fragment_count,
&hf_dnp3_fragment_reassembled_in,
&hf_dnp3_fragment_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"DNP 3.0 fragments"
};
@@ -2237,7 +2239,7 @@ dnp3_al_process_object(tvbuff_t *tvb, packet_info *pinfo, int offset,
proto_tree_add_time(object_tree, hf_dnp3_al_timestamp, tvb, data_pos, 6, &al_abstime);
data_pos += 6;
proto_item_set_len(point_item, data_pos - offset);
-
+
if (al_obj == AL_OBJ_TDCTO) {
/* Copy the time object to the CTO for any other relative time objects in this response */
nstime_copy(al_cto, &al_abstime);
@@ -2489,9 +2491,9 @@ dissect_dnp3_al(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
proto_tree *al_tree = NULL, *field_tree = NULL, *robj_tree = NULL;
const gchar *func_code_str;
nstime_t al_cto;
-
+
nstime_set_zero (&al_cto);
-
+
data_len = tvb_length(tvb);
/* Handle the control byte and function code */
@@ -3545,7 +3547,7 @@ proto_register_dnp3(void)
/* Register the protocol name and description */
proto_dnp3 = proto_register_protocol("Distributed Network Protocol 3.0",
"DNP 3.0", "dnp3");
-
+
/* Register the dissector so it may be used as a User DLT payload protocol */
new_register_dissector("dnp3.udp", dissect_dnp3_udp, proto_dnp3);
@@ -3571,7 +3573,7 @@ proto_reg_handoff_dnp3(void)
/* register as heuristic dissector for both TCP and UDP */
heur_dissector_add("tcp", dissect_dnp3_tcp, proto_dnp3);
heur_dissector_add("udp", dissect_dnp3_udp, proto_dnp3);
-
+
dnp3_tcp_handle = new_create_dissector_handle(dissect_dnp3_tcp, proto_dnp3);
dnp3_udp_handle = new_create_dissector_handle(dissect_dnp3_udp, proto_dnp3);
dissector_add_uint("tcp.port", TCP_PORT_DNP, dnp3_tcp_handle);
diff --git a/epan/dissectors/packet-dtls.c b/epan/dissectors/packet-dtls.c
index bac43f4b74..8893bf99ec 100644
--- a/epan/dissectors/packet-dtls.c
+++ b/epan/dissectors/packet-dtls.c
@@ -206,6 +206,8 @@ static const fragment_items dtls_frag_items = {
&hf_dtls_reassembled_in,
/* Reassembled length field */
&hf_dtls_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-dtn.c b/epan/dissectors/packet-dtn.c
index 3c66a0f572..311fced350 100644
--- a/epan/dissectors/packet-dtn.c
+++ b/epan/dissectors/packet-dtn.c
@@ -301,6 +301,8 @@ static const fragment_items msg_frag_items = {
&hf_msg_reassembled_in,
/*Reassembled length field*/
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/*Tag*/
"Message fragments"
};
diff --git a/epan/dissectors/packet-dvbci.c b/epan/dissectors/packet-dvbci.c
index 04e0c9fcc5..beed125720 100644
--- a/epan/dissectors/packet-dvbci.c
+++ b/epan/dissectors/packet-dvbci.c
@@ -1007,6 +1007,8 @@ static const fragment_items tpdu_frag_items = {
&hf_dvbci_l_reass_in,
&hf_dvbci_l_reass_len,
+ /* Reassembled data field */
+ NULL,
"Tpdu fragments"
};
static const fragment_items spdu_frag_items = {
@@ -1024,6 +1026,8 @@ static const fragment_items spdu_frag_items = {
&hf_dvbci_t_reass_in,
&hf_dvbci_t_reass_len,
+ /* Reassembled data field */
+ NULL,
"Spdu fragments"
};
@@ -1619,7 +1623,7 @@ store_lsc_msg_dissector(circuit_t *circuit, guint8 ip_proto, guint16 port)
circuit_set_dissector(circuit, msg_handle);
}
-
+
/* dissect a connection_descriptor for the lsc resource
returns its length or -1 for error */
static gint
diff --git a/epan/dissectors/packet-eap.c b/epan/dissectors/packet-eap.c
index 727fc4de89..0e5671bb19 100644
--- a/epan/dissectors/packet-eap.c
+++ b/epan/dissectors/packet-eap.c
@@ -354,6 +354,8 @@ static const fragment_items eap_tls_frag_items = {
&hf_eap_tls_fragment_count,
NULL,
&hf_eap_tls_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-gsm_cbch.c b/epan/dissectors/packet-gsm_cbch.c
index faaf262d6c..b91adcba2e 100644
--- a/epan/dissectors/packet-gsm_cbch.c
+++ b/epan/dissectors/packet-gsm_cbch.c
@@ -113,6 +113,8 @@ static const fragment_items cbch_frag_items = {
&hf_cbch_fragment_count,
&hf_cbch_reassembled_in,
&hf_cbch_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"blocks"
};
diff --git a/epan/dissectors/packet-gsm_sms.c b/epan/dissectors/packet-gsm_sms.c
index 8fad3b3487..f9ee8ea7e7 100644
--- a/epan/dissectors/packet-gsm_sms.c
+++ b/epan/dissectors/packet-gsm_sms.c
@@ -230,6 +230,8 @@ static const fragment_items sm_frag_items = {
&hf_gsm_sms_ud_reassembled_in,
/* Reassembled length field */
&hf_gsm_sms_ud_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Short Message fragments"
};
diff --git a/epan/dissectors/packet-gsm_sms_ud.c b/epan/dissectors/packet-gsm_sms_ud.c
index 83d3752cf2..410b6bdebb 100644
--- a/epan/dissectors/packet-gsm_sms_ud.c
+++ b/epan/dissectors/packet-gsm_sms_ud.c
@@ -127,6 +127,8 @@ static const fragment_items sm_frag_items = {
&hf_gsm_sms_ud_reassembled_in,
/* Reassembled length field */
&hf_gsm_sms_ud_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Short Message fragments"
};
diff --git a/epan/dissectors/packet-gssapi.c b/epan/dissectors/packet-gssapi.c
index d10d46b425..1160eec93b 100644
--- a/epan/dissectors/packet-gssapi.c
+++ b/epan/dissectors/packet-gssapi.c
@@ -94,6 +94,8 @@ static const fragment_items gssapi_frag_items = {
&hf_gssapi_segment_count,
NULL,
&hf_gssapi_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-h223.c b/epan/dissectors/packet-h223.c
index 1c597c9d0d..f65c959f96 100644
--- a/epan/dissectors/packet-h223.c
+++ b/epan/dissectors/packet-h223.c
@@ -138,6 +138,8 @@ static const fragment_items h223_mux_frag_items _U_ = {
&hf_h223_mux_fragment_count,
&hf_h223_mux_reassembled_in,
&hf_h223_mux_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
@@ -154,6 +156,8 @@ static const fragment_items h223_al_frag_items = {
&hf_h223_al_fragment_count,
&hf_h223_al_reassembled_in,
&hf_h223_al_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-iax2.c b/epan/dissectors/packet-iax2.c
index a2320d4e5e..c6999fa422 100644
--- a/epan/dissectors/packet-iax2.c
+++ b/epan/dissectors/packet-iax2.c
@@ -192,6 +192,8 @@ static const fragment_items iax2_fragment_items = {
&hf_iax2_fragment_count,
&hf_iax2_reassembled_in,
&hf_iax2_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"iax2 fragments"
};
diff --git a/epan/dissectors/packet-idmp.c b/epan/dissectors/packet-idmp.c
index 6c0b63299c..758f692c68 100644
--- a/epan/dissectors/packet-idmp.c
+++ b/epan/dissectors/packet-idmp.c
@@ -111,6 +111,8 @@ static const fragment_items idmp_frag_items = {
&hf_idmp_reassembled_in,
/* Reassembled length field */
&hf_idmp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"IDMP fragments"
};
diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c
index 1c4e7bd397..c7a690d0bb 100644
--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -2711,6 +2711,8 @@ static const fragment_items frag_items = {
&hf_ieee80211_fragment_count,
&hf_ieee80211_reassembled_in,
&hf_ieee80211_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
@@ -4102,6 +4104,8 @@ static const fragment_items gas_resp_frag_items = {
&hf_ieee80211_gas_resp_fragment_count,
&hf_ieee80211_gas_resp_reassembled_in,
&hf_ieee80211_gas_resp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"GAS Response fragments"
};
@@ -7475,7 +7479,7 @@ dissect_frame_control(proto_tree * tree, tvbuff_t * tvb, gboolean wlan_broken_fc
}
static void
-dissect_vendor_ie_ht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+dissect_vendor_ie_ht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
guint offset, proto_item *item, proto_item *ti_len, gint tag_len)
{
diff --git a/epan/dissectors/packet-ip.c b/epan/dissectors/packet-ip.c
index ac4f019857..bba473929a 100644
--- a/epan/dissectors/packet-ip.c
+++ b/epan/dissectors/packet-ip.c
@@ -177,6 +177,7 @@ static int hf_ip_fragment_error = -1;
static int hf_ip_fragment_count = -1;
static int hf_ip_reassembled_in = -1;
static int hf_ip_reassembled_length = -1;
+static int hf_ip_reassembled_data = -1;
#ifdef HAVE_GEOIP
static int hf_geoip_country = -1;
@@ -244,6 +245,7 @@ static const fragment_items ip_frag_items = {
&hf_ip_fragment_count,
&hf_ip_reassembled_in,
&hf_ip_reassembled_length,
+ &hf_ip_reassembled_data,
"IPv4 fragments"
};
@@ -2828,8 +2830,12 @@ proto_register_ip(void)
{ &hf_ip_reassembled_length,
{ "Reassembled IPv4 length", "ip.reassembled.length", FT_UINT32, BASE_DEC,
- NULL, 0x0, "The total length of the reassembled payload", HFILL }}
- };
+ NULL, 0x0, "The total length of the reassembled payload", HFILL }},
+
+ { &hf_ip_reassembled_data,
+ { "Reassembled IPv4 data", "ip.reassembled.data", FT_BYTES, BASE_NONE,
+ NULL, 0x0, "The reassembled payload", HFILL }}
+};
static gint *ett[] = {
&ett_ip,
diff --git a/epan/dissectors/packet-ipv6.c b/epan/dissectors/packet-ipv6.c
index 85e30e819d..b213267340 100644
--- a/epan/dissectors/packet-ipv6.c
+++ b/epan/dissectors/packet-ipv6.c
@@ -182,6 +182,7 @@ static int hf_ipv6_fragment_error = -1;
static int hf_ipv6_fragment_count = -1;
static int hf_ipv6_reassembled_in = -1;
static int hf_ipv6_reassembled_length = -1;
+static int hf_ipv6_reassembled_data = -1;
static int hf_ipv6_mipv6_home_address = -1;
@@ -292,6 +293,7 @@ static const fragment_items ipv6_frag_items = {
&hf_ipv6_fragment_count,
&hf_ipv6_reassembled_in,
&hf_ipv6_reassembled_length,
+ &hf_ipv6_reassembled_data,
"IPv6 fragments"
};
@@ -2545,6 +2547,10 @@ proto_register_ipv6(void)
FT_UINT32, BASE_DEC, NULL, 0x0,
"The total length of the reassembled payload", HFILL }},
+ { &hf_ipv6_reassembled_data,
+ { "Reassembled IPv6 data", "ipv6.reassembled.data",
+ FT_UINT32, BASE_DEC, NULL, 0x0,
+ "The reassembled payload", HFILL }},
/* RPL Routing Header */
{ &hf_ipv6_routing_hdr_rpl_cmprI,
{ "Compressed Internal Octets (CmprI)", "ipv6.routing_hdr.rpl.cmprI",
diff --git a/epan/dissectors/packet-isakmp.c b/epan/dissectors/packet-isakmp.c
index 27bc921d8a..3a391841e4 100644
--- a/epan/dissectors/packet-isakmp.c
+++ b/epan/dissectors/packet-isakmp.c
@@ -392,6 +392,8 @@ static const fragment_items isakmp_frag_items = {
&hf_isakmp_reassembled_in,
/* Reassembled length field */
&hf_isakmp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-isup.c b/epan/dissectors/packet-isup.c
index 6ea310a835..3158d739fc 100644
--- a/epan/dissectors/packet-isup.c
+++ b/epan/dissectors/packet-isup.c
@@ -2929,6 +2929,8 @@ static const fragment_items isup_apm_msg_frag_items = {
&hf_isup_apm_msg_reassembled_in,
/* Reassembled length field */
&hf_isup_apm_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"ISUP APM Message fragments"
};
diff --git a/epan/dissectors/packet-lapdm.c b/epan/dissectors/packet-lapdm.c
index c569857601..841281fb19 100644
--- a/epan/dissectors/packet-lapdm.c
+++ b/epan/dissectors/packet-lapdm.c
@@ -198,6 +198,8 @@ static const fragment_items lapdm_frag_items = {
&hf_lapdm_reassembled_in,
/* Reassembled length field */
&hf_lapdm_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"fragments"
};
diff --git a/epan/dissectors/packet-lapsat.c b/epan/dissectors/packet-lapsat.c
index 38ae3ff00b..693b3dd86b 100644
--- a/epan/dissectors/packet-lapsat.c
+++ b/epan/dissectors/packet-lapsat.c
@@ -244,6 +244,8 @@ static const fragment_items lapsat_frag_items = {
&hf_lapsat_reassembled_in,
/* Reassembled length field */
&hf_lapsat_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"fragments"
};
diff --git a/epan/dissectors/packet-ltp.c b/epan/dissectors/packet-ltp.c
index 36d1172792..80d582ade9 100644
--- a/epan/dissectors/packet-ltp.c
+++ b/epan/dissectors/packet-ltp.c
@@ -197,6 +197,8 @@ static const fragment_items ltp_frag_items = {
&hf_ltp_reassembled_in,
/*Reassembled length field*/
&hf_ltp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/*Tag*/
"LTP fragments"
};
diff --git a/epan/dissectors/packet-mp2t.c b/epan/dissectors/packet-mp2t.c
index 02b5bc5a3c..b8b9615cc4 100644
--- a/epan/dissectors/packet-mp2t.c
+++ b/epan/dissectors/packet-mp2t.c
@@ -238,6 +238,8 @@ static const fragment_items mp2t_msg_frag_items = {
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-mux27010.c b/epan/dissectors/packet-mux27010.c
index 08b15d276b..e2f046a919 100644
--- a/epan/dissectors/packet-mux27010.c
+++ b/epan/dissectors/packet-mux27010.c
@@ -285,6 +285,8 @@ static gint ett_msg_fragments = -1;
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-ncp2222.inc b/epan/dissectors/packet-ncp2222.inc
index 5c1a1de460..939c66f73f 100644
--- a/epan/dissectors/packet-ncp2222.inc
+++ b/epan/dissectors/packet-ncp2222.inc
@@ -78,6 +78,8 @@ static const fragment_items nds_frag_items = {
&hf_nds_segment_count,
NULL,
&hf_nds_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-ndmp.c b/epan/dissectors/packet-ndmp.c
index 1577ca7fec..3bf3105077 100644
--- a/epan/dissectors/packet-ndmp.c
+++ b/epan/dissectors/packet-ndmp.c
@@ -280,6 +280,8 @@ static const fragment_items ndmp_frag_items = {
&hf_ndmp_reassembled_in,
/* Reassembled length field */
&hf_ndmp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"NDMP fragments"
};
diff --git a/epan/dissectors/packet-ndps.c b/epan/dissectors/packet-ndps.c
index 35eb0b7501..01ed8d96eb 100644
--- a/epan/dissectors/packet-ndps.c
+++ b/epan/dissectors/packet-ndps.c
@@ -4038,6 +4038,8 @@ static const fragment_items ndps_frag_items = {
&hf_ndps_segment_count,
NULL,
&hf_ndps_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-netbios.c b/epan/dissectors/packet-netbios.c
index fb5d06d07e..0a07be827b 100644
--- a/epan/dissectors/packet-netbios.c
+++ b/epan/dissectors/packet-netbios.c
@@ -134,6 +134,8 @@ static const fragment_items netbios_frag_items = {
&hf_netb_fragment_count,
NULL,
&hf_netb_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-ositp.c b/epan/dissectors/packet-ositp.c
index 0109aa75f9..c25a23cfe6 100644
--- a/epan/dissectors/packet-ositp.c
+++ b/epan/dissectors/packet-ositp.c
@@ -102,6 +102,8 @@ static const fragment_items cotp_frag_items = {
&hf_cotp_segment_count,
&hf_cotp_reassembled_in,
&hf_cotp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-p_mul.c b/epan/dissectors/packet-p_mul.c
index 589e4267b1..8e3e87c437 100644
--- a/epan/dissectors/packet-p_mul.c
+++ b/epan/dissectors/packet-p_mul.c
@@ -225,6 +225,8 @@ static const fragment_items p_mul_frag_items = {
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-pop.c b/epan/dissectors/packet-pop.c
index 6981cd8493..1fd92f3301 100644
--- a/epan/dissectors/packet-pop.c
+++ b/epan/dissectors/packet-pop.c
@@ -100,6 +100,8 @@ static const fragment_items pop_data_frag_items = {
&hf_pop_data_reassembled_in,
/* Reassembled length field */
&hf_pop_data_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"DATA fragments"
};
diff --git a/epan/dissectors/packet-q931.c b/epan/dissectors/packet-q931.c
index d181c0a2b2..9eb69b5413 100644
--- a/epan/dissectors/packet-q931.c
+++ b/epan/dissectors/packet-q931.c
@@ -136,6 +136,8 @@ static const fragment_items q931_frag_items = {
&hf_q931_segment_count,
&hf_q931_reassembled_in,
&hf_q931_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-reload.c b/epan/dissectors/packet-reload.c
index b42027dd19..8101fd7b72 100644
--- a/epan/dissectors/packet-reload.c
+++ b/epan/dissectors/packet-reload.c
@@ -656,6 +656,8 @@ static const fragment_items reload_frag_items = {
&hf_reload_fragment_count,
&hf_reload_reassembled_in,
&hf_reload_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"RELOAD fragments"
};
diff --git a/epan/dissectors/packet-rpc.c b/epan/dissectors/packet-rpc.c
index cd346be70f..fa114556b6 100644
--- a/epan/dissectors/packet-rpc.c
+++ b/epan/dissectors/packet-rpc.c
@@ -289,6 +289,8 @@ static const fragment_items rpc_frag_items = {
&hf_rpc_fragment_count,
NULL,
&hf_rpc_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-rtp.c b/epan/dissectors/packet-rtp.c
index 8445cda571..ebf0d57004 100644
--- a/epan/dissectors/packet-rtp.c
+++ b/epan/dissectors/packet-rtp.c
@@ -128,6 +128,8 @@ static const fragment_items rtp_fragment_items = {
&hf_rtp_fragment_count,
&hf_rtp_reassembled_in,
&hf_rtp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"RTP fragments"
};
@@ -1182,7 +1184,7 @@ dissect_rtp_hext_rfc5215_onebyte( tvbuff_t *tvb, packet_info *pinfo,
subtvb = tvb_new_subset(tvb, ext_offset, ext_length, ext_length);
if (!dissector_try_uint (rtp_hdr_ext_rfc5285_dissector_table, ext_id, subtvb, pinfo, rtp_hext_rfc5285_tree)) {
- if (rtp_hext_tree)
+ if (rtp_hext_tree)
proto_tree_add_item(rtp_hext_rfc5285_tree, hf_rtp_ext_rfc5285_data, subtvb, 0, ext_length, ENC_NA );
}
diff --git a/epan/dissectors/packet-rtse.c b/epan/dissectors/packet-rtse.c
index c7ed0db1cb..48cf81738d 100644
--- a/epan/dissectors/packet-rtse.c
+++ b/epan/dissectors/packet-rtse.c
@@ -154,6 +154,8 @@ static const fragment_items rtse_frag_items = {
&hf_rtse_reassembled_in,
/* Reassembled length field */
&hf_rtse_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"RTSE fragments"
};
@@ -205,7 +207,7 @@ call_rtse_oid_callback(const char *oid, tvbuff_t *tvb, int offset, packet_info *
dissect_unknown_ber(pinfo, next_tvb, offset, next_tree);
}
- /*XXX until we change the #.REGISTER signature for _PDU()s
+ /*XXX until we change the #.REGISTER signature for _PDU()s
* into new_dissector_t we have to do this kludge with
* manually step past the content in the ANY type.
*/
@@ -280,7 +282,7 @@ dissect_rtse_T_open(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_
oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id);
break;
}
-
+
if(!oid) /* XXX: problem here is we haven't decoded the applicationProtocol yet - so we make assumptions! */
oid = "applicationProtocol.12";
@@ -508,7 +510,7 @@ static int
dissect_rtse_RefuseReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 148 "../../asn1/rtse/rtse.cnf"
int reason = -1;
-
+
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
&reason);
@@ -540,7 +542,7 @@ dissect_rtse_T_userDataRJ(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id);
break;
}
-
+
if(!oid) /* XXX: problem here is we haven't decoded the applicationProtocol yet - so we make assumptions! */
oid = "applicationProtocol.12";
@@ -642,7 +644,7 @@ static int
dissect_rtse_AbortReason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 164 "../../asn1/rtse/rtse.cnf"
int reason = -1;
-
+
offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
&reason);
@@ -763,7 +765,7 @@ dissect_rtse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
if(parent_tree){
proto_tree_add_text(parent_tree, tvb, offset, -1,
"Internal error:can't get application context from ACSE dissector.");
- }
+ }
return ;
} else {
session = ( (struct SESSION_DATA_STRUCTURE*)(pinfo->private_data) );
@@ -773,22 +775,22 @@ dissect_rtse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
col_set_str(pinfo->cinfo, COL_PROTOCOL, "RTSE");
col_clear(pinfo->cinfo, COL_INFO);
- if (rtse_reassemble &&
+ if (rtse_reassemble &&
((session->spdu_type == SES_DATA_TRANSFER) ||
(session->spdu_type == SES_MAJOR_SYNC_POINT))) {
/* Use conversation index as fragment id */
- conversation = find_conversation (pinfo->fd->num,
- &pinfo->src, &pinfo->dst, pinfo->ptype,
+ conversation = find_conversation (pinfo->fd->num,
+ &pinfo->src, &pinfo->dst, pinfo->ptype,
pinfo->srcport, pinfo->destport, 0);
- if (conversation != NULL) {
+ if (conversation != NULL) {
rtse_id = conversation->index;
- }
+ }
session->rtse_reassemble = TRUE;
}
if (rtse_reassemble && session->spdu_type == SES_MAJOR_SYNC_POINT) {
frag_msg = fragment_end_seq_next (pinfo, rtse_id, rtse_segment_table,
rtse_reassembled_table);
- next_tvb = process_reassembled_data (tvb, offset, pinfo, "Reassembled RTSE",
+ next_tvb = process_reassembled_data (tvb, offset, pinfo, "Reassembled RTSE",
frag_msg, &rtse_frag_items, NULL, parent_tree);
}
if(parent_tree){
@@ -803,7 +805,7 @@ dissect_rtse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
fragment_length = tvb_length_remaining (data_tvb, 0);
proto_item_append_text(asn1_ctx.created_item, " (%u byte%s)", fragment_length,
plurality(fragment_length, "", "s"));
- frag_msg = fragment_add_seq_next (data_tvb, 0, pinfo,
+ frag_msg = fragment_add_seq_next (data_tvb, 0, pinfo,
rtse_id, rtse_segment_table,
rtse_reassembled_table, fragment_length, TRUE);
if (frag_msg && pinfo->fd->num != frag_msg->reassembled_in) {
@@ -830,7 +832,7 @@ dissect_rtse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
pinfo->fragmented = FALSE;
data_handled = TRUE;
- }
+ }
if (!data_handled) {
while (tvb_reported_length_remaining(tvb, offset) > 0){
diff --git a/epan/dissectors/packet-sccp.c b/epan/dissectors/packet-sccp.c
index 90692bd763..8a79cdfa40 100644
--- a/epan/dissectors/packet-sccp.c
+++ b/epan/dissectors/packet-sccp.c
@@ -734,6 +734,8 @@ static const fragment_items sccp_xudt_msg_frag_items = {
&hf_sccp_xudt_msg_reassembled_in,
/* Reassembled length field */
&hf_sccp_xudt_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"SCCP XUDT Message fragments"
};
diff --git a/epan/dissectors/packet-scsi.c b/epan/dissectors/packet-scsi.c
index a46027a640..31892771c9 100644
--- a/epan/dissectors/packet-scsi.c
+++ b/epan/dissectors/packet-scsi.c
@@ -390,6 +390,8 @@ static const fragment_items scsi_frag_items = {
&hf_scsi_fragment_count,
&hf_scsi_reassembled_in,
&hf_scsi_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
@@ -490,7 +492,7 @@ static const value_string scsi_evpd_pagecode_val[] = {
{SCSI_EVPD_DEVSERNUM, "Unit Serial Number Page"},
{SCSI_EVPD_OPER, "Implemented Operating Definition Page"},
{SCSI_EVPD_ASCIIOPER, "ASCII Implemented Operating Definition Page"},
- {SCSI_EVPD_DEVID, "Device Identification Page"},
+ {SCSI_EVPD_DEVID, "Device Identification Page"},
{SCSI_EVPD_BLKLIMITS, "Block Limits Page"},
{SCSI_EVPD_LBP, "Logical Block Provisioning Page"},
{0, NULL},
@@ -3561,7 +3563,7 @@ dissect_scsi_modepage(tvbuff_t *tvb, packet_info *pinfo,
if (spf) {
proto_tree_add_item(tree, hf_scsi_spc_subpagecode, tvb, offset + 1, 1, ENC_BIG_ENDIAN);
proto_tree_add_item(tree, hf_scsi_modepage_plen, tvb, offset + 2, 2, ENC_BIG_ENDIAN);
- } else {
+ } else {
proto_tree_add_item(tree, hf_scsi_modepage_plen, tvb, offset + 1, 1, ENC_BIG_ENDIAN);
}
diff --git a/epan/dissectors/packet-ses.c b/epan/dissectors/packet-ses.c
index 0086276e96..c66a936978 100644
--- a/epan/dissectors/packet-ses.c
+++ b/epan/dissectors/packet-ses.c
@@ -204,6 +204,8 @@ static const fragment_items ses_frag_items = {
&hf_ses_reassembled_in,
/* Reassembled length field */
&hf_ses_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"SES segments"
};
diff --git a/epan/dissectors/packet-smb-pipe.c b/epan/dissectors/packet-smb-pipe.c
index c4ff7b885e..a1d555d739 100644
--- a/epan/dissectors/packet-smb-pipe.c
+++ b/epan/dissectors/packet-smb-pipe.c
@@ -90,6 +90,8 @@ static const fragment_items smb_pipe_frag_items = {
&hf_pipe_fragment_count,
NULL,
&hf_pipe_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-smb.c b/epan/dissectors/packet-smb.c
index c8b505c5a2..114f0e629c 100644
--- a/epan/dissectors/packet-smb.c
+++ b/epan/dissectors/packet-smb.c
@@ -819,6 +819,8 @@ static const fragment_items smb_frag_items = {
&hf_smb_segment_count,
NULL,
&hf_smb_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-smtp.c b/epan/dissectors/packet-smtp.c
index 2575ab1d10..708ade6101 100644
--- a/epan/dissectors/packet-smtp.c
+++ b/epan/dissectors/packet-smtp.c
@@ -108,6 +108,8 @@ static const fragment_items smtp_data_frag_items = {
&hf_smtp_data_reassembled_in,
/* Reassembled length field */
&hf_smtp_data_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"DATA fragments"
};
@@ -607,7 +609,7 @@ dissect_smtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
} else if (session_state->auth_state == SMTP_AUTH_STATE_PASSWORD_REQ) {
session_state->auth_state = SMTP_AUTH_STATE_PASSWORD_RSP;
session_state->password_frame = pinfo->fd->num;
- }
+ }
else {
/*
@@ -740,7 +742,7 @@ dissect_smtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
proto_tree_add_string(smtp_tree, hf_smtp_username, tvb,
loffset, linelen, decrypt);
- col_append_str(pinfo->cinfo, COL_INFO, decrypt);
+ col_append_str(pinfo->cinfo, COL_INFO, decrypt);
} else if (session_state->password_frame == pinfo->fd->num) {
if (decrypt == NULL) {
/* This line wasn't already decrypted through the state machine */
@@ -868,7 +870,7 @@ dissect_smtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
if (code == 334) {
- switch(session_state->auth_state)
+ switch(session_state->auth_state)
{
case SMTP_AUTH_STATE_START:
session_state->auth_state = SMTP_AUTH_STATE_USERNAME_REQ;
diff --git a/epan/dissectors/packet-sndcp.c b/epan/dissectors/packet-sndcp.c
index 175c0bf92d..b5df2c77bc 100644
--- a/epan/dissectors/packet-sndcp.c
+++ b/epan/dissectors/packet-sndcp.c
@@ -91,6 +91,8 @@ static const fragment_items npdu_frag_items = {
&hf_npdu_fragment_count,
&hf_npdu_reassembled_in,
&hf_npdu_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-ssl.c b/epan/dissectors/packet-ssl.c
index 28c94f4df8..144f09ec3f 100644
--- a/epan/dissectors/packet-ssl.c
+++ b/epan/dissectors/packet-ssl.c
@@ -320,6 +320,8 @@ static const fragment_items ssl_segment_items = {
&hf_ssl_segment_count,
&hf_ssl_reassembled_in,
&hf_ssl_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"Segments"
};
diff --git a/epan/dissectors/packet-t38.c b/epan/dissectors/packet-t38.c
index a2553e42bb..3ebf58f765 100644
--- a/epan/dissectors/packet-t38.c
+++ b/epan/dissectors/packet-t38.c
@@ -44,10 +44,10 @@
* http://www.itu.int/ITU-T/asn1/database/itu-t/t/t38/2002-Amd1/T38.html (Pre-Corrigendum=FALSE)
*/
-/* TO DO:
- * - TCP desegmentation is currently not supported for T.38 IFP directly over TCP.
+/* TO DO:
+ * - TCP desegmentation is currently not supported for T.38 IFP directly over TCP.
* - H.245 dissectors should be updated to start conversations for T.38 similar to RTP.
- * - Sometimes the last octet is not high-lighted when selecting something in the tree. Bug in PER dissector?
+ * - Sometimes the last octet is not high-lighted when selecting something in the tree. Bug in PER dissector?
* - Add support for RTP payload audio/t38 (draft-jones-avt-audio-t38-03.txt), i.e. T38 in RTP packets.
*/
@@ -74,7 +74,7 @@
#include <epan/emem.h>
#include <epan/strutil.h>
-#define PORT_T38 6004
+#define PORT_T38 6004
static guint global_t38_tcp_port = PORT_T38;
static guint global_t38_udp_port = PORT_T38;
@@ -86,7 +86,7 @@ static gboolean use_pre_corrigendum_asn1_specification = TRUE;
/* dissect packets that looks like RTP version 2 packets as RTP */
/* instead of as T.38. This may result in that some T.38 UPTL */
/* packets with sequence number values higher than 32767 may be */
-/* shown as RTP packets. */
+/* shown as RTP packets. */
static gboolean dissect_possible_rtpv2_packets_as_rtp = FALSE;
@@ -214,6 +214,8 @@ static const fragment_items data_frag_items = {
&hf_t38_reassembled_in,
/* Reassembled length field */
&hf_t38_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Data fragments"
};
@@ -427,7 +429,7 @@ force_reassemble_seq(packet_info *pinfo, guint32 id,
fd_head->reassembled_in=pinfo->fd->num;
col_append_fstr(pinfo->cinfo, COL_INFO, " (t4-data Reassembled: %d pack lost, %d pack burst lost)", packet_lost, burst_lost);
-
+
p_t38_packet_conv_info->packet_lost = packet_lost;
p_t38_packet_conv_info->burst_lost = burst_lost;
@@ -739,8 +741,8 @@ dissect_t38_T_field_data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
if (!frag_msg) { /* Not last packet of reassembled */
if (Data_Field_field_type_value == 0) {
- col_append_fstr(actx->pinfo->cinfo, COL_INFO," (HDLC fragment %u)",
- seq_number + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter
+ col_append_fstr(actx->pinfo->cinfo, COL_INFO," (HDLC fragment %u)",
+ seq_number + (guint32)p_t38_packet_conv_info->additional_hdlc_data_field_counter
- (guint32)p_t38_packet_conv_info->reass_start_seqnum);
} else {
col_append_fstr(actx->pinfo->cinfo, COL_INFO," (t4-data fragment %u)", seq_number - (guint32)p_t38_packet_conv_info->reass_start_seqnum);
@@ -1000,11 +1002,11 @@ init_t38_info_conv(packet_info *pinfo)
t38_info->frame_num_first_t4_data = 0;
- /*
+ /*
p_t38_packet_conv hold the conversation info in each of the packets.
p_t38_conv hold the conversation info used to reassemble the HDLC packets, and also the Setup info (e.g SDP)
- If we already have p_t38_packet_conv in the packet, it means we already reassembled the HDLC packets, so we don't
- need to use p_t38_conv
+ If we already have p_t38_packet_conv in the packet, it means we already reassembled the HDLC packets, so we don't
+ need to use p_t38_conv
*/
p_t38_packet_conv = NULL;
p_t38_conv = NULL;
@@ -1193,10 +1195,10 @@ dissect_t38_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if(t38_tpkt_usage == T38_TPKT_ALWAYS){
dissect_tpkt_encap(tvb,pinfo,tree,t38_tpkt_reassembly,t38_tcp_pdu_handle);
- }
+ }
else if((t38_tpkt_usage == T38_TPKT_NEVER) || (is_tpkt(tvb,1) == -1)){
dissect_t38_tcp_pdu(tvb, pinfo, tree);
- }
+ }
else {
dissect_tpkt_encap(tvb,pinfo,tree,t38_tpkt_reassembly,t38_tcp_pdu_handle);
}
@@ -1210,13 +1212,13 @@ dissect_t38(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
dissect_t38_tcp(tvb, pinfo, tree);
}
else if(pinfo->ipproto == IP_PROTO_UDP)
- {
+ {
dissect_t38_udp(tvb, pinfo, tree);
}
}
/* Look for conversation info and display any setup info found */
-void
+void
show_setup_info(tvbuff_t *tvb, proto_tree *tree, t38_conv *p_t38_conversation)
{
proto_tree *t38_setup_tree;
@@ -1356,7 +1358,7 @@ proto_register_t38(void)
FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{&hf_t38_fragment_multiple_tails,
{"Message has multiple tail fragments",
- "t38.fragment.multiple_tails",
+ "t38.fragment.multiple_tails",
FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL } },
{&hf_t38_fragment_too_long_fragment,
{"Message fragment too long", "t38.fragment.too_long_fragment",
@@ -1429,7 +1431,7 @@ proto_register_t38(void)
prefs_register_uint_preference(t38_module, "udp.port",
"T.38 UDP Port",
"Set the UDP port for T.38 messages",
- 10, &global_t38_udp_port);
+ 10, &global_t38_udp_port);
prefs_register_bool_preference(t38_module, "reassembly",
"Reassemble T.38 PDUs over TPKT over TCP",
"Whether the dissector should reassemble T.38 PDUs spanning multiple TCP segments "
diff --git a/epan/dissectors/packet-tcp.c b/epan/dissectors/packet-tcp.c
index f6112015d6..af43f6e4e1 100644
--- a/epan/dissectors/packet-tcp.c
+++ b/epan/dissectors/packet-tcp.c
@@ -146,6 +146,7 @@ static int hf_tcp_pdu_size = -1;
static int hf_tcp_pdu_last_frame = -1;
static int hf_tcp_reassembled_in = -1;
static int hf_tcp_reassembled_length = -1;
+static int hf_tcp_reassembled_data = -1;
static int hf_tcp_segments = -1;
static int hf_tcp_segment = -1;
static int hf_tcp_segment_overlap = -1;
@@ -402,6 +403,7 @@ static const fragment_items tcp_segment_items = {
&hf_tcp_segment_count,
&hf_tcp_reassembled_in,
&hf_tcp_reassembled_length,
+ &hf_tcp_reassembled_data,
"Segments"
};
@@ -5052,6 +5054,10 @@ proto_register_tcp(void)
{ "Reassembled TCP length", "tcp.reassembled.length", FT_UINT32, BASE_DEC, NULL, 0x0,
"The total length of the reassembled payload", HFILL }},
+ { &hf_tcp_reassembled_data,
+ { "Reassembled TCP Data", "tcp.reassembled.data", FT_BYTES, BASE_NONE, NULL, 0x0,
+ "The reassembled payload", HFILL }},
+
{ &hf_tcp_option_kind,
{ "Kind", "tcp.option_kind", FT_UINT8,
BASE_DEC, VALS(tcp_option_kind_vs), 0x0, "This TCP option's kind", HFILL }},
diff --git a/epan/dissectors/packet-tds.c b/epan/dissectors/packet-tds.c
index f950715aae..ad237a3238 100644
--- a/epan/dissectors/packet-tds.c
+++ b/epan/dissectors/packet-tds.c
@@ -546,6 +546,8 @@ static const fragment_items tds_frag_items = {
&hf_tds_fragment_count,
&hf_tds_reassembled_in,
&hf_tds_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
@@ -1732,7 +1734,7 @@ dissect_tds_done_token(tvbuff_t *tvb, guint offset, proto_tree *tree, tds_conv_i
offset += 2;
proto_tree_add_text(tree, tvb, offset, 2, "Operation");
offset += 2;
- if (TDS_PROTO_TDS7_2_OR_GREATER) {
+ if (TDS_PROTO_TDS7_2_OR_GREATER) {
proto_tree_add_text(tree, tvb, offset, 8, "row count: %" G_GINT64_MODIFIER "u",
tds_tvb_get_xxtoh64(tvb, offset, tds_little_endian));
} else {
diff --git a/epan/dissectors/packet-teamspeak2.c b/epan/dissectors/packet-teamspeak2.c
index 710d37a355..a1ccb4c636 100644
--- a/epan/dissectors/packet-teamspeak2.c
+++ b/epan/dissectors/packet-teamspeak2.c
@@ -139,6 +139,8 @@ static const fragment_items msg_frag_items = {
&hf_msg_reassembled_in,
/* Reassembled length field */
&hf_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-tipc.c b/epan/dissectors/packet-tipc.c
index ea0438be7d..f73665e9b6 100644
--- a/epan/dissectors/packet-tipc.c
+++ b/epan/dissectors/packet-tipc.c
@@ -220,6 +220,8 @@ static const fragment_items tipc_msg_frag_items = {
&hf_tipc_msg_reassembled_in,
/* Reassembled length field */
&hf_tipc_msg_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"TIPC Message fragments"
};
diff --git a/epan/dissectors/packet-wai.c b/epan/dissectors/packet-wai.c
index 1f951a070d..286069fd6b 100644
--- a/epan/dissectors/packet-wai.c
+++ b/epan/dissectors/packet-wai.c
@@ -182,6 +182,8 @@ static const fragment_items wai_frag_items = {
&hf_wai_reassembled_in,
/* Reassembled length field */
&hf_wai_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"Message fragments"
};
diff --git a/epan/dissectors/packet-wtp.c b/epan/dissectors/packet-wtp.c
index 68bc8395f3..a4498c9c0d 100644
--- a/epan/dissectors/packet-wtp.c
+++ b/epan/dissectors/packet-wtp.c
@@ -218,6 +218,8 @@ static const fragment_items wtp_frag_items = {
&hf_wtp_fragment_count,
&hf_wtp_reassembled_in,
&hf_wtp_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"fragments"
};
diff --git a/epan/dissectors/packet-x25.c b/epan/dissectors/packet-x25.c
index 1bc94dc610..97d69c0a17 100644
--- a/epan/dissectors/packet-x25.c
+++ b/epan/dissectors/packet-x25.c
@@ -251,6 +251,8 @@ static const fragment_items x25_frag_items = {
&hf_x25_segment_count,
NULL,
&hf_x25_reassembled_length,
+ /* Reassembled data field */
+ NULL,
"segments"
};
diff --git a/epan/dissectors/packet-zbee-aps.c b/epan/dissectors/packet-zbee-aps.c
index 45174ec22d..a37b6d04a3 100644
--- a/epan/dissectors/packet-zbee-aps.c
+++ b/epan/dissectors/packet-zbee-aps.c
@@ -166,6 +166,8 @@ static const fragment_items zbee_aps_frag_items = {
&hf_zbee_aps_reassembled_in,
/* Reassembled length field */
&hf_zbee_aps_reassembled_length,
+ /* Reassembled data field */
+ NULL,
/* Tag */
"APS Message fragments"
};
diff --git a/epan/reassemble.c b/epan/reassemble.c
index c07a5c463e..5ef746dcb0 100644
--- a/epan/reassemble.c
+++ b/epan/reassemble.c
@@ -2085,6 +2085,12 @@ show_fragment_tree(fragment_data *fd_head, const fragment_items *fit,
PROTO_ITEM_SET_GENERATED(fli);
}
+ if (fit->hf_reassembled_data) {
+ proto_item *fli = proto_tree_add_item(ft, *(fit->hf_reassembled_data),
+ tvb, 0, tvb_length(tvb), ENC_NA);
+ PROTO_ITEM_SET_GENERATED(fli);
+ }
+
return show_fragment_errs_in_col(fd_head, fit, pinfo);
}
diff --git a/epan/reassemble.h b/epan/reassemble.h
index 9f6c06b6ed..f35beb7009 100644
--- a/epan/reassemble.h
+++ b/epan/reassemble.h
@@ -289,25 +289,29 @@ fragment_get_reassembled_id(const packet_info *pinfo, const guint32 id, GHashTab
extern unsigned char *
fragment_delete(const packet_info *pinfo, const guint32 id, GHashTable *fragment_table);
-/* hf_fragment, hf_fragment_error, and hf_reassembled_in should be
- FT_FRAMENUM, the others should be FT_BOOLEAN
-*/
+/* This struct holds references to all the tree and field handles used when
+ * displaying the reassembled fragment tree in the packet details view. A
+ * dissector will populate this structure with its own tree and field handles
+ * and then invoke show_fragement_tree to have those items added to the packet
+ * details tree.
+ */
typedef struct _fragment_items {
- gint *ett_fragment;
- gint *ett_fragments;
-
- int *hf_fragments;
- int *hf_fragment;
- int *hf_fragment_overlap;
- int *hf_fragment_overlap_conflict;
- int *hf_fragment_multiple_tails;
- int *hf_fragment_too_long_fragment;
- int *hf_fragment_error;
- int *hf_fragment_count;
- int *hf_reassembled_in;
- int *hf_reassembled_length;
-
- const char *tag;
+ gint *ett_fragment;
+ gint *ett_fragments;
+
+ int *hf_fragments; /* FT_BOOLEAN */
+ int *hf_fragment; /* FT_FRAMENUM */
+ int *hf_fragment_overlap; /* FT_BOOLEAN */
+ int *hf_fragment_overlap_conflict; /* FT_BOOLEAN */
+ int *hf_fragment_multiple_tails; /* FT_BOOLEAN */
+ int *hf_fragment_too_long_fragment; /* FT_BOOLEAN */
+ int *hf_fragment_error; /* FT_FRAMENUM */
+ int *hf_fragment_count; /* FT_UINT32 */
+ int *hf_reassembled_in; /* FT_FRAMENUM */
+ int *hf_reassembled_length; /* FT_UINT32 */
+ int *hf_reassembled_data; /* FT_BYTES */
+
+ const char *tag;
} fragment_items;
extern tvbuff_t *