diff options
Diffstat (limited to 'src/plugins/acl/sess_mgmt_node.c')
-rw-r--r-- | src/plugins/acl/sess_mgmt_node.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/plugins/acl/sess_mgmt_node.c b/src/plugins/acl/sess_mgmt_node.c index b4faf554612..103db35f7dc 100644 --- a/src/plugins/acl/sess_mgmt_node.c +++ b/src/plugins/acl/sess_mgmt_node.c @@ -48,6 +48,26 @@ fa_session_get_shortest_timeout (acl_main_t * am) return timeout; } +static u8 * +format_session_bihash_5tuple (u8 * s, va_list * args) +{ + fa_5tuple_t *p5t = va_arg (*args, fa_5tuple_t *); + fa_full_session_id_t *sess = (void *) &p5t->pkt; + + return format (s, "l3 %U -> %U" + " l4 lsb_of_sw_if_index %d proto %d l4_is_input %d l4_slow_path %d l4_reserved0 %d port %d -> %d | sess id %d thread id %d epoch %04x", + format_ip46_address, &p5t->addr[0], + IP46_TYPE_ANY, + format_ip46_address, &p5t->addr[1], + IP46_TYPE_ANY, + p5t->l4.lsb_of_sw_if_index, + p5t->l4.proto, p5t->l4.is_input, p5t->l4.is_slowpath, + p5t->l4.reserved0, p5t->l4.port[0], p5t->l4.port[1], + sess->session_index, sess->thread_index, + sess->intf_policy_epoch); +} + + static void acl_fa_verify_init_sessions (acl_main_t * am) { @@ -73,6 +93,8 @@ acl_fa_verify_init_sessions (acl_main_t * am) "ACL plugin FA session bihash", am->fa_conn_table_hash_num_buckets, am->fa_conn_table_hash_memory_size); + clib_bihash_set_kvp_format_fn_40_8 (&am->fa_sessions_hash, + format_session_bihash_5tuple); am->fa_sessions_hash_is_initialized = 1; } } |