switch (adj->lookup_next_index)
{
case IP_LOOKUP_NEXT_MIDCHAIN:
- dpo_reset(&adj->sub_type.midchain.next_dpo);
+ adj_midchain_teardown(adj);
/* FALL THROUGH */
case IP_LOOKUP_NEXT_ARP:
case IP_LOOKUP_NEXT_REWRITE:
adj_glean_remove(adj->ia_nh_proto,
adj->rewrite_header.sw_if_index);
break;
- case IP_LOOKUP_NEXT_MCAST:
case IP_LOOKUP_NEXT_MCAST_MIDCHAIN:
+ adj_midchain_teardown(adj);
+ /* FALL THROUGH */
+ case IP_LOOKUP_NEXT_MCAST:
adj_mcast_remove(adj->ia_nh_proto,
adj->rewrite_header.sw_if_index);
break;