Hi, there seems to be a nullptr dereference in if_hooks_run. When the inner while loop is exited because 't == NULL' the next line is an access to 't->t_func'. Because 't==NULL' means the TAILQ is fully traversed I think we should break and exit instead.
ok? Index: if.c =================================================================== RCS file: /mount/openbsd/cvs/src/sys/net/if.c,v retrieving revision 1.600 diff -u -p -r1.600 if.c --- if.c 24 Jan 2020 05:14:51 -0000 1.600 +++ if.c 9 Mar 2020 21:25:06 -0000 @@ -1055,6 +1055,8 @@ if_hooks_run(struct task_list *hooks) if (t == NULL) break; } + if (t == NULL) + break; func = t->t_func; arg = t->t_arg;