[libvirt] [PATCH tck 1/6] Retrieve ip address from arp instead of leases

Mike Latimer mlatimer at suse.com
Mon Oct 5 23:18:38 UTC 2015


Libvirt commit 0f87054b adds the --leasefile-ro option to dnsmasq. This change
results in the default.leases no longer containing the ip address for the test
domain. Instead of using the leases file, use arp to provide the ip address.

Signed-off-by: Mike Latimer <mlatimer at suse.com>
---
 lib/Sys/Virt/TCK/NetworkHelpers.pm        | 6 +++---
 scripts/nwfilter/100-ping-still-working.t | 2 +-
 scripts/nwfilter/210-no-mac-spoofing.t    | 2 +-
 scripts/nwfilter/220-no-ip-spoofing.t     | 2 +-
 scripts/nwfilter/230-no-mac-broadcast.t   | 2 +-
 scripts/nwfilter/240-no-arp-spoofing.t    | 2 +-
 6 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/lib/Sys/Virt/TCK/NetworkHelpers.pm b/lib/Sys/Virt/TCK/NetworkHelpers.pm
index 133064b..deda0f3 100644
--- a/lib/Sys/Virt/TCK/NetworkHelpers.pm
+++ b/lib/Sys/Virt/TCK/NetworkHelpers.pm
@@ -9,11 +9,11 @@ sub get_first_macaddress {
     return $mac;
 }
 
-sub get_ip_from_leases{
+sub get_ip_from_arp{
     my $mac = shift;
-    my $tmp = `grep $mac /var/lib/libvirt/dnsmasq/default.leases`;
+    my $tmp = `arp -n | grep $mac`;
     my @fields = split(/ /, $tmp);
-    my $ip = $fields[2];
+    my $ip = $fields[0];
     return $ip;
 }
 
diff --git a/scripts/nwfilter/100-ping-still-working.t b/scripts/nwfilter/100-ping-still-working.t
index a20b95d..cf03d90 100644
--- a/scripts/nwfilter/100-ping-still-working.t
+++ b/scripts/nwfilter/100-ping-still-working.t
@@ -69,7 +69,7 @@ sleep(10);
 my $mac = get_first_macaddress($dom);
 diag "mac is $mac";
 
-my $guestip = get_ip_from_leases($mac);
+my $guestip = get_ip_from_arp($mac);
 diag "ip is $guestip";
 
 # check ebtables entry
diff --git a/scripts/nwfilter/210-no-mac-spoofing.t b/scripts/nwfilter/210-no-mac-spoofing.t
index b81fc4a..14c54db 100644
--- a/scripts/nwfilter/210-no-mac-spoofing.t
+++ b/scripts/nwfilter/210-no-mac-spoofing.t
@@ -69,7 +69,7 @@ sleep(10);
 my $mac =  get_first_macaddress($dom);
 diag "mac is $mac";
 
-my $guestip = get_ip_from_leases($mac);
+my $guestip = get_ip_from_arp($mac);
 diag "ip is $guestip";
 
 # check ebtables entry
diff --git a/scripts/nwfilter/220-no-ip-spoofing.t b/scripts/nwfilter/220-no-ip-spoofing.t
index 3a0213d..1217c52 100644
--- a/scripts/nwfilter/220-no-ip-spoofing.t
+++ b/scripts/nwfilter/220-no-ip-spoofing.t
@@ -60,7 +60,7 @@ sleep(30);
 my $mac =  get_first_macaddress($dom);
 diag "mac is $mac";
 
-my $guestip = get_ip_from_leases($mac);
+my $guestip = get_ip_from_arp($mac);
 diag "ip is $guestip";
 
 # check ebtables entry
diff --git a/scripts/nwfilter/230-no-mac-broadcast.t b/scripts/nwfilter/230-no-mac-broadcast.t
index 16ce60d..cdf08fe 100644
--- a/scripts/nwfilter/230-no-mac-broadcast.t
+++ b/scripts/nwfilter/230-no-mac-broadcast.t
@@ -68,7 +68,7 @@ sleep(10);
 my $mac =  get_first_macaddress($dom);
 diag "mac is $mac";
 
-my $guestip = get_ip_from_leases($mac);
+my $guestip = get_ip_from_arp($mac);
 diag "ip is $guestip";
 
 # check ebtables entry
diff --git a/scripts/nwfilter/240-no-arp-spoofing.t b/scripts/nwfilter/240-no-arp-spoofing.t
index 284033d..5590ed5 100644
--- a/scripts/nwfilter/240-no-arp-spoofing.t
+++ b/scripts/nwfilter/240-no-arp-spoofing.t
@@ -70,7 +70,7 @@ sleep(10);
 my $mac =  get_first_macaddress($dom);
 diag "mac is $mac";
 
-my $guestip = get_ip_from_leases($mac);
+my $guestip = get_ip_from_arp($mac);
 diag "ip is $guestip";
 
 # check ebtables entry
-- 
1.8.4.5




More information about the libvir-list mailing list