CVSROOT: /cvs Module name: src Changes by: d...@cvs.openbsd.org 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.