CSIT-1597 API cleanup: classify 26/22526/8
authorJan Gelety <jgelety@cisco.com>
Wed, 11 Sep 2019 17:49:29 +0000 (19:49 +0200)
committerJan Gelety <jgelety@cisco.com>
Tue, 10 Dec 2019 11:04:18 +0000 (11:04 +0000)
- cover API changes in VPP: https://gerrit.fd.io/r/c/vpp/+/21551
- move vpp stable build to 20.01-rc0~821
- tap tests tagged 'EXPECTED_FAILING' until necessary vpp api change
  https://gerrit.fd.io/r/c/vpp/+/21706 and csit code is adapted

Change-Id: If4b9b7b5bc207612d08aa8aa4469a5361e058fc3
Signed-off-by: Jan Gelety <jgelety@cisco.com>
VPP_STABLE_VER_CENTOS
VPP_STABLE_VER_UBUNTU_BIONIC
resources/api/vpp/supported_crcs.yaml
resources/libraries/python/Classify.py
resources/libraries/python/Policer.py
tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-dev.robot
tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-namespace-dev.robot
tests/vpp/device/interfaces/eth2p-ethipv4-l2bdbasemaclrn-eth-2tap-dev.robot

index 9a8e545..295a128 100644 (file)
@@ -1 +1 @@
-20.01-rc0~638-gea93e48cf
+20.01-rc0~821_g39d6911~b8483
index 9a8e545..98a8c89 100644 (file)
@@ -1 +1 @@
-20.01-rc0~638-gea93e48cf
+20.01-rc0~821-g39d69112f
index 2436ae5..402436c 100644 (file)
 # Use bash command "env LC_COLLATE=C sort -u" if not clear.
 
 # https://logs.fd.io/production/vex-yul-rot-jenkins-1
-# /vpp-beta-merge-master-ubuntu1804/3866/archives/build-root/
-20.01-rc0~453:
-    acl_add_replace: '0x13bc8539'  # dev
-    acl_add_replace_reply: '0xac407b0c'  # dev
-    acl_details: '0xf89d7a88'  # perf teardown
-    acl_dump: '0xef34fea4'  # perf teardown
-    acl_interface_list_details: '0xd5e80809'  # perf teardown
-    acl_interface_list_dump: '0x529cb13f'  # perf teardown
-    acl_interface_set_acl_list: '0x8baece38'  # perf
-    acl_interface_set_acl_list_reply: '0xe8d4e804'  # perf
-    # 6x^ tc01-64B-1c-ethip4udp-ip4base-iacl1sf-10kflows-mrr
-    #     tc01-64B-1c-ethip4udp-ip4base-iacl1sl-10kflows-mrr
-    # ^^ ip4fwdANDiaclANDacl10AND100_flows
-    avf_create: '0xdaab8ae2'  # dev
-    avf_create_reply: '0xfda5941f'  # dev
-    bond_create: '0x48883c7e'  # perf
-    bond_create_reply: '0x5383d31f'  # perf
-    bond_enslave: '0x076ecfa7'  # perf
-    bond_enslave_reply: '0xe8d4e804'  # perf
-    # 4x^ tc01-64B-1c-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr
-    # ^ l2xcfwdANDlbond_1lANDnf_testpmd
-    bridge_domain_add_del: '0xc6360720'  # dev
-    bridge_domain_add_del_reply: '0xe8d4e804'  # dev
-    # bridge_domain_dump / details # honeycomb
-    classify_add_del_session: '0x85fd79f4'  # dev
-    classify_add_del_session_reply: '0xe8d4e804'  # dev
-    classify_add_del_table: '0x9bd794ae'  # dev
-    classify_add_del_table_reply: '0x05486349'  # dev
-    # classify_session_dump / details # honeycomb
-    # classify_table_by_interface / reply # honeycomb
-    # classify_table_info / reply # honeycomb
-    cli_inband: '0xf8377302'  # dev setup
-    cli_inband_reply: '0x05879051'  # dev setup
-    cop_interface_enable_disable: '0x5501adee'  # dev
-    cop_interface_enable_disable_reply: '0xe8d4e804'  # dev
-    cop_whitelist_enable_disable: '0xdebe13ea'  # dev
-    cop_whitelist_enable_disable_reply: '0xe8d4e804'  # dev
-    create_loopback: '0x42bb5d22'  # dev
-    create_loopback_reply: '0x5383d31f'  # dev
-    create_subif: '0xcb371063'  # perf
-    create_subif_reply: '0x5383d31f'  # perf
-    # ^^ tc01-64B-1c-dot1ad-l2xcbase-mrr
-    # ^ 3n: dot1adANDl2xcfwd
-    create_vhost_user_if: '0xa3438cd4'  # dev
-    create_vhost_user_if_reply: '0xfda5941f'  # dev
-    create_vlan_subif: '0xaf34ac8b'  # dev
-    create_vlan_subif_reply: '0x5383d31f'  # dev
-    # dhcp_proxy_dump / details # honeycomb
-    gbp_bridge_domain_add: '0x70f1069c'  # dev
-    gbp_bridge_domain_add_reply: '0xe8d4e804'  # dev
-    gbp_contract_add_del: '0x5b63d90a'  # dev
-    gbp_contract_add_del_reply: '0x1992deab'  # dev
-    gbp_endpoint_add: '0xf0efa120'  # dev
-    gbp_endpoint_add_reply: '0x1dd3ff3e'  # dev
-    gbp_endpoint_group_add: '0x1031b376'  # dev
-    gbp_endpoint_group_add_reply: '0xe8d4e804'  # dev
-    gbp_ext_itf_add_del: '0x6995e85f'  # dev
-    gbp_ext_itf_add_del_reply: '0xe8d4e804'  # dev
-    gbp_route_domain_add: '0x1560adc7'  # dev
-    gbp_route_domain_add_reply: '0xe8d4e804'  # dev
-    gbp_subnet_add_del: '0xf42b9430'  # dev
-    gbp_subnet_add_del_reply: '0xe8d4e804'  # dev
-    gpe_enable_disable: '0xeb0e943b'  # dev
-    gpe_enable_disable_reply: '0xe8d4e804'  # dev
-    # gre_tunnel_add_del / reply # unused L1 keyword: create_gre_tunnel_interface
-    hw_interface_set_mtu: '0xe6746899'  # dev
-    hw_interface_set_mtu_reply: '0xe8d4e804'  # dev
-    input_acl_set_interface: '0xe09537b0'  # dev
-    input_acl_set_interface_reply: '0xe8d4e804'  # dev
-    ip_address_details: '0x7002eee7'  # dev
-    ip_address_dump: '0x6b7bcd0a'  # dev
-    ip_neighbor_add_del: '0x029dad44'  # dev
-    ip_neighbor_add_del_reply: '0x1992deab'  # dev
-    # ip_probe_neighbor / reply # unused L1 keyword vpp_ip_probe
-    ip_route_add_del: '0x5ceee41c'  # dev
-    ip_route_add_del_reply: '0x1992deab'  # dev
-    # ip_source_check_interface_add_del / reply # unused L1 keyword vpp_ip_source_check_setup
-    ip_table_add_del: '0xe5d378f2'  # dev
-    ip_table_add_del_reply: '0xe8d4e804'  # dev
-    ipsec_interface_add_del_spd: '0x1e3b8286'  # dev
-    ipsec_interface_add_del_spd_reply: '0xe8d4e804'  # dev
-    ipsec_sad_entry_add_del: '0xa25ab61e'  # dev
-    ipsec_sad_entry_add_del_reply: '0x9ffac24b'  # dev
-    ipsec_select_backend: '0x4fd24836'  # perf
-    ipsec_select_backend_reply: '0xe8d4e804'  # perf
-    # ^^ tc01-64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-mrr
-    # ^ nic_intel-xl710ANDipsechwANDipsecintANDtnl_1ANDaes_256_gcm
-    ipsec_spd_add_del: '0x9ffdf5da'  # dev
-    ipsec_spd_add_del_reply: '0xe8d4e804'  # dev
-    ipsec_spd_entry_add_del: '0xdb217840'  # dev
-    ipsec_spd_entry_add_del_reply: '0x9ffac24b'  # dev
-    ipsec_tunnel_if_add_del: '0xd5a98274'  # perf
-    ipsec_tunnel_if_add_del_reply: '0xfda5941f'  # perf
-    # ^^ tc01-64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-mrr
-    # ^ See select_backend.
-    # l2_fib_table_dump / details # honeycomb
-    l2_interface_vlan_tag_rewrite: '0xb90be6b4'  # dev
-    l2_interface_vlan_tag_rewrite_reply: '0xe8d4e804'  # dev
-    l2_patch_add_del: '0x62506e63'  # perf
-    l2_patch_add_del_reply: '0xe8d4e804'  # perf
-    # ^^ tc01-64B-1c-avf-eth-l2patch-mrr # currently failing after calls
-    # ^ l2patchANDdrv_avf
-    # l2fib_add_del / reply # unused L1 keyword: vpp_add_l2fib_entry
-    lb_conf: '0x22ddb739'  # perf
-    lb_conf_reply: '0xe8d4e804'  # perf
-    lb_add_del_vip: '0xd15b7ddc'  # perf
-    lb_add_del_vip_reply: '0xe8d4e804'  # perf
-    lb_add_del_as: '0x78628987'  # perf
-    lb_add_del_as_reply: '0xe8d4e804'  # perf
-    lb_add_del_intf_nat4: '0x47d6e753'  # perf
-    lb_add_del_intf_nat4_reply: '0xe8d4e804'  # perf
-    # 8x^ tc01-64B-1c-ethip4-loadbalancer-nat4
-    # ^ 2n: loadbalancer_nat4
-    lisp_add_del_adjacency: '0xf047390d'  # dev
-    lisp_add_del_adjacency_reply: '0xe8d4e804'  # dev
-    lisp_add_del_local_eid: '0xe6d00717'  # dev
-    lisp_add_del_local_eid_reply: '0xe8d4e804'  # dev
-    lisp_add_del_locator: '0x006a4240'  # dev
-    lisp_add_del_locator_reply: '0xe8d4e804'  # dev
-    lisp_add_del_locator_set: '0x06968e38'  # dev
-    lisp_add_del_locator_set_reply: '0xb6666db4'  # dev
-    # lisp_add_del_map_resolver / reply # unused L2 keyword: Configure LISP map resolver address
-    lisp_add_del_remote_mapping: '0xb879c3a9'  # dev
-    lisp_add_del_remote_mapping_reply: '0xe8d4e804'  # dev
-    lisp_eid_table_add_del_map: '0x59e9975e'  # perf
-    lisp_eid_table_add_del_map_reply: '0xe8d4e804'  # perf
-    # ^^ tc01-64B-1c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr # currently failing before calls
-    # ^ ipsecANDlispgpe
-    # lisp_eid_table_dump / details # unused L2 keyword: LISP eid address should be set correctly to eid table
-    lisp_enable_disable: '0xeb0e943b'  # dev
-    lisp_enable_disable_reply: '0xe8d4e804'  # dev
-    # lisp_locator_set_dump / details # unused L2 keyword: LISP locator_set shpuld be configured correctly
-    # lisp_map_server_dump / details # honeycomb
-    # lisp_map_resolver_dump / details # unused L2 keyword: LISP map resolver address should be configured correctly
-    macip_acl_add: '0x0c680ca5'  # perf
-    macip_acl_add_reply: '0xac407b0c'  # perf
-    macip_acl_details: '0xe164e69a'  # perf teardown
-    macip_acl_dump: '0xef34fea4'  # perf teardown
-    macip_acl_interface_add_del: '0x6a6be97c'  # perf
-    macip_acl_interface_add_del_reply: '0xe8d4e804'  # perf
-    macip_acl_interface_get: '0x51077d14'  # perf teardown
-    macip_acl_interface_get_reply: '0xaccf9b05'  # perf teardown
-    # 8x^ tc01-64B-1c-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-mrr
-    # ^ macipANDacl1AND100_flows
-    memif_create: '0xb1b25061'  # dev
-    memif_create_reply: '0x5383d31f'  # dev
-    memif_details: '0xd0382c4c'  # dev
-    memif_dump: '0x51077d14'  # dev
-    memif_socket_filename_add_del: '0xa2ce1a10'  # dev
-    memif_socket_filename_add_del_reply: '0xe8d4e804'  # dev
-    nat44_interface_add_del_feature: '0xf3699b83'  # perf
-    nat44_interface_add_del_feature_reply: '0xe8d4e804'  # perf
-    nat_det_add_del_map: '0x112fde05'  # perf
-    nat_det_add_del_map_reply: '0xe8d4e804'  # perf
-    nat_show_config: '0x51077d14'  # perf teardown
-    nat_show_config_reply: '0x006a0786'  # perf teardown
-    # 6x^ tc01-64B-1c-ethip4udp-ip4base-nat44-mrr
-    # ^ nat44NOTscaleNOTsrc_user_1
-    policer_add_del: '0xdfea2be8'  # dev
-    policer_add_del_reply: '0xa177cef2'  # dev
-    policer_classify_set_interface: '0xe09537b0'  # dev
-    policer_classify_set_interface_reply: '0xe8d4e804'  # dev
-    # 4x^ tc01-64B-ethip4-ip4base-ipolicemarkbase-dev
-    rdma_create: '0x541ffa8e'  # perf
-    rdma_create_reply: '0xfda5941f'  # perf
-    # show_lisp_map_register_state / reply # honeycomb
-    # show_lisp_map_request_mode / reply # honeycomb
-    # show_lisp_pitr / reply # honeycomb
-    # show_lisp_rloc_probe_state / reply # honeycomb
-    # show_lisp_status / reply # unused L2 keywords: LISP should be enabled / disabled
-    # show_lisp_use_petr / reply # honeycomb
-    show_threads: '0x51077d14'  # dev
-    show_threads_reply: '0xf5e0b66f'  # dev
-    show_version: '0x51077d14'  # dev setup
-    show_version_reply: '0xc919bde1'  # dev setup
-    sr_localsid_add_del: '0xb30489eb'  # perf
-    sr_localsid_add_del_reply: '0xe8d4e804'  # perf
-    sr_localsids_details: '0x0791babc'  # perf teardown
-    sr_localsids_dump: '0x51077d14'  # perf teardown
-    sr_policies_details: '0x5087f460'  # perf teardown
-    sr_policies_dump: '0x51077d14'  # perf teardown
-    sr_policy_add: '0x4b6e2484'  # perf
-    sr_policy_add_reply: '0xe8d4e804'  # perf
-    sr_set_encap_source: '0xd05bb4de'  # perf
-    sr_set_encap_source_reply: '0xe8d4e804'  # perf
-    sr_steering_add_del: '0x28b5dcab'  # perf
-    sr_steering_add_del_reply: '0xe8d4e804'  # perf
-    sr_steering_pol_details: '0x5627d483'  # perf teardown
-    sr_steering_pol_dump: '0x51077d14'  # perf teardown
-    # 14x^ tc01-78B-1c-ethip6ip6-ip6base-srv6enc1sid-mrr
-    # ^ srv6_1sid
-    sw_interface_add_del_address: '0x5803d5c4'  # dev
-    sw_interface_add_del_address_reply: '0xe8d4e804'  # dev
-    sw_interface_bond_details: '0xf5ef2106'  # perf
-    sw_interface_bond_dump: '0x51077d14'  # perf
-    # ^^ see bond_*
-    sw_interface_details: '0x17b69fa2'  # dev setup
-    sw_interface_dump: '0xaa610c27'  # dev setup
-    # sw_interface_get_table / reply # honeycomb
-    sw_interface_ip6nd_ra_config: '0xc3f02daa'  # dev
-    sw_interface_ip6nd_ra_config_reply: '0xe8d4e804'  # dev
-    sw_interface_rx_placement_details: '0xf6d7d024'  # perf
-    sw_interface_rx_placement_dump: '0xf9e6675e'  # perf
-    # ^^ tc01-64B-1c-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-mrr
-    # ^ dot1qANDl2bdmaclrnANDbaseANDmemif
-    sw_interface_set_flags: '0x6a2b491a'  # dev
-    sw_interface_set_flags_reply: '0xe8d4e804'  # dev
-    sw_interface_set_l2_bridge: '0x5579f809'  # dev
-    sw_interface_set_l2_bridge_reply: '0xe8d4e804'  # dev
-    sw_interface_set_l2_xconnect: '0x95de3988'  # dev
-    sw_interface_set_l2_xconnect_reply: '0xe8d4e804'  # dev
-    sw_interface_set_rx_placement: '0xdb65f3c9'  # perf
-    sw_interface_set_rx_placement_reply: '0xe8d4e804'  # perf
-    # ^^ see tc01-64B-1c-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-mrr above
-    sw_interface_set_table: '0xdf42a577'  # dev
-    sw_interface_set_table_reply: '0xe8d4e804'  # dev
-    sw_interface_set_unnumbered: '0x938ef33b'  # perf
-    sw_interface_set_unnumbered_reply: '0xe8d4e804'  # perf
-    # ^^ see ipsec_tunnel_if_add_del
-    sw_interface_set_vxlan_bypass: '0xe74ca095'  # dev
-    sw_interface_set_vxlan_bypass_reply: '0xe8d4e804'  # dev
-    sw_interface_slave_details: '0x3c4a0e23'  # perf
-    sw_interface_slave_dump: '0xf9e6675e'  # perf
-    # ^^ see bond_*
-    # sw_interface_span_dump / details # honeycomb
-    sw_interface_tap_v2_dump: '0x51077d14'  # dev
-    sw_interface_tap_v2_details: '0x5ee87a5f'  # dev
-    sw_interface_vhost_user_details: '0x91ff3307'  # dev
-    sw_interface_vhost_user_dump: '0x51077d14'  # dev
-    tap_create_v2: '0x8fa99320'  # dev
-    tap_create_v2_reply: '0xfda5941f'  # dev
-    vxlan_add_del_tunnel: '0x00f4bdd0'  # dev
-    vxlan_add_del_tunnel_reply: '0xfda5941f'  # dev
-    # vxlan_gpe_tunnel_dump / details # honeycomb
-    # vxlan_tunnel_dump /details # unused L2 keyword: Get VXLAN dump
-# Please keep alphabetic order.
-# Use bash command "env LC_COLLATE=C sort -u" if not clear.
-
-
-# https://gerrit.fd.io/r/c/vpp/+/21551
-21551/27:
+# /vpp-merge-master-ubuntu1804/244/
+20.01-rc0~821:
     acl_add_replace: '0x13bc8539'  # dev
     acl_add_replace_reply: '0xac407b0c'  # dev
     acl_details: '0xf89d7a88'  # perf teardown
     vxlan_add_del_tunnel_reply: '0xfda5941f'  # dev
     # vxlan_gpe_tunnel_dump / details # honeycomb
     # vxlan_tunnel_dump /details # unused L2 keyword: Get VXLAN dump
+# Please keep alphabetic order.
+# Use bash command "env LC_COLLATE=C sort -u" if not clear.
 
 
 # Hint to see the currently used command messages:
index 4d05079..016dc57 100644 (file)
@@ -170,7 +170,7 @@ class Classify:
         """Add or delete a classify table.
 
         :param node: VPP node to create classify table.
-        :param is_add: If 1 the table is added, if 0 the table is deleted.
+        :param is_add: If True the table is added, if False table is deleted.
         :param mask: ACL mask in hexstring format.
         :param match_n_vectors: Number of vectors to match (Default value = ~0).
         :param table_index: Index of the classify table. (Default value = ~0)
@@ -194,8 +194,8 @@ class Classify:
             This is valid only if current_data_flag is set to 1.
             (Default value = 0)
         :type node: dict
-        :type is_add: int
-        :type mask: bytes
+        :type is_add: bool
+        :type mask: str
         :type match_n_vectors: int
         :type table_index: int
         :type nbuckets: int
@@ -214,6 +214,7 @@ class Classify:
         cmd = u"classify_add_del_table"
         args = dict(
             is_add=is_add,
+            del_chain=False,
             table_index=table_index,
             nbuckets=nbuckets,
             memory_size=memory_size,
@@ -243,7 +244,8 @@ class Classify:
         """Add or delete a classify session.
 
         :param node: VPP node to create classify session.
-        :param is_add: If 1 the session is added, if 0 the session is deleted.
+        :param is_add: If True the session is added, if False the session
+            is deleted.
         :param table_index: Index of the table to add/del the session.
         :param match: For add, match value for session, required, needs to
             include bytes in front with length of skip_n_vectors of target table
@@ -260,15 +262,14 @@ class Classify:
             2: Classified IP packets will be looked up from the specified ipv6
                fib table (configured by metadata as VRF id).
                Only valid for L3 input ACL node
-            3: Classified packet will be steered to source routig policy of
+            3: Classified packet will be steered to source routing policy of
                given index (in metadata).
                This is only valid for IPv6 packets redirected to a source
                routing node.
-        :param metadata: Valid only if action != 0
-            VRF id if action is 1 or 2. SR policy index if action is 3.
-            (Default value = 0)
+        :param metadata: Valid only if action != 0. VRF id if action is 1 or 2.
+            SR policy index if action is 3. (Default value = 0)
         :type node: dict
-        :type is_add: int
+        :type is_add: bool
         :type table_index: int
         :type match: bytes
         :type opaque_index: int
@@ -426,7 +427,7 @@ class Classify:
 
         return Classify._classify_add_del_table(
             node,
-            is_add=1,
+            is_add=True,
             mask=mask,
             match_n_vectors=match_n,
             skip_n_vectors=skip_n
@@ -435,8 +436,8 @@ class Classify:
     @staticmethod
     def vpp_configures_classify_session_l3(
             node, acl_method, table_index, skip_n, match_n, ip_version,
-            direction, address, hit_next_index=Constants.BITWISE_NON_ZERO,
-            opaque_index=Constants.BITWISE_NON_ZERO):
+            direction, address, hit_next_index=None,
+            opaque_index=Constants.BITWISE_NON_ZERO, action=0, metadata=0):
         """Configuration of classify session for IP address filtering.
 
         :param node: VPP node to setup classify session.
@@ -448,8 +449,21 @@ class Classify:
         :param direction: Direction of traffic - src/dst.
         :param address: IPv4 or IPv6 address.
         :param hit_next_index: hit_next_index of new session.
-            (Default value = ~0)
+            (Default value = None)
         :param opaque_index: opaque_index of new session. (Default value = ~0)
+        :param action: 0: No action (by default) metadata is not used.
+            1: Classified IP packets will be looked up from the specified ipv4
+               fib table (configured by metadata as VRF id).
+               Only valid for L3 input ACL node
+            2: Classified IP packets will be looked up from the specified ipv6
+               fib table (configured by metadata as VRF id).
+               Only valid for L3 input ACL node
+            3: Classified packet will be steered to source routing policy of
+               given index (in metadata).
+               This is only valid for IPv6 packets redirected to a source
+               routing node.
+        :param metadata: Valid only if action != 0. VRF id if action is 1 or 2.
+            SR policy index if action is 3. (Default value = 0)
         :type node: dict
         :type acl_method: str
         :type table_index: int
@@ -460,15 +474,17 @@ class Classify:
         :type address: str
         :type hit_next_index: int
         :type opaque_index: int
+        :type action: int
+        :type metadata: int
         :raises ValueError: If the parameter 'direction' has incorrect value.
         """
         match_f = dict(
             ip4=Classify._build_ip_match,
             ip6=Classify._build_ip6_match
         )
-        action = dict(
-            permit=0,
-            deny=1
+        acl_hit_next_index = dict(
+            permit=Constants.BITWISE_NON_ZERO,
+            deny=0
         )
 
         if ip_version in (u"ip4", u"ip6"):
@@ -493,12 +509,14 @@ class Classify:
 
         Classify._classify_add_del_session(
             node,
-            is_add=1,
+            is_add=True,
             table_index=table_index,
-            hit_next_index=hit_next_index,
+            hit_next_index=hit_next_index if hit_next_index is not None
+            else acl_hit_next_index[acl_method],
             opaque_index=opaque_index,
             match=match,
-            action=action[acl_method]
+            action=action,
+            metadata=metadata
         )
 
     @staticmethod
index d5500e1..2c4cc66 100644 (file)
@@ -180,7 +180,7 @@ class Policer:
     def policer_classify_set_interface(
             node, interface, ip4_table_index=Constants.BITWISE_NON_ZERO,
             ip6_table_index=Constants.BITWISE_NON_ZERO,
-            l2_table_index=Constants.BITWISE_NON_ZERO, is_add=1):
+            l2_table_index=Constants.BITWISE_NON_ZERO, is_add=True):
         """Set/unset policer classify interface.
 
         :param node: VPP node.
@@ -192,12 +192,13 @@ class Policer:
             (Default value = ~0)
         :param l2_table_index: L2 classify table index (~0 to skip).
             (Default value = ~0)
-        :param is_add: Set if non-zero, else unset.
+        :param is_add: Set if True, else unset.
         :type node: dict
         :type interface: str or int
         :type ip4_table_index: int
         :type ip6_table_index: int
         :type l2_table_index: int
+        :type is_add: bool
         """
         if isinstance(interface, str):
             sw_if_index = Topology.get_interface_sw_index(node, interface)
@@ -206,8 +207,8 @@ class Policer:
 
         cmd = u"policer_classify_set_interface"
         args = dict(
-            is_add=int(is_add),
-            sw_if_index=sw_if_index,
+            is_add=is_add,
+            sw_if_index=int(sw_if_index),
             ip4_table_index=int(ip4_table_index),
             ip6_table_index=int(ip6_table_index),
             l2_table_index=int(l2_table_index)
index 33ac540..4446b3d 100644 (file)
@@ -16,6 +16,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
 | ... | NIC_Virtual | ETH | IP4FWD | BASE | IP4BASE | 1TAP | DRV_VFIO_PCI
+| ... | EXPECTED_FAILING
 |
 | Suite Setup | Setup suite single link | scapy
 | Test Setup | Setup test | namespace
index 74f8c37..e76ff7c 100644 (file)
@@ -16,7 +16,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
 | ... | NIC_Virtual | ETH | IP4FWD | BASE | IP4BASE | 1TAP | NAMESPACE
-| ... | DRV_VFIO_PCI
+| ... | DRV_VFIO_PCI | EXPECTED_FAILING
 |
 | Suite Setup | Setup suite single link | scapy
 | Test Setup | Setup test | namespace
index c82fed9..f2f821d 100644 (file)
@@ -16,6 +16,7 @@
 |
 | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
 | ... | NIC_Virtual | ETH | L2BD | BASE | 2TAP | DRV_VFIO_PCI
+| ... | EXPECTED_FAILING
 |
 | Suite Setup | Setup suite single link | scapy
 | Test Setup | Setup test | namespace