PFIL hooks

Artis Caune Artis.Caune at latnet.lv
Tue Jun 5 07:10:45 UTC 2007


I want to monitor pf tagged mbufs, but (without kld hacks) I can see 
only IN or OUT direction, because PFIL insert hooks in reverse order.

Hack like this works, but is ugly:
# kldload mymodule
# mymodule -enable PFIL_OUT
# kldload pf
# pfctl -e
# mymodule -enable PFIL_IN


How about PFIL_HEAD, PFIL_TAIL flags for pfil_add_hook?



pfil_list_add()
...
if (flags & PFIL_IN) {
   if (flags & PFIL_TAIL)
     TAILQ_INSERT_TAIL(list, pfh1, pfil_link);
   else
     TAILQ_INSERT_HEAD(list, pfh1, pfil_link);
} else {
   if (flags & PFIL_HEAD)
     TAILQ_INSERT_HEAD(list, pfh1, pfil_link);
   else
     TAILQ_INSERT_TAIL(list, pfh1, pfil_link);
}


More information about the freebsd-net mailing list