NAT: TCP MSS clamping
[vpp.git] / test / vpp_papi_provider.py
index b575b8a..61d80b2 100644 (file)
@@ -1827,6 +1827,20 @@ class VppPapiProvider(object):
         """Get address and port assignment algorithm"""
         return self.api(self.papi.nat_get_addr_and_port_alloc_alg, {})
 
+    def nat_set_mss_clamping(self, enable=0, mss_value=1500):
+        """Set TCP MSS rewriting configuration
+
+        :param enable: disable(0)/enable(1) MSS rewriting feature
+        :param mss_value: MSS value to be used for MSS rewriting
+        """
+        return self.api(
+            self.papi.nat_set_mss_clamping,
+            {'enable': enable, 'mss_value': mss_value})
+
+    def nat_get_mss_clamping(self):
+        """Get TCP MSS rewriting configuration"""
+        return self.api(self.papi.nat_get_mss_clamping, {})
+
     def nat_det_close_session_out(
             self,
             out_addr,
@@ -2723,14 +2737,14 @@ class VppPapiProvider(object):
                          'protocol': protocol,
                          'vni': vni})
 
-    def vxlan_gbp_add_del_tunnel(
+    def vxlan_gbp_tunnel_add_del(
             self,
-            src_addr,
-            dst_addr,
+            src,
+            dst,
             mcast_sw_if_index=0xFFFFFFFF,
             is_add=1,
             is_ipv6=0,
-            encap_vrf_id=0,
+            encap_table_id=0,
             decap_next_index=0xFFFFFFFF,
             vni=0,
             instance=0xFFFFFFFF):
@@ -2740,23 +2754,27 @@ class VppPapiProvider(object):
         :param src_addr:
         :param is_add:  (Default value = 1)
         :param is_ipv6:  (Default value = 0)
-        :param encap_vrf_id:  (Default value = 0)
+        :param encap_table_id:  (Default value = 0)
         :param decap_next_index:  (Default value = 0xFFFFFFFF)
         :param mcast_sw_if_index:  (Default value = 0xFFFFFFFF)
         :param vni:  (Default value = 0)
         :param instance:  (Default value = 0xFFFFFFFF)
 
         """
-        return self.api(self.papi.vxlan_gbp_add_del_tunnel,
+        return self.api(self.papi.vxlan_gbp_tunnel_add_del,
                         {'is_add': is_add,
-                         'is_ipv6': is_ipv6,
-                         'src_address': src_addr,
-                         'dst_address': dst_addr,
-                         'mcast_sw_if_index': mcast_sw_if_index,
-                         'encap_vrf_id': encap_vrf_id,
-                         'decap_next_index': decap_next_index,
-                         'vni': vni,
-                         'instance': instance})
+                         'tunnel': {
+                             'src': src,
+                             'dst': dst,
+                             'mcast_sw_if_index': mcast_sw_if_index,
+                             'encap_table_id': encap_table_id,
+                             'decap_next_index': decap_next_index,
+                             'vni': vni,
+                             'instance': instance}})
+
+    def vxlan_gbp_tunnel_dump(self, sw_if_index=0xffffffff):
+        return self.api(self.papi.vxlan_gbp_tunnel_dump,
+                        {'sw_if_index': sw_if_index})
 
     def pppoe_add_del_session(
             self,
@@ -3432,15 +3450,20 @@ class VppPapiProvider(object):
                          'enable_ip6': 1 if enable_ip6 else 0,
                          })
 
-    def gbp_endpoint_add_del(self, is_add, sw_if_index, addr, is_ip6, epg):
-        """ GBP endpoint Add/Del """
-        return self.api(self.papi.gbp_endpoint_add_del,
-                        {'is_add': is_add,
-                         'endpoint': {
-                             'is_ip6': is_ip6,
-                             'sw_if_index': sw_if_index,
-                             'address': addr,
-                             'epg_id': epg}})
+    def gbp_endpoint_add(self, sw_if_index, ips, mac, epg):
+        """ GBP endpoint Add """
+        return self.api(self.papi.gbp_endpoint_add,
+                        {'endpoint': {
+                            'sw_if_index': sw_if_index,
+                            'ips': ips,
+                            'n_ips': len(ips),
+                            'mac': mac,
+                            'epg_id': epg}})
+
+    def gbp_endpoint_del(self, handle):
+        """ GBP endpoint Del """
+        return self.api(self.papi.gbp_endpoint_del,
+                        {'handle': handle})
 
     def gbp_endpoint_dump(self):
         """ GBP endpoint Dump """
@@ -3479,7 +3502,7 @@ class VppPapiProvider(object):
 
     def gbp_subnet_add_del(self, is_add, table_id,
                            is_internal,
-                           addr, addr_len,
+                           prefix,
                            sw_if_index=0xffffffff,
                            epg_id=0xffff,
                            is_ip6=False):
@@ -3491,8 +3514,7 @@ class VppPapiProvider(object):
                              'is_ip6': is_ip6,
                              'sw_if_index': sw_if_index,
                              'epg_id': epg_id,
-                             'address': addr,
-                             'address_length': addr_len,
+                             'prefix': prefix,
                              'table_id': table_id}})
 
     def gbp_subnet_dump(self):