diff options
author | Harald Welte <laforge@netfilter.org> | 2005-08-09 23:23:11 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2005-08-29 18:51:18 -0400 |
commit | bbd86b9fc469b7e91dc7444e6abb8930811d79cb (patch) | |
tree | 0d1133f5f499cab639784407f53938ba5060807f /include | |
parent | fbcd923c3e0c8ec9e4ed64f5a4e5766807b32729 (diff) |
[NETFILTER]: add /proc/net/netfilter interface to nf_queue
This patch adds a /proc/net/netfilter/nf_queue file, similar to the
recently-added /proc/net/netfilter/nf_log. It indicates which queue
handler is registered to which protocol family. This is useful since
there are now multiple queue handlers in the treee (ip[6]_queue,
nfnetlink_queue).
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/netfilter.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h index 815583af06c2..bf430fcbe364 100644 --- a/include/linux/netfilter.h +++ b/include/linux/netfilter.h | |||
@@ -225,13 +225,16 @@ int nf_getsockopt(struct sock *sk, int pf, int optval, char __user *opt, | |||
225 | int *len); | 225 | int *len); |
226 | 226 | ||
227 | /* Packet queuing */ | 227 | /* Packet queuing */ |
228 | typedef int (*nf_queue_outfn_t)(struct sk_buff *skb, | 228 | struct nf_queue_handler { |
229 | struct nf_info *info, | 229 | int (*outfn)(struct sk_buff *skb, struct nf_info *info, |
230 | unsigned int queuenum, void *data); | 230 | unsigned int queuenum, void *data); |
231 | void *data; | ||
232 | char *name; | ||
233 | }; | ||
231 | extern int nf_register_queue_handler(int pf, | 234 | extern int nf_register_queue_handler(int pf, |
232 | nf_queue_outfn_t outfn, void *data); | 235 | struct nf_queue_handler *qh); |
233 | extern int nf_unregister_queue_handler(int pf); | 236 | extern int nf_unregister_queue_handler(int pf); |
234 | extern void nf_unregister_queue_handlers(nf_queue_outfn_t outfn); | 237 | extern void nf_unregister_queue_handlers(struct nf_queue_handler *qh); |
235 | extern void nf_reinject(struct sk_buff *skb, | 238 | extern void nf_reinject(struct sk_buff *skb, |
236 | struct nf_info *info, | 239 | struct nf_info *info, |
237 | unsigned int verdict); | 240 | unsigned int verdict); |