CVS commit: src/tests/net/route

2019-04-18 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Thu Apr 18 07:56:54 UTC 2019

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
tests: dump kernel stats on cleanup


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.12 src/tests/net/route/t_change.sh:1.13
--- src/tests/net/route/t_change.sh:1.12	Mon Dec 18 04:11:46 2017
+++ src/tests/net/route/t_change.sh	Thu Apr 18 07:56:54 2019
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.12 2017/12/18 04:11:46 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.13 2019/04/18 07:56:54 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -32,6 +32,14 @@ export RUMP_SERVER=unix://commsock
 
 DEBUG=${DEBUG:-false}
 
+route_cleanup_common()
+{
+
+	$DEBUG && dump_kernel_stats unix://commsock
+	$DEBUG && extract_rump_server_core
+	env RUMP_SERVER=unix://commsock rump.halt
+}
+
 atf_test_case route_change_reject2blackhole cleanup
 route_change_reject2blackhole_head()
 {
@@ -58,7 +66,7 @@ route_change_reject2blackhole_body()
 route_change_reject2blackhole_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_gateway cleanup
@@ -91,7 +99,7 @@ route_change_gateway_body()
 route_change_gateway_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_ifa cleanup
@@ -156,7 +164,7 @@ destination: 192.168.0.0
 route_change_ifa_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_ifp cleanup
@@ -223,7 +231,7 @@ destination: 192.168.0.0
 route_change_ifp_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_ifp_ifa cleanup
@@ -290,7 +298,7 @@ destination: 192.168.0.0
 route_change_ifp_ifa_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_flags cleanup
@@ -326,7 +334,7 @@ route_change_flags_body()
 route_change_flags_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_test_case route_change_default_flags cleanup
@@ -361,7 +369,7 @@ route_change_default_flags_body()
 route_change_default_flags_cleanup()
 {
 
-	env RUMP_SERVER=unix://commsock rump.halt
+	route_cleanup_common
 }
 
 atf_init_test_cases()



CVS commit: src/tests/net/route

2017-12-17 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Mon Dec 18 04:11:46 UTC 2017

Modified Files:
src/tests/net/route: t_change.sh t_route.sh

Log Message:
Adjust outputs of route's flags to include a numeric output


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/tests/net/route/t_change.sh
cvs rdiff -u -r1.13 -r1.14 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.11 src/tests/net/route/t_change.sh:1.12
--- src/tests/net/route/t_change.sh:1.11	Fri Mar 24 04:06:19 2017
+++ src/tests/net/route/t_change.sh	Mon Dec 18 04:11:46 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.11 2017/03/24 04:06:19 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.12 2017/12/18 04:11:46 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -125,7 +125,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.10
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output
@@ -144,7 +144,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.11
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output
@@ -192,7 +192,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.10
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output
@@ -211,7 +211,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.11
   interface: shmif1
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output
@@ -259,7 +259,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.10
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output
@@ -278,7 +278,7 @@ destination: 192.168.0.0
 gateway: 10.0.0.1
  local addr: 10.0.0.11
   interface: shmif1
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get 192.168.0.1 > ./output

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.13 src/tests/net/route/t_route.sh:1.14
--- src/tests/net/route/t_route.sh:1.13	Wed Jun 28 04:10:47 2017
+++ src/tests/net/route/t_route.sh	Mon Dec 18 04:11:46 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.13 2017/06/28 04:10:47 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.14 2017/12/18 04:11:46 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -234,7 +234,7 @@ test_route_get()
 destination: 10.0.1.2
  local addr: 10.0.1.2
   interface: lo0
-  flags: 
+  flags: 0x40045
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get $IP4SRC > ./output
@@ -250,7 +250,7 @@ destination: 10.0.1.0
mask: 255.255.255.0
  local addr: 10.0.1.2
   interface: shmif0
-  flags: 
+  flags: 0x141
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get $IP4SRCGW > ./output
@@ -266,7 +266,7 @@ destination: default
 gateway: 10.0.1.1
  local addr: 10.0.1.2
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get $IP4DST > ./output
@@ -284,7 +284,7 @@ destination: 10.0.1.0
mask: 255.255.255.0
  local addr: 10.0.1.2
   interface: shmif0
-  flags: 
+  flags: 0x141
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get $IP4SRCGW > ./output
@@ -309,7 +309,7 @@ test_route_get6()
 destination: fc00:0:0:1::2
  local addr: fc00:0:0:1::2
   interface: lo0
-  flags: 
+  flags: 0x40045
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get -inet6 $IP6SRC > ./output
@@ -324,7 +324,7 @@ destination: fc00:0:0:1::
mask: :::::
  local addr: fc00:0:0:1::2
   interface: shmif0
-  flags: 
+  flags: 0x141
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
 	EOF
 	rump.route -n get -inet6 $IP6SRCGW > ./output
@@ -340,7 +340,7 @@ destination: ::
 gateway: fc00:0:0:1::1
  local addr: fc00:0:0:1::2
   interface: shmif0
-  flags: 
+  flags: 0x843
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcou

CVS commit: src/tests/net/route

2017-06-30 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Jun 30 07:57:13 UTC 2017

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Check if ARP/NDP entries are purged when a related route is deleted


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.14 -r1.15 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.18 src/tests/net/route/t_flags.sh:1.19
--- src/tests/net/route/t_flags.sh:1.18	Wed Jun 28 04:14:53 2017
+++ src/tests/net/route/t_flags.sh	Fri Jun 30 07:57:12 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.18 2017/06/28 04:14:53 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.19 2017/06/30 07:57:12 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -148,6 +148,8 @@ test_blackhole()
 
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
+	# Should be removed too
+	atf_check -s not-exit:0 -e match:'no entry' rump.arp -n 10.0.0.1
 
 	# Gateway must be lo0
 	atf_check -s exit:0 -o ignore \

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.14 src/tests/net/route/t_flags6.sh:1.15
--- src/tests/net/route/t_flags6.sh:1.14	Wed Jun 28 04:14:53 2017
+++ src/tests/net/route/t_flags6.sh	Fri Jun 30 07:57:12 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.14 2017/06/28 04:14:53 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.15 2017/06/30 07:57:12 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -134,6 +134,9 @@ test_blackhole6()
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore \
 	rump.route delete -inet6 -net fc00::/64
+	# Should be removed too
+	atf_check -s not-exit:0 -o ignore -e match:'no entry' \
+	rump.ndp -n $IP6_PEER
 
 	# Gateway must be lo0
 	atf_check -s exit:0 -o ignore \



CVS commit: src/tests/net/route

2017-06-26 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Tue Jun 27 04:56:13 UTC 2017

Modified Files:
src/tests/net/route: t_flags.sh

Log Message:
Fix wrong comment


To generate a diff of this commit:
cvs rdiff -u -r1.16 -r1.17 src/tests/net/route/t_flags.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.16 src/tests/net/route/t_flags.sh:1.17
--- src/tests/net/route/t_flags.sh:1.16	Tue Jun 27 04:52:45 2017
+++ src/tests/net/route/t_flags.sh	Tue Jun 27 04:56:13 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.16 2017/06/27 04:52:45 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.17 2017/06/27 04:56:13 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -100,7 +100,7 @@ test_connected()
 
 	export RUMP_SERVER=$SOCK_LOCAL
 
-	# Up, Host, LLINFO, local
+	# Up, Host, local
 	check_route_flags 10.0.0.2 UHl
 
 	# Up, Cloning



CVS commit: src/tests/net/route

2017-06-26 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Tue Jun 27 04:52:45 UTC 2017

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Check existence of ARP/NDP entries

Checking ARP/NDP entries is valid rather than checking routes.


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.12 -r1.13 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.15 src/tests/net/route/t_flags.sh:1.16
--- src/tests/net/route/t_flags.sh:1.15	Wed Dec 21 02:46:08 2016
+++ src/tests/net/route/t_flags.sh	Tue Jun 27 04:52:45 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.15 2016/12/21 02:46:08 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.16 2017/06/27 04:52:45 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -163,6 +163,7 @@ test_blackhole()
 
 	# Shouldn't be created
 	check_route_no_entry 10.0.0.1
+	atf_check -s not-exit:0 -e match:'no entry' rump.arp -n 10.0.0.1
 }
 
 test_reject()
@@ -185,6 +186,7 @@ test_reject()
 
 	# Shouldn't be created
 	check_route_no_entry 10.0.0.1
+	atf_check -s not-exit:0 -e match:'no entry' rump.arp -n 10.0.0.1
 
 	# Gateway is lo0 (RTF_GATEWAY)
 
@@ -204,6 +206,7 @@ test_reject()
 
 	# Shouldn't be created
 	check_route_no_entry 10.0.0.1
+	atf_check -s not-exit:0 -e match:'no entry' rump.arp -n 10.0.0.1
 
 	# Gateway is lo0 (RTF_HOST)
 

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.12 src/tests/net/route/t_flags6.sh:1.13
--- src/tests/net/route/t_flags6.sh:1.12	Wed Dec 21 02:46:08 2016
+++ src/tests/net/route/t_flags6.sh	Tue Jun 27 04:52:45 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.12 2016/12/21 02:46:08 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.13 2017/06/27 04:52:45 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -149,6 +149,8 @@ test_blackhole6()
 
 	# Shouldn't be created
 	check_route_no_entry $IP6_PEER
+	atf_check -s not-exit:0 -o ignore -e match:'no entry' \
+	rump.ndp -n $IP6_PEER
 }
 
 test_reject6()
@@ -173,6 +175,8 @@ test_reject6()
 
 	# Shouldn't be created
 	check_route_no_entry $IP6_PEER
+	atf_check -s not-exit:0 -o ignore -e match:'no entry' \
+	rump.ndp -n $IP6_PEER
 
 	# Gateway is lo0 (RTF_GATEWAY)
 
@@ -193,6 +197,8 @@ test_reject6()
 
 	# Shouldn't be created
 	check_route_no_entry $IP6_PEER
+	atf_check -s not-exit:0 -o ignore -e match:'no entry' \
+	rump.ndp -n $IP6_PEER
 
 	# Gateway is lo0 (RTF_HOST)
 



CVS commit: src/tests/net/route

2017-03-23 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Mar 24 04:06:19 UTC 2017

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Fix typo


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.10 src/tests/net/route/t_change.sh:1.11
--- src/tests/net/route/t_change.sh:1.10	Wed Mar 22 06:30:00 2017
+++ src/tests/net/route/t_change.sh	Fri Mar 24 04:06:19 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.10 2017/03/22 06:30:00 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.11 2017/03/24 04:06:19 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -323,7 +323,7 @@ route_change_flags_body()
 	# TODO other flags
 }
 
-route_change_default_flags_cleanup()
+route_change_flags_cleanup()
 {
 
 	env RUMP_SERVER=unix://commsock rump.halt



CVS commit: src/tests/net/route

2017-03-23 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Mar 24 03:47:25 UTC 2017

Modified Files:
src/tests/net/route: t_route.sh

Log Message:
Add test cases for PR kern/52077

>From s-yamaguchi@IIJ


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.11 src/tests/net/route/t_route.sh:1.12
--- src/tests/net/route/t_route.sh:1.11	Tue Mar 21 04:03:17 2017
+++ src/tests/net/route/t_route.sh	Fri Mar 24 03:47:25 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.11 2017/03/21 04:03:17 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.12 2017/03/24 03:47:25 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -45,6 +45,8 @@ IP6DSTGW=fc00:0:0:2::1
 IP6DST=fc00:0:0:2::2
 BUS_SRCGW=bus1
 BUS_DSTGW=bus2
+# command_add
+SOCKHOST=unix://commsock1
 
 DEBUG=${DEBUG:-false}
 TIMEOUT=1
@@ -437,6 +439,106 @@ route_default_reject_cleanup()
 	cleanup
 }
 
+atf_test_case route_command_add cleanup
+route_command_add_head()
+{
+
+	atf_set "descr" "tests of route add command"
+	atf_set "require.progs" "rump_server"
+}
+
+route_command_add_body()
+{
+
+	rump_server_start $SOCKHOST
+
+	export RUMP_SERVER=${SOCKHOST}
+	rump_server_add_iface $SOCKHOST shmif0 $BUS
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.1/24
+
+	# Accept the route whose gateway is in a subnet of interface address
+	atf_check -s exit:0 -o ignore rump.route add \
+	-net 10.0.1.0/24 10.0.0.2
+	atf_check -s exit:0 -o ignore rump.route add \
+	-host 10.0.2.1 10.0.0.3
+
+	# Accept the route whose gateway is an interface
+	atf_check -s exit:0 -o ignore rump.route add \
+	-net 10.0.3.0/24 -connected -link -iface shmif0
+
+	# Accept the route whose gateway is reachable and not RTF_GATEWAY
+	atf_check -s exit:0 -o ignore rump.route add \
+	-net 10.0.4.0/24 10.0.3.1
+
+	# Don't accept the route whose destination is reachable and
+	# gateway is unreachable
+	atf_check -s not-exit:0 -o ignore -e match:'unreachable' rump.route add \
+	-net 10.0.1.0/26 10.0.5.1
+
+	# Don't accept the route whose gateway is reachable and RTF_GATEWAY
+	atf_check -s not-exit:0 -o ignore -e ignore rump.route add \
+	-net 10.0.6.0/24 10.0.1.1
+
+	rump_server_destroy_ifaces
+}
+
+route_command_add_cleanup()
+{
+
+	$DEBUG && dump
+	cleanup
+}
+
+atf_test_case route_command_add6 cleanup
+route_command_add6_head()
+{
+
+	atf_set "descr" "tests of route add command (IPv6)"
+	atf_set "require.progs" "rump_server"
+}
+
+route_command_add6_body()
+{
+
+	rump_server_start $SOCKHOST netinet6
+
+	export RUMP_SERVER=${SOCKHOST}
+	rump_server_add_iface $SOCKHOST shmif0 $BUS
+	atf_check -s exit:0 rump.ifconfig shmif0 inet6 fc00::1/64
+
+	# Accept the route whose gateway is in a subnet of interface address
+	atf_check -s exit:0 -o ignore rump.route add -inet6\
+	-net fc00:1::0/64 fc00::2
+	atf_check -s exit:0 -o ignore rump.route add -inet6\
+	-host fc00:2::1 fc00::3
+
+	# Accept the route whose gateway is an interface
+	atf_check -s exit:0 -o ignore rump.route add -inet6\
+	-net fc00:3::0/64 -connected -link -iface shmif0
+
+	# Accept the route whose gateway is reachable and not RTF_GATEWAY
+	atf_check -s exit:0 -o ignore rump.route add -inet6\
+	-net fc00:4::0/64 fc00:3::1
+
+	# Don't accept the route whose destination is reachable and
+	# gateway is unreachable
+	atf_check -s not-exit:0 -o ignore -e match:'unreachable' rump.route add \
+	-inet6 -net fc00::4/128 fc00:5::1
+
+	# Don't accept the route whose gateway is reachable and RTF_GATEWAY
+	atf_check -s not-exit:0 -o ignore -e match:'unreachable' rump.route add \
+	-inet6 -net fc00:6::0/64 fc00:1::1
+
+	rump_server_destroy_ifaces
+}
+
+route_command_add6_cleanup()
+{
+
+	$DEBUG && dump
+	cleanup
+}
+
 atf_init_test_cases()
 {
 
@@ -444,4 +546,6 @@ atf_init_test_cases()
 	atf_add_test_case route_command_get
 	atf_add_test_case route_command_get6
 	atf_add_test_case route_default_reject
+	atf_add_test_case route_command_add
+	atf_add_test_case route_command_add6
 }



CVS commit: src/tests/net/route

2017-03-21 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Wed Mar 22 06:30:01 UTC 2017

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Add some tests to change flags of routes


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.9 src/tests/net/route/t_change.sh:1.10
--- src/tests/net/route/t_change.sh:1.9	Mon Nov  7 05:25:37 2016
+++ src/tests/net/route/t_change.sh	Wed Mar 22 06:30:00 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.9 2016/11/07 05:25:37 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.10 2017/03/22 06:30:00 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -293,6 +293,77 @@ route_change_ifp_ifa_cleanup()
 	env RUMP_SERVER=unix://commsock rump.halt
 }
 
+atf_test_case route_change_flags cleanup
+route_change_flags_head()
+{
+
+	atf_set "descr" "Change flags of a route"
+	atf_set "require.progs" "rump_server"
+}
+
+route_change_flags_body()
+{
+
+	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+	check_route 10.0.0/24 '' UC shmif0
+	# Set reject flag
+	atf_check -s exit:0 -o ignore \
+	rump.route change -net 10.0.0.0/24 -reject
+	check_route 10.0.0/24 '' URCS shmif0
+	# Clear reject flag
+	atf_check -s exit:0 -o ignore \
+	rump.route change -net 10.0.0.0/24 -noreject
+	check_route 10.0.0/24 '' UCS shmif0
+
+	# TODO other flags
+}
+
+route_change_default_flags_cleanup()
+{
+
+	env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_default_flags cleanup
+route_change_default_flags_head()
+{
+
+	atf_set "descr" "Change flags of the default route"
+	atf_set "require.progs" "rump_server"
+}
+
+route_change_default_flags_body()
+{
+
+	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+	atf_check -s exit:0 -o ignore rump.route add default 10.0.0.1
+	check_route default 10.0.0.1 UGS shmif0
+	# Set reject flag
+	atf_check -s exit:0 -o ignore rump.route change default -reject
+	check_route default 10.0.0.1 UGRS shmif0
+	# Clear reject flag
+	atf_check -s exit:0 -o ignore rump.route change default -noreject
+	check_route default 10.0.0.1 UGS shmif0
+
+	# TODO other flags
+}
+
+route_change_default_flags_cleanup()
+{
+
+	env RUMP_SERVER=unix://commsock rump.halt
+}
+
 atf_init_test_cases()
 {
 
@@ -301,4 +372,6 @@ atf_init_test_cases()
 	atf_add_test_case route_change_ifa
 	atf_add_test_case route_change_ifp
 	atf_add_test_case route_change_ifp_ifa
+	atf_add_test_case route_change_flags
+	atf_add_test_case route_change_default_flags
 }



CVS commit: src/tests/net/route

2017-03-20 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Tue Mar 21 04:03:17 UTC 2017

Modified Files:
src/tests/net/route: t_route.sh

Log Message:
Add a test case for PR kern/52083


To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.10 src/tests/net/route/t_route.sh:1.11
--- src/tests/net/route/t_route.sh:1.10	Wed Dec 21 02:46:08 2016
+++ src/tests/net/route/t_route.sh	Tue Mar 21 04:03:17 2017
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.10 2016/12/21 02:46:08 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.11 2017/03/21 04:03:17 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -397,10 +397,51 @@ route_command_get6_cleanup()
 	cleanup
 }
 
+atf_test_case route_default_reject cleanup
+route_default_reject_head()
+{
+
+	atf_set "descr" "tests for making a default route reject"
+	atf_set "require.progs" "rump_server"
+}
+
+route_default_reject_body()
+{
+
+	rump_server_start $SOCKSRC netinet6
+	rump_server_add_iface $SOCKSRC shmif0 $BUS_SRCGW
+
+	export RUMP_SERVER=$SOCKSRC
+
+	# From /etc/rc.d/network
+	atf_check -s exit:0 -o match:'add net ::0.0.0.0: gateway ::1' \
+	rump.route add -inet6 ::0.0.0.0 -prefixlen 104 ::1 -reject
+
+	atf_check -s exit:0 rump.ifconfig shmif0 inet6 $IP6SRC/64 up
+	$DEBUG && rump.netstat -nr -f inet6
+	atf_check -s exit:0 -o match:"add net default: gateway $IP6SRCGW" \
+	rump.route add -inet6 default $IP6SRCGW
+	$DEBUG && rump.netstat -nr -f inet6
+	$DEBUG && rump.route -n get -inet6 default
+	atf_check -s exit:0 -o match:'change net default' \
+	rump.route change -inet6 default -reject
+	$DEBUG && rump.netstat -nr -f inet6
+
+	rump_server_destroy_ifaces
+}
+
+route_default_reject_cleanup()
+{
+
+	$DEBUG && dump
+	cleanup
+}
+
 atf_init_test_cases()
 {
 
 	atf_add_test_case route_non_subnet_gateway
 	atf_add_test_case route_command_get
 	atf_add_test_case route_command_get6
+	atf_add_test_case route_default_reject
 }



CVS commit: src/tests/net/route

2016-12-20 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Wed Dec 21 02:46:08 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh t_route.sh

Log Message:
Add ifconfig -w to improve test stability


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.11 -r1.12 src/tests/net/route/t_flags6.sh
cvs rdiff -u -r1.9 -r1.10 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.14 src/tests/net/route/t_flags.sh:1.15
--- src/tests/net/route/t_flags.sh:1.14	Fri Nov 25 08:51:17 2016
+++ src/tests/net/route/t_flags.sh	Wed Dec 21 02:46:08 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.14 2016/11/25 08:51:17 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.15 2016/12/21 02:46:08 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -42,6 +42,7 @@ setup_local()
 	export RUMP_SERVER=$SOCK_LOCAL
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 10.0.0.2/24
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 up
+	atf_check -s exit:0 -o ignore rump.ifconfig -w 10
 
 	$DEBUG && rump.ifconfig
 	$DEBUG && rump.netstat -rn -f inet
@@ -56,6 +57,7 @@ setup_peer()
 	export RUMP_SERVER=$SOCK_PEER
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 10.0.0.1/24
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 up
+	atf_check -s exit:0 -o ignore rump.ifconfig -w 10
 
 	$DEBUG && rump.ifconfig
 	$DEBUG && rump.netstat -rn -f inet

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.11 src/tests/net/route/t_flags6.sh:1.12
--- src/tests/net/route/t_flags6.sh:1.11	Fri Nov 25 08:51:17 2016
+++ src/tests/net/route/t_flags6.sh	Wed Dec 21 02:46:08 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.11 2016/11/25 08:51:17 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.12 2016/12/21 02:46:08 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -45,6 +45,7 @@ setup_local()
 	export RUMP_SERVER=$SOCK_LOCAL
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 inet6 $IP6_LOCAL
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 up
+	atf_check -s exit:0 -o ignore rump.ifconfig -w 10
 
 	$DEBUG && rump.ifconfig
 	$DEBUG && rump.netstat -rn -f inet6
@@ -59,6 +60,7 @@ setup_peer()
 	export RUMP_SERVER=$SOCK_PEER
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 inet6 $IP6_PEER
 	atf_check -s exit:0 -o ignore rump.ifconfig shmif0 up
+	atf_check -s exit:0 -o ignore rump.ifconfig -w 10
 
 	$DEBUG && rump.ifconfig
 	$DEBUG && rump.netstat -rn -f inet6

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.9 src/tests/net/route/t_route.sh:1.10
--- src/tests/net/route/t_route.sh:1.9	Fri Nov 25 08:51:17 2016
+++ src/tests/net/route/t_route.sh	Wed Dec 21 02:46:08 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.9 2016/11/25 08:51:17 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.10 2016/12/21 02:46:08 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -79,6 +79,7 @@ route_non_subnet_gateway_body()
 	rump_server_add_iface $SOCK_CLIENT shmif0 $BUS
 	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.1/32
 	atf_check -s exit:0 rump.ifconfig shmif0 up
+	atf_check -s exit:0 rump.ifconfig -w 10
 
 	$DEBUG && rump.netstat -nr -f inet
 
@@ -141,6 +142,7 @@ setup_endpoint()
 		atf_check -s exit:0 -o ignore rump.route add default ${gw}
 	fi
 	atf_check -s exit:0 rump.ifconfig shmif0 up
+	atf_check -s exit:0 rump.ifconfig -w 10
 
 	if $DEBUG; then
 		rump.ifconfig shmif0
@@ -166,6 +168,7 @@ setup_forwarder()
 
 	atf_check -s exit:0 rump.ifconfig shmif0 up
 	atf_check -s exit:0 rump.ifconfig shmif1 up
+	atf_check -s exit:0 rump.ifconfig -w 10
 
 	if $DEBUG; then
 		rump.netstat -nr



CVS commit: src/tests/net/route

2016-08-16 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Tue Aug 16 10:34:12 UTC 2016

Modified Files:
src/tests/net/route: t_flags6.sh

Log Message:
Fix test_lo6 because ::1 now has RTF_LOCAL assigned to it.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.7 src/tests/net/route/t_flags6.sh:1.8
--- src/tests/net/route/t_flags6.sh:1.7	Wed Aug 10 23:00:39 2016
+++ src/tests/net/route/t_flags6.sh	Tue Aug 16 10:34:12 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.7 2016/08/10 23:00:39 roy Exp $
+#	$NetBSD: t_flags6.sh,v 1.8 2016/08/16 10:34:12 roy Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -104,8 +104,8 @@ test_lo6()
 	# Up, Host, local
 	check_entry_flags fe80::1 UHl
 
-	# Up, Host
-	check_entry_flags ::1 UH
+	# Up, Host, local
+	check_entry_flags ::1 UHl
 }
 
 test_connected6()



CVS commit: src/tests/net/route

2016-08-10 Thread Roy Marples
Module Name:src
Committed By:   roy
Date:   Wed Aug 10 23:00:39 UTC 2016

Modified Files:
src/tests/net/route: t_change.sh t_flags.sh t_flags6.sh t_route.sh

Log Message:
Add -lrumpdev so that tests work again.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/tests/net/route/t_change.sh
cvs rdiff -u -r1.10 -r1.11 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.6 -r1.7 src/tests/net/route/t_flags6.sh \
src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.7 src/tests/net/route/t_change.sh:1.8
--- src/tests/net/route/t_change.sh:1.7	Thu Jul 21 02:02:30 2016
+++ src/tests/net/route/t_change.sh	Wed Aug 10 23:00:39 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.7 2016/07/21 02:02:30 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.8 2016/08/10 23:00:39 roy Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -26,7 +26,8 @@
 #
 
 netserver=\
-"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
+"rump_server -lrumpdev -lrumpnet -lrumpnet_net \
+	-lrumpnet_netinet -lrumpnet_shmif"
 export RUMP_SERVER=unix://commsock
 
 DEBUG=false

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.10 src/tests/net/route/t_flags.sh:1.11
--- src/tests/net/route/t_flags.sh:1.10	Fri Jul  8 08:27:07 2016
+++ src/tests/net/route/t_flags.sh	Wed Aug 10 23:00:39 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.10 2016/07/08 08:27:07 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.11 2016/08/10 23:00:39 roy Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -26,7 +26,8 @@
 #
 
 netserver=\
-"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
+"rump_server -lrumpdev -lrumpnet -lrumpnet_net -lrumpnet_netinet \
+	-lrumpnet_shmif"
 SOCK_LOCAL=unix://commsock1
 SOCK_PEER=unix://commsock2
 SOCK_GW=unix://commsock3

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.6 src/tests/net/route/t_flags6.sh:1.7
--- src/tests/net/route/t_flags6.sh:1.6	Fri Jul  8 08:27:07 2016
+++ src/tests/net/route/t_flags6.sh	Wed Aug 10 23:00:39 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.6 2016/07/08 08:27:07 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.7 2016/08/10 23:00:39 roy Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -25,7 +25,8 @@
 # POSSIBILITY OF SUCH DAMAGE.
 #
 
-RUMP_OPTS="-lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_netinet6"
+RUMP_OPTS="-lrumpdev -lrumpnet -lrumpnet_net"
+RUMP_OPTS="$RUMP_OPTS -lrumpnet_netinet -lrumpnet_netinet6"
 RUMP_OPTS="$RUMP_OPTS -lrumpnet_shmif"
 SOCK_LOCAL=unix://commsock1
 SOCK_PEER=unix://commsock2
Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.6 src/tests/net/route/t_route.sh:1.7
--- src/tests/net/route/t_route.sh:1.6	Tue Jun 21 10:18:27 2016
+++ src/tests/net/route/t_route.sh	Wed Aug 10 23:00:39 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.6 2016/06/21 10:18:27 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.7 2016/08/10 23:00:39 roy Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -25,7 +25,7 @@
 # POSSIBILITY OF SUCH DAMAGE.
 #
 
-RUMP_LIBS="-lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
+RUMP_LIBS="-lrumpdev -lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
 RUMP_LIBS_IPV6="$RUMP_LIBS -lrumpnet_netinet6"
 
 # non_subnet_gateway



CVS commit: src/tests/net/route

2016-07-20 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Thu Jul 21 02:02:30 UTC 2016

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Add some tests for route change


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.6 src/tests/net/route/t_change.sh:1.7
--- src/tests/net/route/t_change.sh:1.6	Thu Jul 21 01:56:54 2016
+++ src/tests/net/route/t_change.sh	Thu Jul 21 02:02:30 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.6 2016/07/21 01:56:54 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.7 2016/07/21 02:02:30 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -26,9 +26,11 @@
 #
 
 netserver=\
-"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet"
+"rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
 export RUMP_SERVER=unix://commsock
 
+DEBUG=false
+
 atf_test_case route_change_reject2blackhole cleanup
 route_change_reject2blackhole_head()
 {
@@ -58,8 +60,244 @@ route_change_reject2blackhole_cleanup()
 	env RUMP_SERVER=unix://commsock rump.halt
 }
 
+atf_test_case route_change_gateway cleanup
+route_change_gateway_head()
+{
+
+	atf_set "descr" "Change the gateway of a route"
+	atf_set "require.progs" "rump_server"
+}
+
+route_change_gateway_body()
+{
+
+	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -net 192.168.0.0/24 10.0.0.1
+	atf_check -s exit:0 -o match:'10.0.0.1' -x \
+	"rump.route -n show -inet | grep ^192.168"
+	atf_check -s exit:0 -o ignore \
+	rump.route change -net 192.168.0.0/24 10.0.0.254
+	atf_check -s exit:0 -o match:'10.0.0.254' -x \
+	"rump.route -n show -inet | grep ^192.168"
+}
+
+route_change_gateway_cleanup()
+{
+
+	env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_ifa cleanup
+route_change_ifa_head()
+{
+
+	atf_set "descr" "Change the ifa (local address) of a route"
+	atf_set "require.progs" "rump_server"
+}
+
+route_change_ifa_body()
+{
+
+	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24
+	atf_check -s exit:0 rump.ifconfig shmif0 alias 10.0.0.11/24
+	atf_check -s exit:0 rump.ifconfig shmif0 up
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -net 192.168.0.0/24 10.0.0.1
+	atf_check -s exit:0 -o match:'10.0.0.1' -x \
+	"rump.route -n show -inet | grep ^192.168"
+	$DEBUG && rump.route -n show -inet
+	cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+   mask: 255.255.255.0
+gateway: 10.0.0.1
+ local addr: 10.0.0.10
+  interface: shmif0
+  flags: 
+ recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
+	EOF
+	rump.route -n get 192.168.0.1 > ./output
+	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
+	atf_check -s exit:0 diff ./expect ./output
+
+	# Change the local address of the route
+	atf_check -s exit:0 -o ignore \
+	rump.route change -net 192.168.0.0/24 10.0.0.1 -ifa 10.0.0.11
+	$DEBUG && rump.route -n show -inet
+	cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+   mask: 255.255.255.0
+gateway: 10.0.0.1
+ local addr: 10.0.0.11
+  interface: shmif0
+  flags: 
+ recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
+	EOF
+	rump.route -n get 192.168.0.1 > ./output
+	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
+	atf_check -s exit:0 diff ./expect ./output
+}
+
+route_change_ifa_cleanup()
+{
+
+	env RUMP_SERVER=unix://commsock rump.halt
+}
+
+atf_test_case route_change_ifp cleanup
+route_change_ifp_head()
+{
+
+	atf_set "descr" "Change a route based on an interface (ifp)"
+	atf_set "require.progs" "rump_server"
+}
+
+route_change_ifp_body()
+{
+
+	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
+
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif0 10.0.0.10/24 up
+
+	atf_check -s exit:0 rump.ifconfig shmif1 create
+	atf_check -s exit:0 rump.ifconfig shmif1 linkstr bus
+	atf_check -s exit:0 rump.ifconfig shmif1 10.0.0.11/24 up
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -net 192.168.0.0/24 10.0.0.1
+	atf_check -s exit:0 -o match:'10.0.0.1' -x \
+	"rump.route -n show -inet | grep ^192.168"
+	$DEBUG && rump.route -n show -inet
+	cat >./expect <<-EOF
+   route to: 192.168.0.1
+destination: 192.168.0.0
+   mask: 255.255.255.0
+gateway: 10.0.0.1
+ local addr: 10.0.0.1

CVS commit: src/tests/net/route

2016-07-20 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Thu Jul 21 01:56:54 UTC 2016

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Remove extra grep


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.5 src/tests/net/route/t_change.sh:1.6
--- src/tests/net/route/t_change.sh:1.5	Thu Jul 21 01:56:27 2016
+++ src/tests/net/route/t_change.sh	Thu Jul 21 01:56:54 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.5 2016/07/21 01:56:27 ozaki-r Exp $
+#	$NetBSD: t_change.sh,v 1.6 2016/07/21 01:56:54 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -49,7 +49,7 @@ route_change_reject2blackhole_body()
 	atf_check -s exit:0 -o ignore \
 	rump.route change 207.46.197.32 127.0.0.1 -blackhole
 	atf_check -s exit:0 -o match:' UGHBS ' -e ignore -x \
-	"rump.netstat -rn -f inet | grep ^207.46| grep ^207.46"
+	"rump.netstat -rn -f inet | grep ^207.46"
 }
 
 route_change_reject2blackhole_cleanup()



CVS commit: src/tests/net/route

2016-07-20 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Thu Jul 21 01:56:27 UTC 2016

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Make the test name self-descriptive


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.4 src/tests/net/route/t_change.sh:1.5
--- src/tests/net/route/t_change.sh:1.4	Tue Feb 19 21:08:25 2013
+++ src/tests/net/route/t_change.sh	Thu Jul 21 01:56:27 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.4 2013/02/19 21:08:25 joerg Exp $
+#	$NetBSD: t_change.sh,v 1.5 2016/07/21 01:56:27 ozaki-r Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -29,15 +29,15 @@ netserver=\
 "rump_server -lrumpnet -lrumpnet_net -lrumpnet_netinet"
 export RUMP_SERVER=unix://commsock
 
-atf_test_case reject2blackhole cleanup
-reject2blackhole_head()
+atf_test_case route_change_reject2blackhole cleanup
+route_change_reject2blackhole_head()
 {
 
 	atf_set "descr" "Change a reject route to blackhole"
 	atf_set "require.progs" "rump_server"
 }
 
-reject2blackhole_body()
+route_change_reject2blackhole_body()
 {
 
 	atf_check -s exit:0 ${netserver} ${RUMP_SERVER}
@@ -52,7 +52,7 @@ reject2blackhole_body()
 	"rump.netstat -rn -f inet | grep ^207.46| grep ^207.46"
 }
 
-reject2blackhole_cleanup()
+route_change_reject2blackhole_cleanup()
 {
 
 	env RUMP_SERVER=unix://commsock rump.halt
@@ -61,5 +61,5 @@ reject2blackhole_cleanup()
 atf_init_test_cases()
 {
 
-	atf_add_test_case reject2blackhole
+	atf_add_test_case route_change_reject2blackhole
 }



CVS commit: src/tests/net/route

2016-07-08 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Jul  8 08:27:07 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Fix test names


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.5 -r1.6 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.9 src/tests/net/route/t_flags.sh:1.10
--- src/tests/net/route/t_flags.sh:1.9	Tue Jun 21 05:04:16 2016
+++ src/tests/net/route/t_flags.sh	Fri Jul  8 08:27:07 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.9 2016/06/21 05:04:16 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.10 2016/07/08 08:27:07 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -123,7 +123,7 @@ check_entry_fail()
 	"rump.netstat -rn -f inet | grep ^'$ip'"
 }
 
-test_lo6()
+test_lo()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -132,7 +132,7 @@ test_lo6()
 	check_entry_flags 127.0.0.1 UHl
 }
 
-test_connected6()
+test_connected()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -144,7 +144,7 @@ test_connected6()
 	check_entry_flags 10.0.0/24 UC
 }
 
-test_default_gateway6()
+test_default_gateway()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -156,7 +156,7 @@ test_default_gateway6()
 	check_entry_flags default UGS
 }
 
-test_static6()
+test_static()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -176,7 +176,7 @@ test_static6()
 	check_entry_flags 10.0.2/24 UGS
 }
 
-test_blackhole6()
+test_blackhole()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -202,7 +202,7 @@ test_blackhole6()
 	check_entry_fail 10.0.0.1 UH
 }
 
-test_reject6()
+test_reject()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -261,7 +261,7 @@ test_reject6()
 	return 0
 }
 
-test_icmp_redirect6()
+test_icmp_redirect()
 {
 
 	### Testing Dynamic flag ###
@@ -320,7 +320,7 @@ test_icmp_redirect6()
 	teardown_gw
 }
 
-test_announce6()
+test_announce()
 {
 	export RUMP_SERVER=$SOCK_LOCAL
 
@@ -368,12 +368,12 @@ add_test()
 atf_init_test_cases()
 {
 
-	add_test lo6  "Tests route flags: loop back interface"
-	add_test connected6   "Tests route flags: connected route"
-	add_test default_gateway6 "Tests route flags: default gateway"
-	add_test static6  "Tests route flags: static route"
-	add_test blackhole6   "Tests route flags: blackhole route"
-	add_test reject6  "Tests route flags: reject route"
-	add_test icmp_redirect6   "Tests route flags: icmp redirect"
-	add_test announce6"Tests route flags: announce flag"
+	add_test lo  "Tests route flags: loop back interface"
+	add_test connected   "Tests route flags: connected route"
+	add_test default_gateway "Tests route flags: default gateway"
+	add_test static  "Tests route flags: static route"
+	add_test blackhole   "Tests route flags: blackhole route"
+	add_test reject  "Tests route flags: reject route"
+	add_test icmp_redirect   "Tests route flags: icmp redirect"
+	add_test announce"Tests route flags: announce flag"
 }

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.5 src/tests/net/route/t_flags6.sh:1.6
--- src/tests/net/route/t_flags6.sh:1.5	Sat Apr 23 15:47:54 2016
+++ src/tests/net/route/t_flags6.sh	Fri Jul  8 08:27:07 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.5 2016/04/23 15:47:54 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.6 2016/07/08 08:27:07 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -95,7 +95,7 @@ check_entry_fail()
 	"rump.netstat -rn -f inet6 | grep ^'$ip'"
 }
 
-test_lo()
+test_lo6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -107,7 +107,7 @@ test_lo()
 	check_entry_flags ::1 UH
 }
 
-test_connected()
+test_connected6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -119,7 +119,7 @@ test_connected()
 	check_entry_flags fc00::/64 UC
 }
 
-test_default_gateway()
+test_default_gateway6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -131,7 +131,7 @@ test_default_gateway()
 	check_entry_flags default UGS
 }
 
-test_static()
+test_static6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -153,7 +153,7 @@ test_static()
 	check_entry_flags fc00::/24 UGS
 }
 
-test_blackhole()
+test_blackhole6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -180,7 +180,7 @@ test_blackhole()
 	check_entry_fail $IP6_PEER UH
 }
 
-test_reject()
+test_reject6()
 {
 
 	export RUMP_SERVER=$SOCK_LOCAL
@@ -243,7 +243,7 @@ test_reject()
 	return 0
 }
 
-test_announce()
+test_announce6()
 {
 	export RUMP_SERVER=$SOCK_LOCAL
 
@@ -293,11 +293,11 @@ add_test()
 atf_init_test_cases()
 {
 
-	add_test lo  "Tests route flags: loop back interface"
-	add_test connected   "Tests route flags: connected route"
-	add_test default_gateway "Tests route flags: default gateway"
-	add_test static  "Tests route flags: static route"
-	add_test blackh

CVS commit: src/tests/net/route

2016-06-21 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Tue Jun 21 10:18:27 UTC 2016

Modified Files:
src/tests/net/route: t_route.sh

Log Message:
Tweak route get outputs to make tests work

"expire" value of route get output is unexpectedly a negative value
on rump kernel for some reasons and the tests almost always fail
on babylon5. So just ignore it to make tests work for now. Should
fix it in the future.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.5 src/tests/net/route/t_route.sh:1.6
--- src/tests/net/route/t_route.sh:1.5	Tue Jun 21 05:04:16 2016
+++ src/tests/net/route/t_route.sh	Tue Jun 21 10:18:27 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.5 2016/06/21 05:04:16 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.6 2016/06/21 10:18:27 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -243,10 +243,11 @@ destination: 10.0.1.2
   interface: lo0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get $IP4SRC > ./output
 	$DEBUG && cat ./expect ./output
+	# XXX: omit the last line because expire is unstable on rump kernel.
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Neighbor
@@ -258,10 +259,10 @@ destination: 10.0.1.0
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get $IP4SRCGW > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Remote host
@@ -274,10 +275,10 @@ destination: default
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get $IP4DST > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Create a ARP cache
@@ -292,10 +293,10 @@ destination: 10.0.1.0
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get $IP4SRCGW > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 }
 
@@ -317,10 +318,10 @@ destination: fc00:0:0:1::2
   interface: lo0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get -inet6 $IP6SRC > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Neighbor
@@ -332,10 +333,10 @@ destination: fc00:0:0:1::
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get -inet6 $IP6SRCGW > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Remote host
@@ -348,10 +349,10 @@ destination: ::
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get -inet6 $IP6DST > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 
 	# Create a NDP cache
@@ -366,10 +367,10 @@ destination: fc00:0:0:1::
   interface: shmif0
   flags: 
  recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
-   0 0 0 0 0 0 0 0 
 	EOF
 	rump.route -n get -inet6 $IP6SRCGW > ./output
 	$DEBUG && cat ./expect ./output
+	sed -i '$d' ./output
 	atf_check -s exit:0 diff ./expect ./output
 }
 



CVS commit: src/tests/net/route

2016-04-23 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Sat Apr 23 15:47:54 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Return 0 for $DEBUG=false case


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.4 -r1.5 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.7 src/tests/net/route/t_flags.sh:1.8
--- src/tests/net/route/t_flags.sh:1.7	Sat Apr 23 08:54:20 2016
+++ src/tests/net/route/t_flags.sh	Sat Apr 23 15:47:54 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.7 2016/04/23 08:54:20 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.8 2016/04/23 15:47:54 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -257,6 +257,8 @@ test_reject()
 	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
 	rump.ping -n -w 1 -c 1 10.0.0.1
 	$DEBUG && rump.netstat -rn -f inet
+
+	return 0
 }
 
 test_icmp_redirect()

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.4 src/tests/net/route/t_flags6.sh:1.5
--- src/tests/net/route/t_flags6.sh:1.4	Sat Apr 23 08:54:20 2016
+++ src/tests/net/route/t_flags6.sh	Sat Apr 23 15:47:54 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.4 2016/04/23 08:54:20 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.5 2016/04/23 15:47:54 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -239,6 +239,8 @@ test_reject()
 	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
 	rump.ping6 -n -X 1 -c 1 $IP6_PEER
 	$DEBUG && rump.netstat -rn -f inet6
+
+	return 0
 }
 
 test_announce()



CVS commit: src/tests/net/route

2016-04-23 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Sat Apr 23 08:54:21 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Add more tests of RTF_REJECT


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.3 -r1.4 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.6 src/tests/net/route/t_flags.sh:1.7
--- src/tests/net/route/t_flags.sh:1.6	Fri Apr 22 06:24:10 2016
+++ src/tests/net/route/t_flags.sh	Sat Apr 23 08:54:20 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.6 2016/04/22 06:24:10 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.7 2016/04/23 08:54:20 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -223,7 +223,7 @@ test_reject()
 	# Shouldn't be created
 	check_entry_fail 10.0.0.1 UH
 
-	# Gateway is lo0
+	# Gateway is lo0 (RTF_GATEWAY)
 
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
@@ -241,6 +241,22 @@ test_reject()
 
 	# Shouldn't be created
 	check_entry_fail 10.0.0.1 UH
+
+	# Gateway is lo0 (RTF_HOST)
+
+	# Delete an existing route first
+	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -host 10.0.0.1/24 127.0.0.1 -iface -reject
+	$DEBUG && rump.netstat -rn -f inet
+
+	# Up, Host, Reject, Static
+	check_entry_flags 10.0.0.1 UHRS
+
+	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
+	rump.ping -n -w 1 -c 1 10.0.0.1
+	$DEBUG && rump.netstat -rn -f inet
 }
 
 test_icmp_redirect()

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.3 src/tests/net/route/t_flags6.sh:1.4
--- src/tests/net/route/t_flags6.sh:1.3	Fri Apr 22 06:24:10 2016
+++ src/tests/net/route/t_flags6.sh	Sat Apr 23 08:54:20 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.3 2016/04/22 06:24:10 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.4 2016/04/23 08:54:20 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -203,7 +203,7 @@ test_reject()
 	# Shouldn't be created
 	check_entry_fail $IP6_PEER UH
 
-	# Gateway is lo0
+	# Gateway is lo0 (RTF_GATEWAY)
 
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore \
@@ -222,6 +222,23 @@ test_reject()
 
 	# Shouldn't be created
 	check_entry_fail $IP6_PEER UH
+
+	# Gateway is lo0 (RTF_HOST)
+
+	# Delete an existing route first
+	atf_check -s exit:0 -o ignore \
+	rump.route delete -inet6 -net fc00::/64
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -inet6 -host fc00::/64 ::1 -iface -reject
+	$DEBUG && rump.netstat -rn -f inet6
+
+	# Up, Host, Reject, Static
+	check_entry_flags fc00:: UHRS
+
+	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
+	rump.ping6 -n -X 1 -c 1 $IP6_PEER
+	$DEBUG && rump.netstat -rn -f inet6
 }
 
 test_announce()



CVS commit: src/tests/net/route

2016-04-21 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Fri Apr 22 06:24:10 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Add more tests of RTF_REJECT


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.2 -r1.3 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.5 src/tests/net/route/t_flags.sh:1.6
--- src/tests/net/route/t_flags.sh:1.5	Thu Apr 21 09:46:49 2016
+++ src/tests/net/route/t_flags.sh	Fri Apr 22 06:24:10 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.5 2016/04/21 09:46:49 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.6 2016/04/22 06:24:10 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -222,6 +222,25 @@ test_reject()
 
 	# Shouldn't be created
 	check_entry_fail 10.0.0.1 UH
+
+	# Gateway is lo0
+
+	# Delete an existing route first
+	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -net 10.0.0.0/24 127.0.0.1 -reject
+	$DEBUG && rump.netstat -rn -f inet
+
+	# Up, Gateway, Reject, Static
+	check_entry_flags 10.0.0/24 UGRS
+
+	atf_check -s not-exit:0 -o ignore -e match:'Network is unreachable' \
+	rump.ping -n -w 1 -c 1 10.0.0.1
+	$DEBUG && rump.netstat -rn -f inet
+
+	# Shouldn't be created
+	check_entry_fail 10.0.0.1 UH
 }
 
 test_icmp_redirect()

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.2 src/tests/net/route/t_flags6.sh:1.3
--- src/tests/net/route/t_flags6.sh:1.2	Thu Apr 21 09:46:49 2016
+++ src/tests/net/route/t_flags6.sh	Fri Apr 22 06:24:10 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.2 2016/04/21 09:46:49 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.3 2016/04/22 06:24:10 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -202,6 +202,26 @@ test_reject()
 
 	# Shouldn't be created
 	check_entry_fail $IP6_PEER UH
+
+	# Gateway is lo0
+
+	# Delete an existing route first
+	atf_check -s exit:0 -o ignore \
+	rump.route delete -inet6 -net fc00::/64
+
+	atf_check -s exit:0 -o ignore \
+	rump.route add -inet6 -net fc00::/64 ::1  -reject
+	$DEBUG && rump.netstat -rn -f inet6
+
+	# Up, Gateway, Reject, Static
+	check_entry_flags fc00::/64 UGRS
+
+	atf_check -s not-exit:0 -o ignore -e match:'Network is unreachable' \
+	rump.ping6 -n -X 1 -c 1 $IP6_PEER
+	$DEBUG && rump.netstat -rn -f inet6
+
+	# Shouldn't be created
+	check_entry_fail $IP6_PEER UH
 }
 
 test_announce()



CVS commit: src/tests/net/route

2016-04-21 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Thu Apr 21 09:46:49 UTC 2016

Modified Files:
src/tests/net/route: t_flags.sh t_flags6.sh

Log Message:
Fix tests for blackhole routes

The gateway of a blackhole route must be a loopback interface.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/net/route/t_flags.sh
cvs rdiff -u -r1.1 -r1.2 src/tests/net/route/t_flags6.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.4 src/tests/net/route/t_flags.sh:1.5
--- src/tests/net/route/t_flags.sh:1.4	Mon Apr  4 07:37:08 2016
+++ src/tests/net/route/t_flags.sh	Thu Apr 21 09:46:49 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.4 2016/04/04 07:37:08 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.5 2016/04/21 09:46:49 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -181,16 +181,20 @@ test_blackhole()
 
 	export RUMP_SERVER=$SOCK_LOCAL
 
+	atf_check -s exit:0 -o ignore rump.ping -n -w 1 -c 1 10.0.0.1
+
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
 
-	atf_check -s exit:0 -o ignore rump.route add -net 10.0.0.0/24 10.0.0.1 -blackhole
+	# Gateway must be lo0
+	atf_check -s exit:0 -o ignore \
+	rump.route add -net 10.0.0.0/24 127.0.0.1 -blackhole
 	$DEBUG && rump.netstat -rn -f inet
 
 	# Up, Gateway, Blackhole, Static
 	check_entry_flags 10.0.0/24 UGBS
 
-	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
+	atf_check -s not-exit:0 -o match:'100.0% packet loss' \
 	rump.ping -n -w 1 -c 1 10.0.0.1
 	$DEBUG && rump.netstat -rn -f inet
 

Index: src/tests/net/route/t_flags6.sh
diff -u src/tests/net/route/t_flags6.sh:1.1 src/tests/net/route/t_flags6.sh:1.2
--- src/tests/net/route/t_flags6.sh:1.1	Thu Apr 21 05:10:15 2016
+++ src/tests/net/route/t_flags6.sh	Thu Apr 21 09:46:49 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags6.sh,v 1.1 2016/04/21 05:10:15 ozaki-r Exp $
+#	$NetBSD: t_flags6.sh,v 1.2 2016/04/21 09:46:49 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -158,18 +158,21 @@ test_blackhole()
 
 	export RUMP_SERVER=$SOCK_LOCAL
 
+	atf_check -s exit:0 -o ignore rump.ping6 -n -X 1 -c 1 $IP6_PEER
+
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore \
 	rump.route delete -inet6 -net fc00::/64
 
+	# Gateway must be lo0
 	atf_check -s exit:0 -o ignore \
-	rump.route add -inet6 -net fc00::/64 $IP6_PEER -blackhole
+	rump.route add -inet6 -net fc00::/64 ::1 -blackhole
 	$DEBUG && rump.netstat -rn -f inet6
 
 	# Up, Gateway, Blackhole, Static
 	check_entry_flags fc00::/64 UGBS
 
-	atf_check -s not-exit:0 -o ignore -e match:'No route to host' \
+	atf_check -s not-exit:0 -o match:'100.0% packet loss' \
 	rump.ping6 -n -X 1 -c 1 $IP6_PEER
 	$DEBUG && rump.netstat -rn -f inet6
 



CVS commit: src/tests/net/route

2016-03-27 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Mon Mar 28 02:35:43 UTC 2016

Modified Files:
src/tests/net/route: t_route.sh

Log Message:
Make outputs informative on failure


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.2 src/tests/net/route/t_route.sh:1.3
--- src/tests/net/route/t_route.sh:1.2	Mon Mar 28 01:53:07 2016
+++ src/tests/net/route/t_route.sh	Mon Mar 28 02:35:43 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.2 2016/03/28 01:53:07 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.3 2016/03/28 02:35:43 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -247,7 +247,7 @@ destination: 10.0.1.2
 	EOF
 	rump.route -n get $IP4SRC > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Neighbor
 	cat >./expect <<-EOF
@@ -262,7 +262,7 @@ destination: 10.0.1.0
 	EOF
 	rump.route -n get $IP4SRCGW > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Remote host
 	cat >./expect <<-EOF
@@ -278,7 +278,7 @@ destination: default
 	EOF
 	rump.route -n get $IP4DST > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Create a ARP cache
 	atf_check -s exit:0 -o ignore rump.ping -q -n -w $TIMEOUT -c 1 $IP4SRCGW
@@ -296,7 +296,7 @@ destination: 10.0.1.1
 	$DEBUG && cat ./expect ./output
 	# Trim the last line including unfixed expire time
 	head -6 ./output > ./trimed
-	atf_check -s exit:0 diff -q ./expect ./trimed
+	atf_check -s exit:0 diff ./expect ./trimed
 }
 
 test_route_get6()
@@ -321,7 +321,7 @@ destination: fc00:0:0:1::2
 	EOF
 	rump.route -n get -inet6 $IP6SRC > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Neighbor
 	cat >./expect <<-EOF
@@ -336,7 +336,7 @@ destination: fc00:0:0:1::
 	EOF
 	rump.route -n get -inet6 $IP6SRCGW > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Remote host
 	cat >./expect <<-EOF
@@ -352,7 +352,7 @@ destination: ::
 	EOF
 	rump.route -n get -inet6 $IP6DST > ./output
 	$DEBUG && cat ./expect ./output
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 
 	# Create a NDP cache
 	atf_check -s exit:0 -o ignore rump.ping6 -n -c 1 -X $TIMEOUT $IP6SRCGW
@@ -370,7 +370,7 @@ destination: fc00:0:0:1::1
 	rump.route -n get -inet6 $IP6SRCGW > ./output
 	$DEBUG && cat ./expect ./output
 	# No need to trim, because a NDP cache doesn't set an expire time
-	atf_check -s exit:0 diff -q ./expect ./output
+	atf_check -s exit:0 diff ./expect ./output
 }
 
 command_get_body()



CVS commit: src/tests/net/route

2016-03-27 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Mon Mar 28 01:53:07 UTC 2016

Modified Files:
src/tests/net/route: t_route.sh

Log Message:
Add tests for "route get"


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/net/route/t_route.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_route.sh
diff -u src/tests/net/route/t_route.sh:1.1 src/tests/net/route/t_route.sh:1.2
--- src/tests/net/route/t_route.sh:1.1	Fri Jan 29 04:15:46 2016
+++ src/tests/net/route/t_route.sh	Mon Mar 28 01:53:07 2016
@@ -1,4 +1,4 @@
-#	$NetBSD: t_route.sh,v 1.1 2016/01/29 04:15:46 ozaki-r Exp $
+#	$NetBSD: t_route.sh,v 1.2 2016/03/28 01:53:07 ozaki-r Exp $
 #
 # Copyright (c) 2016 Internet Initiative Japan Inc.
 # All rights reserved.
@@ -26,10 +26,29 @@
 #
 
 RUMP_LIBS="-lrumpnet -lrumpnet_net -lrumpnet_netinet -lrumpnet_shmif"
+RUMP_LIBS_IPV6="$RUMP_LIBS -lrumpnet_netinet6"
+
+# non_subnet_gateway
 SOCK_CLIENT=unix://commsock1
 SOCK_GW=unix://commsock2
 BUS=bus1
 
+# command_get
+SOCKSRC=unix://commsock1
+SOCKFWD=unix://commsock2
+SOCKDST=unix://commsock3
+IP4SRC=10.0.1.2
+IP4SRCGW=10.0.1.1
+IP4DSTGW=10.0.2.1
+IP4DST=10.0.2.2
+IP4DST_BCAST=10.0.2.255
+IP6SRC=fc00:0:0:1::2
+IP6SRCGW=fc00:0:0:1::1
+IP6DSTGW=fc00:0:0:2::1
+IP6DST=fc00:0:0:2::2
+BUS_SRCGW=bus1
+BUS_DSTGW=bus2
+
 DEBUG=false
 TIMEOUT=1
 PING_OPTS="-n -c 1 -w $TIMEOUT"
@@ -96,8 +115,315 @@ non_subnet_gateway_cleanup()
 	env RUMP_SERVER=$SOCK_GW rump.halt
 }
 
+atf_test_case command_get cleanup
+atf_test_case command_get6 cleanup
+command_get_head()
+{
+
+	atf_set "descr" "tests of route get command"
+	atf_set "require.progs" "rump_server"
+}
+
+command_get6_head()
+{
+
+	atf_set "descr" "tests of route get command (IPv6)"
+	atf_set "require.progs" "rump_server"
+}
+
+setup_endpoint()
+{
+	local sock=${1}
+	local addr=${2}
+	local bus=${3}
+	local mode=${4}
+	local gw=${5}
+
+	export RUMP_SERVER=${sock}
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr ${bus}
+	if [ $mode = "ipv6" ]; then
+		atf_check -s exit:0 rump.ifconfig shmif0 inet6 ${addr}
+		atf_check -s exit:0 -o ignore rump.route add -inet6 default ${gw}
+	else
+		atf_check -s exit:0 rump.ifconfig shmif0 inet ${addr} netmask 0xff00
+		atf_check -s exit:0 -o ignore rump.route add default ${gw}
+	fi
+	atf_check -s exit:0 rump.ifconfig shmif0 up
+
+	if $DEBUG; then
+		rump.ifconfig shmif0
+		rump.netstat -nr
+	fi
+}
+
+setup_forwarder()
+{
+	mode=${1}
+
+	export RUMP_SERVER=$SOCKFWD
+	atf_check -s exit:0 rump.ifconfig shmif0 create
+	atf_check -s exit:0 rump.ifconfig shmif0 linkstr $BUS_SRCGW
+
+	atf_check -s exit:0 rump.ifconfig shmif1 create
+	atf_check -s exit:0 rump.ifconfig shmif1 linkstr $BUS_DSTGW
+
+	if [ $mode = "ipv6" ]; then
+		atf_check -s exit:0 rump.ifconfig shmif0 inet6 ${IP6SRCGW}
+		atf_check -s exit:0 rump.ifconfig shmif1 inet6 ${IP6DSTGW}
+	else
+		atf_check -s exit:0 rump.ifconfig shmif0 inet ${IP4SRCGW} netmask 0xff00
+		atf_check -s exit:0 rump.ifconfig shmif1 inet ${IP4DSTGW} netmask 0xff00
+	fi
+
+	atf_check -s exit:0 rump.ifconfig shmif0 up
+	atf_check -s exit:0 rump.ifconfig shmif1 up
+
+	if $DEBUG; then
+		rump.netstat -nr
+		if [ $mode = "ipv6" ]; then
+			rump.sysctl net.inet6.ip6.forwarding
+		else
+			rump.sysctl net.inet.ip.forwarding
+		fi
+	fi
+}
+
+setup_forwarding()
+{
+	export RUMP_SERVER=$SOCKFWD
+	atf_check -s exit:0 -o ignore rump.sysctl -w net.inet.ip.forwarding=1
+}
+
+setup_forwarding6()
+{
+	export RUMP_SERVER=$SOCKFWD
+	atf_check -s exit:0 -o ignore rump.sysctl -w net.inet6.ip6.forwarding=1
+}
+
+setup()
+{
+
+	atf_check -s exit:0 rump_server $RUMP_LIBS $SOCKSRC
+	atf_check -s exit:0 rump_server $RUMP_LIBS $SOCKFWD
+	atf_check -s exit:0 rump_server $RUMP_LIBS $SOCKDST
+
+	setup_endpoint $SOCKSRC $IP4SRC $BUS_SRCGW ipv4 $IP4SRCGW
+	setup_endpoint $SOCKDST $IP4DST $BUS_DSTGW ipv4 $IP4DSTGW
+	setup_forwarder ipv4
+}
+
+setup6()
+{
+
+	atf_check -s exit:0 rump_server $RUMP_LIBS_IPV6 $SOCKSRC
+	atf_check -s exit:0 rump_server $RUMP_LIBS_IPV6 $SOCKFWD
+	atf_check -s exit:0 rump_server $RUMP_LIBS_IPV6 $SOCKDST
+
+	setup_endpoint $SOCKSRC $IP6SRC $BUS_SRCGW ipv6 $IP6SRCGW
+	setup_endpoint $SOCKDST $IP6DST $BUS_DSTGW ipv6 $IP6DSTGW
+	setup_forwarder ipv6
+}
+
+test_route_get()
+{
+
+	export RUMP_SERVER=$SOCKSRC
+	$DEBUG && rump.netstat -nr -f inet
+	$DEBUG && rump.arp -n -a
+
+	# Make sure an ARP cache to the gateway doesn't exist
+	rump.arp -d $IP4SRCGW
+
+	# Local
+	cat >./expect <<-EOF
+   route to: 10.0.1.2
+destination: 10.0.1.2
+ local addr: 10.0.1.2
+  interface: lo0
+  flags: 
+ recvpipe  sendpipe  ssthresh  rtt,msecrttvar  hopcount  mtu expire
+   0 0 0 0 0 0 0 0 
+	EOF
+	rump.route -n get $IP4SRC > ./output
+	$DEBUG && cat ./expect ./output
+	atf_check -s exit:0 diff -q ./expect ./ou

CVS commit: src/tests/net/route

2015-05-31 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Mon Jun  1 01:36:30 UTC 2015

Modified Files:
src/tests/net/route: t_flags.sh

Log Message:
Improve stability of route_flags_xresolve tests

Insert delays to give route monitor a chance to complete its work.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/net/route/t_flags.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.2 src/tests/net/route/t_flags.sh:1.3
--- src/tests/net/route/t_flags.sh:1.2	Wed May 20 01:30:42 2015
+++ src/tests/net/route/t_flags.sh	Mon Jun  1 01:36:30 2015
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.2 2015/05/20 01:30:42 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.3 2015/06/01 01:36:30 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -341,9 +341,15 @@ test_xresolve_rtm()
 	rump.route -n monitor > ./mon.log &
 	pid=$!
 
+	# Give route monitor a chance to setup a routing socket
+	sleep 1
+
 	atf_check -s exit:0 -o ignore rump.ping -n -w 1 -c 1 $ip
 	$DEBUG && rump.netstat -rn -f inet
-	$DEBUG && cat ./mon.log
+
+	# Give route monitor a chance to output a routing message
+	sleep 1
+	cat ./mon.log
 
 	atf_check -s exit:0 grep -q $rtm ./mon.log
 



CVS commit: src/tests/net/route

2015-05-19 Thread Ryota Ozaki
Module Name:src
Committed By:   ozaki-r
Date:   Wed May 20 01:30:42 UTC 2015

Modified Files:
src/tests/net/route: t_flags.sh

Log Message:
Add tests for XRESOLVE flag


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/net/route/t_flags.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_flags.sh
diff -u src/tests/net/route/t_flags.sh:1.1 src/tests/net/route/t_flags.sh:1.2
--- src/tests/net/route/t_flags.sh:1.1	Mon May 18 06:27:04 2015
+++ src/tests/net/route/t_flags.sh	Wed May 20 01:30:42 2015
@@ -1,4 +1,4 @@
-#	$NetBSD: t_flags.sh,v 1.1 2015/05/18 06:27:04 ozaki-r Exp $
+#	$NetBSD: t_flags.sh,v 1.2 2015/05/20 01:30:42 ozaki-r Exp $
 #
 # Copyright (c) 2015 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -332,20 +332,48 @@ test_announce()
 	# TODO test its behavior
 }
 
+test_xresolve_rtm()
+{
+	local ip=$1
+	local rtm=$2
+	local pid=
+
+	rump.route -n monitor > ./mon.log &
+	pid=$!
+
+	atf_check -s exit:0 -o ignore rump.ping -n -w 1 -c 1 $ip
+	$DEBUG && rump.netstat -rn -f inet
+	$DEBUG && cat ./mon.log
+
+	atf_check -s exit:0 grep -q $rtm ./mon.log
+
+	kill $pid
+}
+
 test_xresolve()
 {
+
 	export RUMP_SERVER=$SOCK_LOCAL
 
+	# For a normal route, a RTM_ADD message is emitted on a route cloning
+	test_xresolve_rtm 10.0.0.1 RTM_ADD
+	# Up, Host, LLINFO, cloned
+	check_entry_flags 10.0.0.1 UHLc
+
 	# Delete an existing route first
 	atf_check -s exit:0 -o ignore rump.route delete -net 10.0.0.0/24
-
-	atf_check -s exit:0 -o ignore rump.route add -net 10.0.0.0/24 10.0.0.1 -xresolve
+	# Create a connected route with XRESOLVE flag for the interface
+	atf_check -s exit:0 -o ignore rump.route add -net 10.0.0.0/24 10.0.0.2 \
+	-interface -xresolve
 	$DEBUG && rump.netstat -rn -f inet
 
-	# Up, Gateway, Xresolve, Static
-	check_entry_flags 10.0.0/24 UGXS
-
-	# TODO test its behavior
+	# Up, Cloning, Xresolve, Static
+	check_entry_flags 10.0.0/24 UCXS
+
+	# If XRESOLVE flag is set, a RTM_RESOLVE message is emitted
+	test_xresolve_rtm 10.0.0.1 RTM_RESOLVE
+	# Up, Host, Xresolve, LLINFO, cloned
+	check_entry_flags 10.0.0.1 UHXLc
 }
 
 cleanup()



CVS commit: src/tests/net/route

2011-02-09 Thread Mihai Chelaru
Module Name:src
Committed By:   kefren
Date:   Thu Feb 10 07:47:50 UTC 2011

Modified Files:
src/tests/net/route: t_change.sh

Log Message:
Problem was fixed, don't expect to fail anymore


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/net/route/t_change.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/net/route/t_change.sh
diff -u src/tests/net/route/t_change.sh:1.1 src/tests/net/route/t_change.sh:1.2
--- src/tests/net/route/t_change.sh:1.1	Tue Feb  8 10:11:29 2011
+++ src/tests/net/route/t_change.sh	Thu Feb 10 07:47:50 2011
@@ -1,4 +1,4 @@
-#	$NetBSD: t_change.sh,v 1.1 2011/02/08 10:11:29 pooka Exp $
+#	$NetBSD: t_change.sh,v 1.2 2011/02/10 07:47:50 kefren Exp $
 #
 # Copyright (c) 2011 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -47,7 +47,6 @@
 	"rump.route -n show -inet | grep ^207.46"
 	atf_check -s exit:0 -o ignore \
 	rump.route change 207.46.197.32 127.0.0.1 -blackhole
-	atf_expect_fail "PR kern/40455"
 	atf_check -s exit:0 -o match:' UGHBS ' -e ignore \
 	sh -c "rump.netstat -rn -f inet | grep ^207.46| grep ^207.46"
 }