Linux 2.6.17.7
[linux/fpc-iii.git] / net / netfilter / xt_comment.c
blob197609cb06d7e6cb6249d291aeb06abc00abec75
1 /*
2 * Implements a dummy match to allow attaching comments to rules
4 * 2003-05-13 Brad Fisher (brad@info-link.net)
5 */
7 #include <linux/module.h>
8 #include <linux/skbuff.h>
9 #include <linux/netfilter/x_tables.h>
10 #include <linux/netfilter/xt_comment.h>
12 MODULE_AUTHOR("Brad Fisher <brad@info-link.net>");
13 MODULE_DESCRIPTION("iptables comment match module");
14 MODULE_LICENSE("GPL");
15 MODULE_ALIAS("ipt_comment");
16 MODULE_ALIAS("ip6t_comment");
18 static int
19 match(const struct sk_buff *skb,
20 const struct net_device *in,
21 const struct net_device *out,
22 const struct xt_match *match,
23 const void *matchinfo,
24 int offset,
25 unsigned int protooff,
26 int *hotdrop)
28 /* We always match */
29 return 1;
32 static struct xt_match comment_match = {
33 .name = "comment",
34 .match = match,
35 .matchsize = sizeof(struct xt_comment_info),
36 .family = AF_INET,
37 .me = THIS_MODULE
40 static struct xt_match comment6_match = {
41 .name = "comment",
42 .match = match,
43 .matchsize = sizeof(struct xt_comment_info),
44 .family = AF_INET6,
45 .me = THIS_MODULE
48 static int __init xt_comment_init(void)
50 int ret;
52 ret = xt_register_match(&comment_match);
53 if (ret)
54 return ret;
56 ret = xt_register_match(&comment6_match);
57 if (ret)
58 xt_unregister_match(&comment_match);
60 return ret;
63 static void __exit xt_comment_fini(void)
65 xt_unregister_match(&comment_match);
66 xt_unregister_match(&comment6_match);
69 module_init(xt_comment_init);
70 module_exit(xt_comment_fini);