Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
MAP: Use explicit address/prefix types in API
[vpp.git]
/
test
/
vpp_neighbor.py
diff --git
a/test/vpp_neighbor.py
b/test/vpp_neighbor.py
index
e8ba3b2
..
b4803c2
100644
(file)
--- a/
test/vpp_neighbor.py
+++ b/
test/vpp_neighbor.py
@@
-9,7
+9,7
@@
from vpp_object import *
from util import mactobinary
from util import mactobinary
-def find_nbr(test, sw_if_index, ip_addr, is_static=0, inet=AF_INET):
+def find_nbr(test, sw_if_index, ip_addr, is_static=0, inet=AF_INET
, mac=None
):
nbrs = test.vapi.ip_neighbor_dump(sw_if_index,
is_ipv6=1 if AF_INET6 == inet else 0)
if inet == AF_INET:
nbrs = test.vapi.ip_neighbor_dump(sw_if_index,
is_ipv6=1 if AF_INET6 == inet else 0)
if inet == AF_INET:
@@
-21,7
+21,11
@@
def find_nbr(test, sw_if_index, ip_addr, is_static=0, inet=AF_INET):
for n in nbrs:
if nbr_addr == n.ip_address[:s] \
and is_static == n.is_static:
for n in nbrs:
if nbr_addr == n.ip_address[:s] \
and is_static == n.is_static:
- return True
+ if mac:
+ if n.mac_address == mactobinary(mac):
+ return True
+ else:
+ return True
return False
return False
@@
-42,7
+46,7
@@
class VppNeighbor(VppObject):
self.nbr_addr_n = inet_pton(af, nbr_addr)
def add_vpp_config(self):
self.nbr_addr_n = inet_pton(af, nbr_addr)
def add_vpp_config(self):
- self._test.vapi.ip_neighbor_add_del(
+
r =
self._test.vapi.ip_neighbor_add_del(
self.sw_if_index,
self.mac_addr,
self.nbr_addr_n,
self.sw_if_index,
self.mac_addr,
self.nbr_addr_n,
@@
-50,6
+54,7
@@
class VppNeighbor(VppObject):
is_ipv6=1 if AF_INET6 == self.af else 0,
is_static=self.is_static,
is_no_adj_fib=self.is_no_fib_entry)
is_ipv6=1 if AF_INET6 == self.af else 0,
is_static=self.is_static,
is_no_adj_fib=self.is_no_fib_entry)
+ self.stats_index = r.stats_index
self._test.registry.register(self, self._test.logger)
def remove_vpp_config(self):
self._test.registry.register(self, self._test.logger)
def remove_vpp_config(self):
@@
-73,3
+78,7
@@
class VppNeighbor(VppObject):
def object_id(self):
return ("%d:%s" % (self.sw_if_index, self.nbr_addr))
def object_id(self):
return ("%d:%s" % (self.sw_if_index, self.nbr_addr))
+
+ def get_stats(self):
+ c = self._test.statistics.get_counter("/net/adjacency")
+ return c[0][self.stats_index]