freebsd-dev/sbin
Alexander V. Chernikov 3deb3649d5 Fix incorrect netmasks being passed via rtsock.
Since radix has been ignoring sa_family in passed sockaddrs,
no one ever has bothered filling valid sa_family in netmasks.
Additionally, radix adjusts sa_len field in every netmask not to
compare zero bytes at all.

This leads us to rt_mask with sa_family of AF_UNSPEC (-1) and
arbitrary sa_len field (0 for default route, for example).

However, rtsock have been passing that rt_mask intact for ages,
requiring all rtsock consumers to make ther own local hacks.
We even have unfixed on in base:

do `route -n monitor` in one window and issue `route -n get addr`
for some directly-connected address. You will probably see the following:

got message of size 304 on Thu May  8 15:06:06 2014
RTM_GET: Report Metrics: len 304, pid: 30493, seq 1, errno 0, flags:<UP,DONE,PINNED>
locks:  inits:
sockaddrs: <DST,GATEWAY,NETMASK,IFP,IFA>
 10.0.0.0 link#1 (255) ffff ffff ff em0:8.0.27.c5.29.d4 10.0.0.92
_________________^^^^^^^^^^^^^^^^^^

after the change:

got message of size 312 on Thu May  8 15:44:07 2014
RTM_GET: Report Metrics: len 312, pid: 2895, seq 1, errno 0, flags:<UP,DONE,PINNED>
locks:  inits:
sockaddrs: <DST,GATEWAY,NETMASK,IFP,IFA>
 10.0.0.0 link#1 255.255.255.0 em0:8.0.27.c5.29.d4 10.0.0.92
_________________^^^^^^^^^^^^^^^^^^

Sponsored by:	Yandex LLC
MFC after:	1 month
2014-05-08 11:56:06 +00:00
..
adjkerntz Revert r253748,253749 2013-07-28 18:44:17 +00:00
atm Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
badsect
bsdlabel Sweep man pages replacing ad -> ada. 2013-10-01 18:41:53 +00:00
camcontrol Add information about supported NCQ functionality to camcontrol identify. 2014-04-24 02:16:23 +00:00
casperd Detach from controlling session of parent. This is similar 2014-04-03 22:14:18 +00:00
ccdconfig Sweep man pages replacing ad -> ada. 2013-10-01 18:41:53 +00:00
clri
comcontrol
conscontrol
ddb
devd Revert r263694, and apply a better fix to squelch unnecessary warnings 2014-03-26 19:31:33 +00:00
devfs Clarify how "hide" and "unhide" commands work on directories. 2013-07-12 06:03:25 +00:00
dhclient Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
dmesg Move the check whether the clear flag is set. This has 2 advantages 2013-06-11 17:46:32 +00:00
dump
dumpfs When running the -m option to generate a newfs(8) command suitable for 2013-05-16 20:07:08 +00:00
dumpon Adapt to the fact that minidumps are now on by default. 2013-04-30 07:22:03 +00:00
etherswitchcfg Add a license (1) and do some cleanup. 2014-02-04 22:20:17 +00:00
fdisk Fix fdisk(8) to create 2TB partitions on disks larger than 2TB, rather than 2013-11-27 17:59:13 +00:00
fdisk_pc98 Change <sys/diskpc98.h> to not redefine the same symbols that are 2013-08-07 00:00:48 +00:00
ffsinfo
fsck
fsck_ffs Avoid segment fault when attempting to clean up cylinder group 2014-03-12 01:28:21 +00:00
fsck_msdosfs
fsdb Add globs.c to the build now that it's a separate file. 2013-12-30 01:17:05 +00:00
fsirand
gbde Add a missing break in option parsing. 2014-04-15 07:37:56 +00:00
geom Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
ggate Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
growfs Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
gvinum - Sprinkle const and static as appropriate. 2014-05-07 09:15:46 +00:00
hastctl Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
hastd Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
ifconfig Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
init init: Remove code to track line numbers in /etc/ttys. 2014-02-08 13:51:15 +00:00
ipf Update ipfilter 4.1.28 --> 5.1.2. 2013-09-06 23:11:19 +00:00
ipfw Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
iscontrol Reword the part about mutual CHAP. 2013-12-17 10:33:27 +00:00
kldconfig kldconfig: Remove some code for compatibility with FreeBSD 4.x. 2014-03-09 13:19:37 +00:00
kldload Fix dmesg(1) -> dmesg(8) 2014-01-13 17:14:10 +00:00
kldstat Add quiet support for kldstat -n 2014-01-22 17:15:17 +00:00
kldunload
ldconfig
mca
md5 Add the Clang specific -Wmissing-variable-declarations to WARNS=6. 2013-04-19 19:45:00 +00:00
mdconfig Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
mdmfs
mknod
mksnap_ffs
mount Minor mdoc fixes. 2013-07-18 05:46:33 +00:00
mount_cd9660
mount_fusefs In tree makefile shouldn't be setting policy piecemeal. Don't set 2014-04-13 05:22:22 +00:00
mount_msdosfs Sweep man pages replacing ad -> ada. 2013-10-01 18:41:53 +00:00
mount_nfs Document the noncontigwr NFS mount option. 2013-12-08 00:59:04 +00:00
mount_nullfs
mount_udf Unbreak mount_udf by passing the correct iovec length into 2014-02-04 21:15:15 +00:00
mount_unionfs
nandfs
natd
newfs Refer newfs and growfs users to fsck_ffs instead of 2014-02-09 14:28:47 +00:00
newfs_msdos Small cleanup: mostly whitespace vs. tabs. 2014-04-30 21:19:46 +00:00
newfs_nandfs Slight if reordering to make error branch last. 2014-03-07 01:01:57 +00:00
nfsiod
nos-tun Use INADDR_NONE instead of -1 to check inet_addr() result. 2013-10-15 07:37:30 +00:00
nvmecontrol For "nvmecontrol devlist", show namespace sizes in terms of MB instead of 2014-01-06 23:48:47 +00:00
pfctl Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
pflogd
ping Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
ping6 Remove EOL whitespace. 2013-05-08 21:04:19 +00:00
quotacheck
rcorder
reboot Add a new gptboot(8) man page. Factor out the redundant information 2013-07-01 22:38:36 +00:00
recoverdisk Sweep man pages replacing ad -> ada. 2013-10-01 18:41:53 +00:00
resolvconf
restore
route Fix incorrect netmasks being passed via rtsock. 2014-05-08 11:56:06 +00:00
routed mdoc sweep 2013-05-13 18:13:50 +00:00
rtsol NO_MAN= has been deprecated in favor of MAN= for some time, go ahead 2014-04-13 05:21:56 +00:00
savecore Fix double fclose() in an error case. 2014-04-14 21:44:34 +00:00
sconfig
setkey Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
shutdown
spppcontrol
sunlabel
swapon swapon: Fix buffer overflow when configuring encrypted swap on GBDE. 2013-12-21 11:59:58 +00:00
sysctl Fix warnings to not append "No error: 0". 2013-11-26 19:14:18 +00:00
tests Migrate tools/regression/sbin/ to the new tests layout. 2014-03-16 02:07:08 +00:00
tunefs Constify string pointers. 2013-05-16 21:04:56 +00:00
umount
Makefile Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
Makefile.amd64
Makefile.arm
Makefile.i386
Makefile.ia64
Makefile.inc Use src.opts.mk in preference to bsd.own.mk except where we need stuff 2014-05-06 04:22:01 +00:00
Makefile.mips
Makefile.pc98
Makefile.sparc64