{
ASSERT (fib_entry_is_sourced (cc->cc_fei, cnat_fib_source));
fib_table_entry_delete_index (cc->cc_fei, cnat_fib_source);
- ASSERT (!fib_entry_is_sourced (cc->cc_fei, cnat_fib_source));
}
cnat_client_db_remove (cc);
dpo_reset (&cc->cc_parent);
vec_reset_length (del_vec);
clib_spinlock_lock (&cnat_client_db.throttle_pool_lock[i]);
/* *INDENT-OFF* */
- pool_foreach(addr, cnat_client_db.throttle_pool[i], ({
+ pool_foreach (addr, cnat_client_db.throttle_pool[i]) {
cc = (AF_IP4 == addr->version ?
cnat_client_ip4_find (&ip_addr_v4(addr)) :
cnat_client_ip6_find (&ip_addr_v6(addr)));
cnat_client_cnt_session (cc);
vec_add1(del_vec, addr - cnat_client_db.throttle_pool[i]);
}
- }));
+ }
/* *INDENT-ON* */
vec_foreach (ai, del_vec)
{
cnat_client_translation_added (index_t cci)
{
cnat_client_t *cc;
+ if (INDEX_INVALID == cci)
+ return;
+
cc = cnat_client_get (cci);
ASSERT (!(cc->flags & CNAT_FLAG_EXPIRES));
cc->tr_refcnt++;
cnat_client_translation_deleted (index_t cci)
{
cnat_client_t *cc;
+ if (INDEX_INVALID == cci)
+ return;
cc = cnat_client_get (cci);
ASSERT (!(cc->flags & CNAT_FLAG_EXPIRES));
if (INDEX_INVALID == cci)
{
/* *INDENT-OFF* */
- pool_foreach_index(cci, cnat_client_pool, ({
+ pool_foreach_index (cci, cnat_client_pool)
vlib_cli_output(vm, "%U", format_cnat_client, cci, 0);
- }))
/* *INDENT-ON* */
vlib_cli_output (vm, "%d clients", pool_elts (cnat_client_pool));