aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/buffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/vnet/buffer.h')
-rw-r--r--src/vnet/buffer.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/vnet/buffer.h b/src/vnet/buffer.h
index 8cb55454462..317f8bb8e4a 100644
--- a/src/vnet/buffer.h
+++ b/src/vnet/buffer.h
@@ -42,6 +42,9 @@
#include <vlib/vlib.h>
+/**
+ * Flags that are set in the high order bits of ((vlib_buffer*)b)->flags
+ */
#define foreach_vnet_buffer_field \
_( 1, L4_CHECKSUM_COMPUTED, "l4-cksum-computed") \
_( 2, L4_CHECKSUM_CORRECT, "l4-cksum-correct") \
@@ -77,6 +80,26 @@ enum
#undef _
};
+/**
+ * @brief Flags set in ((vnet_buffer(b)->flags
+ */
+#define foreach_vnet_opaque_flag \
+ _( 1, IS_DVR, "DVR-processed")
+
+enum
+{
+#define _(bit, name, v) VNET_OPAQUE_F_##name = (1 << bit),
+ foreach_vnet_opaque_flag
+#undef _
+};
+
+enum
+{
+#define _(bit, name, v) VNET_OPAQUE_F_LOG2_##name = bit,
+ foreach_vnet_opaque_flag
+#undef _
+};
+
#define foreach_buffer_opaque_union_subtype \
_(ip) \
@@ -111,6 +134,7 @@ typedef struct
i16 l2_hdr_offset;
i16 l3_hdr_offset;
i16 l4_hdr_offset;
+ u16 flags;
union
{