aboutsummaryrefslogtreecommitdiffstats
path: root/epan/tvbuff-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'epan/tvbuff-int.h')
-rw-r--r--epan/tvbuff-int.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/epan/tvbuff-int.h b/epan/tvbuff-int.h
index 6a5c1d4490..17128abdf7 100644
--- a/epan/tvbuff-int.h
+++ b/epan/tvbuff-int.h
@@ -55,7 +55,9 @@ struct tvbuff {
* file. This is the length of virtual buffer (and/or
* real_data). It may be less than the reported
* length if this is from a packet that was cut short
- * by the capture process. */
+ * by the capture process.
+ *
+ * This must never be > reported_length or contained_length. */
guint length;
/** Amount of data that was reported as being in
@@ -64,6 +66,22 @@ struct tvbuff {
* amount of data that's available. */
guint reported_length;
+ /** If this was extracted from a parent tvbuff,
+ * this is the amount of extracted data that
+ * was reported as being in the parent tvbuff;
+ * if this represents a blob of data in that
+ * tvbuff that has a length specified by data
+ * in that tvbuff, it might be greater than
+ * the amount of data that was actually there
+ * to extract, so it could be greater than
+ * reported_length.
+ *
+ * If this wasn't extracted from a parent tvbuff,
+ * this is the same as reported_length.
+ *
+ * This must never be > reported_length. */
+ guint contained_length;
+
/* Offset from beginning of first "real" tvbuff. */
gint raw_offset;
};