#include <vnet/session/session_table.h>
#include <vnet/session/session_types.h>
-#include <vnet/session/transport.h>
#include <vnet/session/application_namespace.h>
#define HALF_OPEN_LOOKUP_INVALID_VALUE ((u64)~0)
u16 rmt_port, u8 proto);
session_t *session_lookup_listener4 (u32 fib_index,
ip4_address_t * lcl, u16 lcl_port,
- u8 proto);
+ u8 proto, u8 use_wildcard);
session_t *session_lookup_listener6 (u32 fib_index,
ip6_address_t * lcl, u16 lcl_port,
- u8 proto);
+ u8 proto, u8 use_wildcard);
session_t *session_lookup_listener (u32 table_index,
session_endpoint_t * sep);
+session_t *session_lookup_listener_wildcard (u32 table_index,
+ session_endpoint_t * sep);
int session_lookup_add_connection (transport_connection_t * tc, u64 value);
int session_lookup_del_connection (transport_connection_t * tc);
u64 session_lookup_endpoint_listener (u32 table_index,
session_endpoint_t * sep, u64 value);
int session_lookup_del_session_endpoint (u32 table_index,
session_endpoint_t * sep);
+int session_lookup_del_session_endpoint2 (session_endpoint_t * sep);
int session_lookup_del_session (session_t * s);
int session_lookup_del_half_open (transport_connection_t * tc);
int session_lookup_add_half_open (transport_connection_t * tc, u64 value);
void session_lookup_dump_local_rules_table (u32 fib_index, u8 fib_proto,
u8 transport_proto);
-enum _session_rule_scope
+typedef enum _session_rule_scope
{
SESSION_RULE_SCOPE_GLOBAL = 1,
SESSION_RULE_SCOPE_LOCAL = 2,
u8 transport_proto;
} session_rule_add_del_args_t;
-clib_error_t *vnet_session_rule_add_del (session_rule_add_del_args_t * args);
+int vnet_session_rule_add_del (session_rule_add_del_args_t * args);
void session_lookup_set_tables_appns (app_namespace_t * app_ns);
void session_lookup_init (void);