Page MenuHomeFreeBSD

netinet6: store ND context directly in struct in6_ifextra
Needs ReviewPublic

Authored by glebius on Thu, Jan 15, 3:25 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Jan 15, 5:18 PM
Unknown Object (File)
Thu, Jan 15, 12:50 PM
Unknown Object (File)
Thu, Jan 15, 11:14 AM
Unknown Object (File)
Thu, Jan 15, 8:47 AM
Unknown Object (File)
Thu, Jan 15, 7:03 AM
Unknown Object (File)
Thu, Jan 15, 6:15 AM
Unknown Object (File)
Thu, Jan 15, 5:33 AM
Subscribers

Details

Reviewers
jhibbits
madpilot
Group Reviewers
network
transport
Summary

Stop using struct nd_ifinfo for that, because it is an API struct for
SIOCGIFINFO_IN6. The functional changes are isolated to the protocol
attach and detach: in6_ifarrival(), nd6_ifattach(), in6_ifdeparture(),
nd6_ifdetach(), as well as to the nd6_ioctl(), nd6_ra_input(),
nd6_slowtimo() and in6_ifmtu().

The dad_failures member was just renamed to match the rest. The M_IP6NDP
malloc(9) type declaration moved to files that actually use it.

The rest of the changes are mechanical substitution of double pointer
dereference via ND_IFINFO() to a single pointer dereference. This was
achieved with a sed(1) script:

s/ND_IFINFO\(([a-z0-9>_.-]+)\)->(flags|linkmtu|basereachable|reachable|retrans|chlim)/\1->if_inet6->nd_\2/g
s/nd_chlim/nd_curhoplimit/g

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 69900
Build 66783: arc lint + arc unit