summaryrefslogtreecommitdiff
path: root/epan/reassemble.h
diff options
context:
space:
mode:
authorEvan Huus <eapache@gmail.com>2013-03-25 12:53:26 +0000
committerEvan Huus <eapache@gmail.com>2013-03-25 12:53:26 +0000
commit0314bd1c1bae5919d3bcaa92bf9726f7abf3a9be (patch)
treea1908ab68daa2e34555e1df6ad79d101eac5f149 /epan/reassemble.h
parent7097d6465b398705da73d87235db4b9468b40422 (diff)
downloadwireshark-0314bd1c1bae5919d3bcaa92bf9726f7abf3a9be.tar.gz
From Roland Knall via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8502
Allow reassembly of sequences when the sequence numbers do not count from 0. svn path=/trunk/; revision=48548
Diffstat (limited to 'epan/reassemble.h')
-rw-r--r--epan/reassemble.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/epan/reassemble.h b/epan/reassemble.h
index c62eaa055e..69a8de731a 100644
--- a/epan/reassemble.h
+++ b/epan/reassemble.h
@@ -74,6 +74,9 @@ typedef struct _fragment_data {
guint32 frame;
guint32 offset;
guint32 len;
+ guint32 fragment_nr_offset; /* offset for frame numbering, for sequences, where the
+ * provided fragment number of the first fragment does
+ * not start with 0 */
guint32 datalen; /* Only valid in first item of list and when
* flags&FD_DATALEN_SET is set;
* number of bytes or (if flags&FD_BLOCKSEQUENCE set)
@@ -264,6 +267,14 @@ fragment_start_seq_check(reassembly_table *table, const packet_info *pinfo,
WS_DLL_PUBLIC fragment_data *
fragment_end_seq_next(reassembly_table *table, const packet_info *pinfo,
const guint32 id, const void *data);
+
+/* To specify the offset for the fragment numbering, the first fragment is added with 0, and
+ * afterwards this offset is set. All additional calls to off_seq_check will calculate
+ * the number in sequence in regards to the offset */
+WS_DLL_PUBLIC void
+fragment_add_seq_offset(reassembly_table *table, const packet_info *pinfo, const guint32 id,
+ const void *data, const guint32 fragment_offset);
+
/* to specify how much to reassemble, for fragmentation where last fragment can not be
* identified by flags or such.
* note that for FD_BLOCKSEQUENCE tot_len is the index for the tail fragment.