Page MenuHomeFreeBSD

[rtsock] Enforce netmask/RTF_HOST consistency
ClosedPublic

Authored by melifaro on Apr 23 2021, 9:54 PM.
Tags
None
Referenced Files
F143379464: D29958.diff
Thu, Jan 29, 4:09 PM
Unknown Object (File)
Wed, Jan 28, 5:24 AM
Unknown Object (File)
Dec 24 2025, 7:13 AM
Unknown Object (File)
Dec 10 2025, 1:08 PM
Unknown Object (File)
Dec 9 2025, 1:16 PM
Unknown Object (File)
Nov 17 2025, 3:43 AM
Unknown Object (File)
Nov 17 2025, 3:37 AM
Unknown Object (File)
Nov 15 2025, 6:21 AM
Subscribers

Details

Summary

Traditionally we had 2 sources of information whether the added/delete route request targets network or a host route:
netmask (RTA_NETMASK) and RTF_HOST flag.

The former one is tricky: netmask can be empty or can explicitly specify the host netmask. Parsing netmask sockaddr requires per-family parsing and that's what rtsock code traditionally avoided. As a result, consistency was not enforced and it was possible to specify network with the RTF_HOST flag and vice versa.

Continue normalization efforts from D29826 and D29826 and ensure that RTF_HOST flag always reflects host/network data from netmask field.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable