Changeset View
Changeset View
Standalone View
Standalone View
sys/netpfil/ipfilter/netinet/ip_fil_freebsd.c
Show First 20 Lines • Show All 1,306 Lines • ▼ Show 20 Lines | |||||
#ifdef USE_INET6 | #ifdef USE_INET6 | ||||
pfil_remove_hook(V_ipf_inet6_hook); | pfil_remove_hook(V_ipf_inet6_hook); | ||||
#endif | #endif | ||||
return (0); | return (0); | ||||
} | } | ||||
int ipf_pfil_hook(void) { | int ipf_pfil_hook(void) { | ||||
struct pfil_hook_args pha; | |||||
struct pfil_link_args pla; | |||||
int error, error6; | int error, error6; | ||||
pha.pa_version = PFIL_VERSION; | struct pfil_hook_args pha = { | ||||
pha.pa_flags = PFIL_IN | PFIL_OUT; | .pa_version = PFIL_VERSION, | ||||
pha.pa_modname = "ipfilter"; | .pa_flags = PFIL_IN | PFIL_OUT, | ||||
pha.pa_rulname = "default-ip4"; | .pa_modname = "ipfilter", | ||||
pha.pa_func = ipf_check_wrapper; | .pa_rulname = "default-ip4", | ||||
pha.pa_ruleset = NULL; | .pa_mbuf_chk = ipf_check_wrapper, | ||||
pha.pa_type = PFIL_TYPE_IP4; | .pa_type = PFIL_TYPE_IP4, | ||||
}; | |||||
V_ipf_inet_hook = pfil_add_hook(&pha); | V_ipf_inet_hook = pfil_add_hook(&pha); | ||||
#ifdef USE_INET6 | #ifdef USE_INET6 | ||||
pha.pa_rulname = "default-ip6"; | pha.pa_rulname = "default-ip6"; | ||||
pha.pa_func = ipf_check_wrapper6; | pha.pa_mbuf_chk = ipf_check_wrapper6; | ||||
pha.pa_type = PFIL_TYPE_IP6; | pha.pa_type = PFIL_TYPE_IP6; | ||||
V_ipf_inet6_hook = pfil_add_hook(&pha); | V_ipf_inet6_hook = pfil_add_hook(&pha); | ||||
#endif | #endif | ||||
pla.pa_version = PFIL_VERSION; | struct pfil_link_args pla = { | ||||
pla.pa_flags = PFIL_IN | PFIL_OUT | | .pa_version = PFIL_VERSION, | ||||
PFIL_HEADPTR | PFIL_HOOKPTR; | .pa_flags = PFIL_IN | PFIL_OUT | PFIL_HEADPTR | PFIL_HOOKPTR, | ||||
pla.pa_head = V_inet_pfil_head; | .pa_head = V_inet_pfil_head, | ||||
pla.pa_hook = V_ipf_inet_hook; | .pa_hook = V_ipf_inet_hook, | ||||
}; | |||||
error = pfil_link(&pla); | error = pfil_link(&pla); | ||||
error6 = 0; | error6 = 0; | ||||
#ifdef USE_INET6 | #ifdef USE_INET6 | ||||
pla.pa_head = V_inet6_pfil_head; | pla.pa_head = V_inet6_pfil_head; | ||||
pla.pa_hook = V_ipf_inet6_hook; | pla.pa_hook = V_ipf_inet6_hook; | ||||
error6 = pfil_link(&pla); | error6 = pfil_link(&pla); | ||||
#endif | #endif | ||||
▲ Show 20 Lines • Show All 118 Lines • Show Last 20 Lines |