OpenBSD cvs log

created 2022-12-04T15:07:24Z
begin 2022-11-28T00:00:00Z
end 2022-11-29T00:00:00Z
path src/sys
commits 4

date 2022-11-28T13:08:53Z
author kn
files src/sys/netinet6/nd6_nbr.c log diff annotate
message Statically initialise DAD list, remove obsolete dad_init

The list of IPv6 addresses to perfom Duplicate Address Detection on is
local to nd6_nbr.c; statically initialise it so `dad_init' can go.

nd6_dad_find() keeps returning NULL on an initialised but empty list,
so nd6_dad_stop() keeps returning early.

Feedback OK mvs

date 2022-11-28T13:10:58Z
author kn
files src/sys/netinet6/nd6.c log diff annotate
message Remove useless nd6_init_done

Only ip6_init() calls nd6_init(), exactly once, just like it calls
frag6_init() which on the other hand does not have some fra6_init_done to
guard against itself.

Like all other domains, ip6_init() is called in domaininit(), early in the
kernel's main().

This variable was probably never useful and stems from nd6.c r1.1:
bring in KAME IPv6 code, dated 19991208.

OK mvs

date 2022-11-28T19:13:36Z
author kn
files src/sys/netinet6/nd6.c log diff annotate
src/sys/netinet6/nd6.h log diff annotate
message Document struct nd_ifinfo protection, remove obsolete .initialized member

All access to struct ifnet's member *if_nd is read-only, with the one
write exception being nd6_slowtimo() updating ND information.

IPv6 Neighbour Discovery information is fully protected by the net lock.
---
nd6_ifattach() allocates and unconditionally initialises struct ifnet's
*if_nd member, so early in if_attachsetup() that there is no way to query
unitialised Neighour Unreachable Detection bits.

Only SIOCGIFINFO_IN6 through ndp(8) used the .initialized member:
Added/set since 2002 sys/netinet6/nd6.c r1.42
attach nd_ifinfo structure to if_afdata.
split IPv6 MTU (advertised by RA) from real link MTU.
sync with kame

Read since 2002 usr.sbin/ndp/ndp.c r1.16
use new SIOCGIFINFO_IN6. random other cleanups. sync w/kame.

Obsolete since 2017 sys/netinet6/nd6.c r1.217
usr.sbin/ndp/ndp.c r1.85
Remove knob and always do neighbor unreachable detection.

Feedback OK bluhm

date 2022-11-28T21:39:28Z
author mvs
files src/sys/kern/uipc_socket.c log diff annotate
message Simplify return path of (*pr_ctloutput)() return value in sogetopt().

ok guenther@ kn@