diff options
| author | Kristof Provost <kp@FreeBSD.org> | 2021-08-17 14:19:29 +0000 |
|---|---|---|
| committer | Kristof Provost <kp@FreeBSD.org> | 2021-08-17 15:01:21 +0000 |
| commit | e86469075c5e391cc86e5bcd4f252712a69de37e (patch) | |
| tree | e342efd4ae82af7889c8504be816c6dde8beea93 /tests/sys/netinet | |
| parent | ee3ca711a898cf41330c320826ea1e0e6e451f1d (diff) | |
Diffstat (limited to 'tests/sys/netinet')
| -rwxr-xr-x | tests/sys/netinet/arp.sh | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/sys/netinet/arp.sh b/tests/sys/netinet/arp.sh index 8b5b30911314..b909b9a48fb3 100755 --- a/tests/sys/netinet/arp.sh +++ b/tests/sys/netinet/arp.sh @@ -85,12 +85,48 @@ arp_del_success_cleanup() { vnet_cleanup } +atf_test_case "pending_delete_if" "cleanup" +pending_delete_if_head() { + atf_set descr 'Test having pending link layer lookups on interface delete' + atf_set require.user root +} + +pending_delete_if_body() { + vnet_init + + jname="arp_pending_delete_if" + epair=$(vnet_mkepair) + + ifconfig ${epair}b up + + vnet_mkjail ${jname} ${epair}a + jexec ${jname} ifconfig ${epair}a 198.51.100.1/24 + for i in `seq 2 200` + do + jexec ${jname} ping 198.51.100.${i} & + done + + # Give the ping processes time to send their ARP requests + sleep 1 + + jexec ${jname} arp -an + jexec ${jname} killall ping + + # Delete the interface. Test failure panics the machine. + ifconfig ${epair}b destroy +} + +pending_delete_if_cleanup() { + vnet_cleanup +} + atf_init_test_cases() { atf_add_test_case "arp_add_success" atf_add_test_case "arp_del_success" + atf_add_test_case "pending_delete_if" } # end |
