aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/session/transport_types.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2021-04-12 19:55:37 -0700
committerDave Barach <openvpp@barachs.net>2021-04-14 16:01:50 +0000
commit04ae8273f64a4f5a771da9b056bcccd1ebf9c7d9 (patch)
tree09597fb999f63e30a22424d9a3a0e616a24c28b9 /src/vnet/session/transport_types.h
parent7bc714da36bb9badec2ad5bf848c6b90caabad0a (diff)
session tcp vcl: api to update connection attributes
Type: feature Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Ifdd6024daf044751895bb8d2deabad41d3a80c92
Diffstat (limited to 'src/vnet/session/transport_types.h')
-rw-r--r--src/vnet/session/transport_types.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/vnet/session/transport_types.h b/src/vnet/session/transport_types.h
index 1e7d5672f1c..f0fc285510f 100644
--- a/src/vnet/session/transport_types.h
+++ b/src/vnet/session/transport_types.h
@@ -215,6 +215,42 @@ typedef struct transport_endpoint_pair_
#undef _
} transport_endpoint_cfg_t;
+#define foreach_transport_endpt_cfg_flags \
+ _ (CSUM_OFFLOAD) \
+ _ (GSO) \
+ _ (RATE_SAMPLING)
+
+typedef enum transport_endpt_attr_flag_
+{
+#define _(name) TRANSPORT_ENDPT_ATTR_F_##name,
+ foreach_transport_endpt_cfg_flags
+#undef _
+} __clib_packed transport_endpt_attr_flag_t;
+
+#define foreach_transport_attr_fields \
+ _ (u64, next_output_node, NEXT_OUTPUT_NODE) \
+ _ (u16, mss, MSS) \
+ _ (u8, flags, FLAGS) \
+ _ (u8, cc_algo, CC_ALGO)
+
+typedef enum transport_endpt_attr_type_
+{
+#define _(type, name, str) TRANSPORT_ENDPT_ATTR_##str,
+ foreach_transport_attr_fields
+#undef _
+} __clib_packed transport_endpt_attr_type_t;
+
+typedef struct transport_endpt_attr_
+{
+ transport_endpt_attr_type_t type;
+ union
+ {
+#define _(type, name, str) type name;
+ foreach_transport_attr_fields
+#undef _
+ };
+} transport_endpt_attr_t;
+
typedef clib_bihash_24_8_t transport_endpoint_table_t;
#define ENDPOINT_INVALID_INDEX ((u32)~0)