nat: use correct data types for memory sizes
[vpp.git] / test / vpp_neighbor.py
index b38aae8..6172d8f 100644 (file)
@@ -5,7 +5,7 @@
 """
 
 from ipaddress import ip_address
-from vpp_object import *
+from vpp_object import VppObject
 from vpp_papi import mac_pton, VppEnum
 try:
     text_type = unicode
@@ -16,8 +16,11 @@ except NameError:
 def find_nbr(test, sw_if_index, nbr_addr, is_static=0, mac=None):
     ip_addr = ip_address(text_type(nbr_addr))
     e = VppEnum.vl_api_ip_neighbor_flags_t
-    nbrs = test.vapi.ip_neighbor_dump(sw_if_index,
-                                      is_ipv6=(6 is ip_addr.version))
+    if 6 == ip_addr.version:
+        af = VppEnum.vl_api_address_family_t.ADDRESS_IP6
+    else:
+        af = VppEnum.vl_api_address_family_t.ADDRESS_IP4
+    nbrs = test.vapi.ip_neighbor_dump(sw_if_index=sw_if_index, af=af)
 
     for n in nbrs:
         if ip_addr == n.neighbor.ip_address and \
@@ -58,6 +61,7 @@ class VppNeighbor(VppObject):
             flags=self.flags)
         self.stats_index = r.stats_index
         self._test.registry.register(self, self._test.logger)
+        return self
 
     def remove_vpp_config(self):
         self._test.vapi.ip_neighbor_add_del(
@@ -77,9 +81,6 @@ class VppNeighbor(VppObject):
                         self.nbr_addr,
                         self.is_static())
 
-    def __str__(self):
-        return self.object_id()
-
     def object_id(self):
         return ("%d:%s" % (self.sw_if_index, self.nbr_addr))