diff options
Diffstat (limited to 'vpp/vpp-api')
-rw-r--r-- | vpp/vpp-api/api.c | 15 | ||||
-rw-r--r-- | vpp/vpp-api/custom_dump.c | 1 | ||||
-rw-r--r-- | vpp/vpp-api/vpe.api | 1 |
3 files changed, 14 insertions, 3 deletions
diff --git a/vpp/vpp-api/api.c b/vpp/vpp-api/api.c index 00988184..fbebfa6b 100644 --- a/vpp/vpp-api/api.c +++ b/vpp/vpp-api/api.c @@ -3996,8 +3996,14 @@ static void vl_api_classify_set_interface_l2_tables_t_handler VALIDATE_SW_IF_INDEX (mp); - rv = vnet_l2_classify_set_tables (sw_if_index, ip4_table_index, - ip6_table_index, other_table_index); + if (mp->is_input) + rv = vnet_l2_input_classify_set_tables (sw_if_index, ip4_table_index, + ip6_table_index, + other_table_index); + else + rv = vnet_l2_output_classify_set_tables (sw_if_index, ip4_table_index, + ip6_table_index, + other_table_index); if (rv == 0) { @@ -4007,7 +4013,10 @@ static void vl_api_classify_set_interface_l2_tables_t_handler else enable = 0; - vnet_l2_classify_enable_disable (sw_if_index, enable); + if (mp->is_input) + vnet_l2_input_classify_enable_disable (sw_if_index, enable); + else + vnet_l2_output_classify_enable_disable (sw_if_index, enable); } BAD_SW_IF_INDEX_LABEL; diff --git a/vpp/vpp-api/custom_dump.c b/vpp/vpp-api/custom_dump.c index 913ad1c6..566bcb9f 100644 --- a/vpp/vpp-api/custom_dump.c +++ b/vpp/vpp-api/custom_dump.c @@ -1274,6 +1274,7 @@ static void *vl_api_classify_set_interface_l2_tables_t_print s = format (s, "ip4-table %d ", ntohl (mp->ip4_table_index)); s = format (s, "ip6-table %d ", ntohl (mp->ip6_table_index)); s = format (s, "other-table %d ", ntohl (mp->other_table_index)); + s = format (s, "is-input %d ", mp->is_input); FINISH; } diff --git a/vpp/vpp-api/vpe.api b/vpp/vpp-api/vpe.api index 0bfa2fa2..1f26d551 100644 --- a/vpp/vpp-api/vpe.api +++ b/vpp/vpp-api/vpe.api @@ -1731,6 +1731,7 @@ define classify_set_interface_l2_tables u32 ip4_table_index; u32 ip6_table_index; u32 other_table_index; + u8 is_input; }; /** \brief Set/unset l2 classification tables for an interface response |