CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2019/11/08 00:16:30
Modified files:
sys/net : if.c if_pppx.c if_spppsubr.c if_var.h
if_vxlan.c pf_if.c
sys/netinet : in.c ip_carp.c
sys/netinet6 : in6.c in6_ifattach.c
Log message:
convert interface address change hooks to tasks and a task_list.
this follows what's been done for detach and link state hooks, and
makes handling of hooks generally more robust.
address hooks are a bit different to detach/link state hooks in
that there's only a few things that register hooks (carp, pf, vxlan),
but a lot of places to run the hooks (lots of ipv4 and ipv6 address
configuration).
an address hook cookie was in struct pfi_kif, which is part of the
pf abi. rather than break pfctl -sI, this maintains the void * used
for the cookie and uses it to store a task, which is then used as
intended with the new api.