summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathieu Poirier <mathieu.poirier@linaro.org>2013-12-11 08:34:16 -0700
committerJP Abgrall <jpa@google.com>2014-01-06 18:32:59 -0800
commit24cf2662b43592ab2ae8be6b30c2744e83ddff3c (patch)
tree8122f11fd3ab4dbb6d05c678d698e0d103fa4a94
parentf5e432bb470e9b95c7c774f06959cda3b77cbaba (diff)
downloadandroid_external_libnl-24cf2662b43592ab2ae8be6b30c2744e83ddff3c.tar.gz
android_external_libnl-24cf2662b43592ab2ae8be6b30c2744e83ddff3c.tar.bz2
android_external_libnl-24cf2662b43592ab2ae8be6b30c2744e83ddff3c.zip
Adding support for netlink API and quota in nfaccounting
- Adding nfnl.c to the list of APIs to compile. - Adding NF ACCOUNTING subsystem as in kernel header. - Adding connection tracking quota group. Change-Id: I5bc2c415723418d6e91e457e8eac9b3205798981 Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
-rw-r--r--Android.mk3
-rw-r--r--include/linux/netfilter/nfnetlink.h4
-rw-r--r--include/linux/netfilter/nfnetlink_acct.h27
3 files changed, 33 insertions, 1 deletions
diff --git a/Android.mk b/Android.mk
index ca6e5a7..4d61c47 100644
--- a/Android.mk
+++ b/Android.mk
@@ -22,7 +22,8 @@ LOCAL_SRC_FILES := lib/cache.c \
lib/genl/family.c \
lib/genl/genl.c \
lib/route/rtnl.c \
- lib/route/route_utils.c
+ lib/route/route_utils.c \
+ lib/netfilter/nfnl.c
#LOCAL_CFLAGS :=
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
diff --git a/include/linux/netfilter/nfnetlink.h b/include/linux/netfilter/nfnetlink.h
index 1e59984..20835a1 100644
--- a/include/linux/netfilter/nfnetlink.h
+++ b/include/linux/netfilter/nfnetlink.h
@@ -10,6 +10,7 @@
#define NF_NETLINK_CONNTRACK_EXP_NEW 0x00000008
#define NF_NETLINK_CONNTRACK_EXP_UPDATE 0x00000010
#define NF_NETLINK_CONNTRACK_EXP_DESTROY 0x00000020
+#define NF_NETLINK_CONNTRACK_QUOTA 0x00000040
#endif
enum nfnetlink_groups {
@@ -27,6 +28,8 @@ enum nfnetlink_groups {
#define NFNLGRP_CONNTRACK_EXP_UPDATE NFNLGRP_CONNTRACK_EXP_UPDATE
NFNLGRP_CONNTRACK_EXP_DESTROY,
#define NFNLGRP_CONNTRACK_EXP_DESTROY NFNLGRP_CONNTRACK_EXP_DESTROY
+ NFNLGRP_CONNTRACK_QUOTA,
+#define NFNLGRP_CONNTRACK_QUOTA NFNLGRP_CONNTRACK_QUOTA
__NFNLGRP_MAX,
};
#define NFNLGRP_MAX (__NFNLGRP_MAX - 1)
@@ -56,5 +59,6 @@ struct nfgenmsg {
#define NFNL_SUBSYS_QUEUE 3
#define NFNL_SUBSYS_ULOG 4
#define NFNL_SUBSYS_COUNT 5
+#define NFNL_SUBSYS_ACCT 7
#endif /* _NFNETLINK_H */
diff --git a/include/linux/netfilter/nfnetlink_acct.h b/include/linux/netfilter/nfnetlink_acct.h
new file mode 100644
index 0000000..4858e5d
--- /dev/null
+++ b/include/linux/netfilter/nfnetlink_acct.h
@@ -0,0 +1,27 @@
+#ifndef _UAPI_NFNL_ACCT_H_
+#define _UAPI_NFNL_ACCT_H_
+
+#ifndef NFACCT_NAME_MAX
+#define NFACCT_NAME_MAX 32
+#endif
+
+enum nfnl_acct_msg_types {
+ NFNL_MSG_ACCT_NEW,
+ NFNL_MSG_ACCT_GET,
+ NFNL_MSG_ACCT_GET_CTRZERO,
+ NFNL_MSG_ACCT_DEL,
+ NFNL_MSG_ACCT_MAX
+};
+
+enum nfnl_acct_type {
+ NFACCT_UNSPEC,
+ NFACCT_NAME,
+ NFACCT_PKTS,
+ NFACCT_BYTES,
+ NFACCT_USE,
+ NFACCT_QUOTA,
+ __NFACCT_MAX
+};
+#define NFACCT_MAX (__NFACCT_MAX - 1)
+
+#endif /* _UAPI_NFNL_ACCT_H_ */