diff options
author | Renato Botelho <renato@netgate.com> | 2018-05-02 08:07:31 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2018-05-02 08:07:31 -0300 |
commit | 4cae342a99f2b469c33c010d8186d137c08289f1 (patch) | |
tree | 76b14d6c4b0a429012e289c3ecdc8a1dee9af019 | |
parent | 4e26ea70b2f6261afb7415e92e327c885c851e5b (diff) | |
download | FreeBSD-src-4cae342a99f2b469c33c010d8186d137c08289f1.zip FreeBSD-src-4cae342a99f2b469c33c010d8186d137c08289f1.tar.gz |
Create pfil_add_named_hook_flags() variant and revert pfil_add_named_hook() to use pfil_func_t
-rw-r--r-- | sys/net/pfil.c | 9 | ||||
-rw-r--r-- | sys/net/pfil.h | 3 | ||||
-rw-r--r-- | sys/netpfil/ipfw/ip_fw_pfil.c | 2 | ||||
-rw-r--r-- | sys/netpfil/pf/pf_ioctl.c | 8 |
4 files changed, 15 insertions, 7 deletions
diff --git a/sys/net/pfil.c b/sys/net/pfil.c index 8a30e86..77f0402 100644 --- a/sys/net/pfil.c +++ b/sys/net/pfil.c @@ -428,12 +428,19 @@ pfil_add_hook(pfil_func_t func, void *arg, int flags, struct pfil_head *ph) } int -pfil_add_named_hook(pfil_func_flags_t func, void *arg, char *name, int flags, +pfil_add_named_hook_flags(pfil_func_flags_t func, void *arg, char *name, int flags, struct pfil_head *ph) { return (pfil_add_hook_priv(func, arg, name, flags, ph, true)); } +int +pfil_add_named_hook(pfil_func_t func, void *arg, char *name, int flags, + struct pfil_head *ph) +{ + return (pfil_add_hook_priv(func, arg, name, flags, ph, false)); +} + static int pfil_add_hook_priv(void *func, void *arg, char *name, int flags, struct pfil_head *ph, bool hasflags) diff --git a/sys/net/pfil.h b/sys/net/pfil.h index 727d9a5..dca3928 100644 --- a/sys/net/pfil.h +++ b/sys/net/pfil.h @@ -112,7 +112,8 @@ struct pfil_head *pfil_head_get(int, u_long); void pfil_head_export_sysctl(struct pfil_head *, struct sysctl_oid_list *); int pfil_add_hook_flags(pfil_func_flags_t, void *, int, struct pfil_head *); int pfil_add_hook(pfil_func_t, void *, int, struct pfil_head *); -int pfil_add_named_hook(pfil_func_flags_t, void *, char *, int, struct pfil_head *); +int pfil_add_named_hook_flags(pfil_func_flags_t, void *, char *, int, struct pfil_head *); +int pfil_add_named_hook(pfil_func_t, void *, char *, int, struct pfil_head *); int pfil_remove_hook_flags(pfil_func_flags_t, void *, int, struct pfil_head *); int pfil_remove_hook(pfil_func_t, void *, int, struct pfil_head *); #define PFIL_HOOKED(p) ((p)->ph_nhooks > 0) diff --git a/sys/netpfil/ipfw/ip_fw_pfil.c b/sys/netpfil/ipfw/ip_fw_pfil.c index f014dfb..8c80c0a 100644 --- a/sys/netpfil/ipfw/ip_fw_pfil.c +++ b/sys/netpfil/ipfw/ip_fw_pfil.c @@ -504,7 +504,7 @@ static int ipfw_hook(int onoff, int pf) { struct pfil_head *pfh; - pfil_func_t hook_func; + pfil_func_flags_t hook_func; pfh = pfil_head_get(PFIL_TYPE_AF, pf); if (pfh == NULL) diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index ef0bc27..a3da0e8 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -3880,8 +3880,8 @@ hook_pf(void) pfh_inet = pfil_head_get(PFIL_TYPE_AF, AF_INET); if (pfh_inet == NULL) return (ESRCH); /* XXX */ - pfil_add_named_hook(pf_check_in, NULL, "pf", PFIL_IN | PFIL_WAITOK, pfh_inet); - pfil_add_named_hook(pf_check_out, NULL, "pf", PFIL_OUT | PFIL_WAITOK, pfh_inet); + pfil_add_named_hook_flags(pf_check_in, NULL, "pf", PFIL_IN | PFIL_WAITOK, pfh_inet); + pfil_add_named_hook_flags(pf_check_out, NULL, "pf", PFIL_OUT | PFIL_WAITOK, pfh_inet); #endif #ifdef INET6 pfh_inet6 = pfil_head_get(PFIL_TYPE_AF, AF_INET6); @@ -3894,9 +3894,9 @@ hook_pf(void) #endif return (ESRCH); /* XXX */ } - pfil_add_named_hook(pf_check6_in, NULL, "pf", PFIL_IN | PFIL_WAITOK, + pfil_add_named_hook_flags(pf_check6_in, NULL, "pf", PFIL_IN | PFIL_WAITOK, pfh_inet6); - pfil_add_named_hook(pf_check6_out, NULL, "pf", PFIL_OUT | PFIL_WAITOK, + pfil_add_named_hook_flags(pf_check6_out, NULL, "pf", PFIL_OUT | PFIL_WAITOK, pfh_inet6); #endif |