selftests: add IPv4 unicast extensions tests
authorSeth David Schoen <schoen@loyalty.org>
Tue, 26 Jan 2021 04:08:34 +0000 (20:08 -0800)
committerJakub Kicinski <kuba@kernel.org>
Wed, 27 Jan 2021 01:52:16 +0000 (17:52 -0800)
commit9b0b7837b9f1b29e89de8c5e321dc94601fda4b5
tree343ae871db84659aa02b3c1be5256f1336f2514f
parent285715ac9a81209540bfdb2495e3a005b701bef8
selftests: add IPv4 unicast extensions tests

Add selftests for kernel behavior with regard to various classes of
unallocated/reserved IPv4 addresses, checking whether or not these
addresses can be assigned as unicast addresses on links and used in
routing.

Expect the current kernel behavior at the time of this patch. That is:

* 0/8 and 240/4 may be used as unicast, with the exceptions of 0.0.0.0
  and 255.255.255.255;
* the lowest address in a subnet may only be used as a broadcast address;
* 127/8 may not be used as unicast (the route_localnet option, which is
  disabled by default, still leaves it treated slightly specially);
* 224/4 may not be used as unicast.

Signed-off-by: Seth David Schoen <schoen@loyalty.org>
Suggested-by: John Gilmore <gnu@toad.com>
Acked-by: Dave Taht <dave.taht@gmail.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Link: https://lore.kernel.org/r/20210126040834.GR24989@frotz.zork.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/Makefile
tools/testing/selftests/net/unicast_extensions.sh [new file with mode: 0755]