aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJP Abgrall <jpa@google.com>2011-06-21 11:14:49 -0700
committerArve Hjønnevåg <arve@android.com>2013-06-11 17:46:26 -0700
commit5f2064b6be18cf9438e49e948fa0f7ef1e1d6adc (patch)
tree78361929c8ad1521997b48755957371b12390466 /include
parent5c7997288b1305de84bfe84a4a0866248ca4b9f2 (diff)
netfilter: adding the original quota2 from xtables-addons
The original xt_quota in the kernel is plain broken: - counts quota at a per CPU level (was written back when ubiquitous SMP was just a dream) - provides no way to count across IPV4/IPV6. This patch is the original unaltered code from: http://sourceforge.net/projects/xtables-addons at commit e84391ce665cef046967f796dd91026851d6bbf3 Change-Id: I19d49858840effee9ecf6cff03c23b45a97efdeb Signed-off-by: JP Abgrall <jpa@google.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/netfilter/xt_quota2.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/linux/netfilter/xt_quota2.h b/include/linux/netfilter/xt_quota2.h
new file mode 100644
index 00000000000..eadc6903314
--- /dev/null
+++ b/include/linux/netfilter/xt_quota2.h
@@ -0,0 +1,25 @@
+#ifndef _XT_QUOTA_H
+#define _XT_QUOTA_H
+
+enum xt_quota_flags {
+ XT_QUOTA_INVERT = 1 << 0,
+ XT_QUOTA_GROW = 1 << 1,
+ XT_QUOTA_PACKET = 1 << 2,
+ XT_QUOTA_NO_CHANGE = 1 << 3,
+ XT_QUOTA_MASK = 0x0F,
+};
+
+struct xt_quota_counter;
+
+struct xt_quota_mtinfo2 {
+ char name[15];
+ u_int8_t flags;
+
+ /* Comparison-invariant */
+ aligned_u64 quota;
+
+ /* Used internally by the kernel */
+ struct xt_quota_counter *master __attribute__((aligned(8)));
+};
+
+#endif /* _XT_QUOTA_H */