|
FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
|
Go to the documentation of this file.
16 #ifndef SRC_VNET_SESSION_SESSION_LOOKUP_H_
17 #define SRC_VNET_SESSION_SESSION_LOOKUP_H_
23 #define HALF_OPEN_LOOKUP_INVALID_VALUE ((u64)~0)
36 ip6_address_t * rmt,
u16 lcl_port,
65 u16 lcl_port,
u16 rmt_port,
106 typedef enum _session_rule_scope
112 typedef struct _session_rule_add_del_args
int session_lookup_add_connection(transport_connection_t *tc, u64 value)
Add transport connection to a session table.
@ SESSION_LOOKUP_RESULT_NONE
void session_lookup_dump_local_rules_table(u32 fib_index, u8 fib_proto, u8 transport_proto)
struct _app_namespace app_namespace_t
void session_lookup_show_table_entries(vlib_main_t *vm, session_table_t *table, u8 type, u8 is_local)
@ SESSION_LOOKUP_RESULT_FILTERED
session_t * session_lookup_listener_wildcard(u32 table_index, session_endpoint_t *sep)
Lookup listener wildcard match.
session_t * session_lookup_safe6(u32 fib_index, ip6_address_t *lcl, ip6_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto)
Lookup session with ip6 and transport layer information.
int session_lookup_del_half_open(transport_connection_t *tc)
void session_lookup_init(void)
vlib_main_t * vm
X-connect all packets from the HOST to the PHY.
struct _transport_connection transport_connection_t
u32 session_lookup_get_or_alloc_index_for_fib(u32 fib_proto, u32 fib_index)
transport_connection_t * session_lookup_connection4(u32 fib_index, ip4_address_t *lcl, ip4_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto)
Lookup connection with ip4 and transport layer information.
u64 session_lookup_endpoint_listener(u32 table_index, session_endpoint_t *sepi, u8 use_rules)
Lookup listener for session endpoint in table.
int session_lookup_del_session_endpoint(u32 table_index, session_endpoint_t *sep)
enum _session_rule_scope session_rule_scope_e
transport_connection_t * session_lookup_half_open_connection(u64 handle, u8 proto, u8 is_ip4)
session_t * session_lookup_listener4(u32 fib_index, ip4_address_t *lcl, u16 lcl_port, u8 proto, u8 use_wildcard)
transport_connection_t * session_lookup_connection6(u32 fib_index, ip6_address_t *lcl, ip6_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto)
Lookup connection with ip6 and transport layer information.
session_t * session_lookup_safe4(u32 fib_index, ip4_address_t *lcl, ip4_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto)
Lookup session with ip4 and transport layer information.
@ SESSION_LOOKUP_RESULT_WRONG_THREAD
session_t * session_lookup_global_session_endpoint(session_endpoint_t *)
int session_lookup_add_session_endpoint(u32 table_index, session_endpoint_t *sep, u64 value)
transport_connection_t * session_lookup_connection(u32 fib_index, ip46_address_t *lcl, ip46_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto, u8 is_ip4)
session_t * session_lookup_listener6(u32 fib_index, ip6_address_t *lcl, u16 lcl_port, u8 proto, u8 use_wildcard)
u64 session_lookup_half_open_handle(transport_connection_t *tc)
u32 session_lookup_get_index_for_fib(u32 fib_proto, u32 fib_index)
struct _session_rules_table_add_del_args session_rule_table_add_del_args_t
@ SESSION_RULE_SCOPE_LOCAL
void session_lookup_dump_rules_table(u32 fib_index, u8 fib_proto, u8 transport_proto)
int session_lookup_del_session(session_t *s)
struct _session_endpoint session_endpoint_t
u64 session_lookup_local_endpoint(u32 table_index, session_endpoint_t *sep)
Look up endpoint in local session table.
void session_lookup_set_tables_appns(app_namespace_t *app_ns)
Mark (global) tables as pertaining to app ns.
transport_connection_t * session_lookup_connection_wt4(u32 fib_index, ip4_address_t *lcl, ip4_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto, u32 thread_index, u8 *is_filtered)
Lookup connection with ip4 and transport layer information.
int session_lookup_del_connection(transport_connection_t *tc)
Delete transport connection from session table.
enum session_lookup_result_ session_lookup_result_t
int session_lookup_add_half_open(transport_connection_t *tc, u64 value)
int vnet_session_rule_add_del(session_rule_add_del_args_t *args)
transport_connection_t * session_lookup_connection_wt6(u32 fib_index, ip6_address_t *lcl, ip6_address_t *rmt, u16 lcl_port, u16 rmt_port, u8 proto, u32 thread_index, u8 *is_filtered)
Lookup connection with ip6 and transport layer information.
vl_api_fib_path_type_t type
struct _session_lookup_table session_table_t
@ SESSION_RULE_SCOPE_GLOBAL
int session_lookup_del_session_endpoint2(session_endpoint_t *sep)
session_t * session_lookup_listener(u32 table_index, session_endpoint_t *sep)
Lookup listener, exact or proxy (inaddr_any:0) match.
struct _session_rule_add_del_args session_rule_add_del_args_t