! ! Fix a bug when NPFSYNC > 0 that on FreeBSD we'd always return ! and never remove states. ! ! Reported by: many on freebsd-pf ! Tested by: flo ! MFC After: 3 days ! Index: sys/contrib/pf/net/pf.c =================================================================== --- sys/contrib/pf/net/pf.c (revision 226526) +++ sys/contrib/pf/net/pf.c (working copy) @@ -1626,8 +1626,8 @@ pf_free_state(struct pf_state *cur) #if NPFSYNC > 0 #ifdef __FreeBSD__ - if (pfsync_state_in_use_ptr != NULL) - pfsync_state_in_use_ptr(cur); + if (pfsync_state_in_use_ptr != NULL && + pfsync_state_in_use_ptr(cur)) #else if (pfsync_state_in_use(cur)) #endif