18 #ifndef __included_nat44_inlines_h__ 19 #define __included_nat44_inlines_h__ 38 u64 sess_timeout_time;
49 while (elt->
value != ~0)
54 sess_timeout_time = s->last_heard +
57 if (now < sess_timeout_time)
90 nat44_user_try_cleanup (u, thread_index, now);
u32 sessions_per_user_list_head_index
static_always_inline void nat44_user_try_cleanup(snat_user_t *u, u32 thread_index, f64 now)
static u32 nat44_session_get_timeout(snat_main_t *sm, snat_session_t *s)
void nat_free_session_data(snat_main_t *sm, snat_session_t *s, u32 thread_index, u8 is_ha)
Free NAT44 session data (lookup keys, external addrres port)
clib_bihash_8_8_t user_hash
#define static_always_inline
#define pool_foreach(VAR, POOL, BODY)
Iterate through pool.
static void nat44_delete_session(snat_main_t *sm, snat_session_t *ses, u32 thread_index)
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
8 octet key, 8 octet key value pair
snat_main_per_thread_data_t * per_thread_data
static_always_inline void nat44_session_try_cleanup(ip4_address_t *addr, u32 fib_index, u32 thread_index, f64 now)
static_always_inline void nat44_session_cleanup(snat_session_t *s, u32 thread_index)
The NAT44 inline functions.
snat_session_t * sessions
static uword pool_elts(void *v)
Number of active elements in a pool.