selftests: rtnetlink: use a local IP address for IPsec tests
authorShannon Nelson <shannon.nelson@oracle.com>
Wed, 20 Jun 2018 05:42:43 +0000 (22:42 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 22 Jun 2018 04:47:55 +0000 (13:47 +0900)
Find an IP address on this machine to use as a source IP, and
make up a destination IP address based on the source IP.  No
actual messages will be sent, just a couple of IPsec rules are
created and deleted.

Fixes: 5e596ee171ba ("selftests: add xfrm state-policy-monitor to rtnetlink.sh")
Reported-by: Anders Roxell <anders.roxell@linaro.org>
Signed-off-by: Shannon Nelson <shannon.nelson@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/rtnetlink.sh

index 4cd252f4e0778908a95962acea016c3f61b61825..a90eb31abd5937fb6ac9a9571b5abadf894c52b0 100755 (executable)
@@ -525,8 +525,12 @@ kci_test_macsec()
 #-------------------------------------------------------------------
 kci_test_ipsec()
 {
-       srcip="14.0.0.52"
-       dstip="14.0.0.70"
+       # find an ip address on this machine and make up a destination
+       srcip=`ip -o addr | awk '/inet / { print $4; }' | grep -v "^127" | head -1 | cut -f1 -d/`
+       net=`echo $srcip | cut -f1-3 -d.`
+       base=`echo $srcip | cut -f4 -d.`
+       dstip="$net."`expr $base + 1`
+
        algo="aead rfc4106(gcm(aes)) 0x3132333435363738393031323334353664636261 128"
 
        # flush to be sure there's nothing configured