mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-24 11:29:10 +00:00
3deb3649d5
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 |
||
---|---|---|
.. | ||
adjkerntz | ||
atm | ||
badsect | ||
bsdlabel | ||
camcontrol | ||
casperd | ||
ccdconfig | ||
clri | ||
comcontrol | ||
conscontrol | ||
ddb | ||
devd | ||
devfs | ||
dhclient | ||
dmesg | ||
dump | ||
dumpfs | ||
dumpon | ||
etherswitchcfg | ||
fdisk | ||
fdisk_pc98 | ||
ffsinfo | ||
fsck | ||
fsck_ffs | ||
fsck_msdosfs | ||
fsdb | ||
fsirand | ||
gbde | ||
geom | ||
ggate | ||
growfs | ||
gvinum | ||
hastctl | ||
hastd | ||
ifconfig | ||
init | ||
ipf | ||
ipfw | ||
iscontrol | ||
kldconfig | ||
kldload | ||
kldstat | ||
kldunload | ||
ldconfig | ||
mca | ||
md5 | ||
mdconfig | ||
mdmfs | ||
mknod | ||
mksnap_ffs | ||
mount | ||
mount_cd9660 | ||
mount_fusefs | ||
mount_msdosfs | ||
mount_nfs | ||
mount_nullfs | ||
mount_udf | ||
mount_unionfs | ||
nandfs | ||
natd | ||
newfs | ||
newfs_msdos | ||
newfs_nandfs | ||
nfsiod | ||
nos-tun | ||
nvmecontrol | ||
pfctl | ||
pflogd | ||
ping | ||
ping6 | ||
quotacheck | ||
rcorder | ||
reboot | ||
recoverdisk | ||
resolvconf | ||
restore | ||
route | ||
routed | ||
rtsol | ||
savecore | ||
sconfig | ||
setkey | ||
shutdown | ||
spppcontrol | ||
sunlabel | ||
swapon | ||
sysctl | ||
tests | ||
tunefs | ||
umount | ||
Makefile | ||
Makefile.amd64 | ||
Makefile.arm | ||
Makefile.i386 | ||
Makefile.ia64 | ||
Makefile.inc | ||
Makefile.mips | ||
Makefile.pc98 | ||
Makefile.sparc64 |