diff options
author | Florin Coras <fcoras@cisco.com> | 2021-04-12 19:55:37 -0700 |
---|---|---|
committer | Dave Barach <openvpp@barachs.net> | 2021-04-14 16:01:50 +0000 |
commit | 04ae8273f64a4f5a771da9b056bcccd1ebf9c7d9 (patch) | |
tree | 09597fb999f63e30a22424d9a3a0e616a24c28b9 /src/vnet/session/transport_types.h | |
parent | 7bc714da36bb9badec2ad5bf848c6b90caabad0a (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.h | 36 |
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) |