diff options
author | rodrigc <rodrigc@FreeBSD.org> | 2015-01-06 16:47:02 +0000 |
---|---|---|
committer | rodrigc <rodrigc@FreeBSD.org> | 2015-01-06 16:47:02 +0000 |
commit | 89bede2eff3c3f719c21c7a660788dc517c50a27 (patch) | |
tree | 7519379f147c8ff3e9093a103d00b70b8ff1864e /sys/netpfil/pf/pf_ioctl.c | |
parent | c3d19543428cfff617547a6c8786858df5b9d09c (diff) | |
download | FreeBSD-src-89bede2eff3c3f719c21c7a660788dc517c50a27.zip FreeBSD-src-89bede2eff3c3f719c21c7a660788dc517c50a27.tar.gz |
Reapply previous patch to fix build.
PR: 194515
Diffstat (limited to 'sys/netpfil/pf/pf_ioctl.c')
-rw-r--r-- | sys/netpfil/pf/pf_ioctl.c | 34 |
1 files changed, 10 insertions, 24 deletions
diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index db4fdde..ef479bc 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -87,7 +87,7 @@ __FBSDID("$FreeBSD$"); #include <altq/altq.h> #endif -static int pfattach(void); +static int pf_vnet_init(void); static struct pf_pool *pf_get_pool(char *, u_int32_t, u_int8_t, u_int32_t, u_int8_t, u_int8_t, u_int8_t); @@ -204,17 +204,20 @@ pfsync_defer_t *pfsync_defer_ptr = NULL; pflog_packet_t *pflog_packet_ptr = NULL; static int -pfattach(void) +pf_vnet_init(void) { u_int32_t *my_timeout = V_pf_default_rule.timeout; int error; if (IS_DEFAULT_VNET(curvnet)) pf_mtag_initialize(); - pf_initialize(); + TAILQ_INIT(&V_pf_tags); + TAILQ_INIT(&V_pf_qids); + + pf_vnet_initialize(); pfr_initialize(); - pfi_initialize(); - pf_normalize_init(); + pfi_vnet_initialize(); + pf_vnet_normalize_init(); V_pf_limits[PF_LIMIT_STATES].limit = PFSTATE_HIWAT; V_pf_limits[PF_LIMIT_SRC_NODES].limit = PFSNODE_HIWAT; @@ -3717,27 +3720,11 @@ dehook_pf(void) static int pf_load(void) { - int error; - - VNET_ITERATOR_DECL(vnet_iter); - - VNET_LIST_RLOCK(); - VNET_FOREACH(vnet_iter) { - CURVNET_SET(vnet_iter); - V_pf_pfil_hooked = 0; - V_pf_end_threads = 0; - TAILQ_INIT(&V_pf_tags); - TAILQ_INIT(&V_pf_qids); - CURVNET_RESTORE(); - } - VNET_LIST_RUNLOCK(); rw_init(&pf_rules_lock, "pf rulesets"); sx_init(&pf_ioctl_lock, "pf ioctl"); pf_dev = make_dev(&pf_cdevsw, 0, 0, 0, 0600, PF_NAME); - if ((error = pfattach()) != 0) - return (error); return (0); } @@ -3810,6 +3797,5 @@ static moduledata_t pf_mod = { DECLARE_MODULE(pf, pf_mod, SI_SUB_PSEUDO, SI_ORDER_FIRST); MODULE_VERSION(pf, PF_MODVER); - -VNET_SYSINIT(vnet_pf_init, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY - 255, - vnet_pf_init, NULL); +VNET_SYSINIT(pf_vnet_init, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY - 255, + pf_vnet_init, NULL); |