summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Poirier <mathieu.poirier@linaro.org>2013-12-20 12:18:31 -0700
committerMathieu Poirier <mathieu.poirier@linaro.org>2014-01-28 08:18:10 -0700
commit6f7aae0264821b44e9fe80fb5596c525d3e2f475 (patch)
tree7b348994cf926dd6fda1b4b13f497ce9f4d675a0
parent86ee2bd0069b0edd9a1230574595820bb12f96a1 (diff)
downloadnfacct-6f7aae0264821b44e9fe80fb5596c525d3e2f475.tar.gz
nfacct: Enabling compatibility with libnl2.0android-wear-5.1.1_r1android-wear-5.1.0_r1android-wear-5.0.0_r1android-m-preview-2android-m-preview-1android-m-previewandroid-lego-6.0.1_r2android-lego-6.0.1_r1android-l-preview_r2android-cts-6.0_r9android-cts-6.0_r8android-cts-6.0_r7android-cts-6.0_r6android-cts-6.0_r5android-cts-6.0_r4android-cts-6.0_r32android-cts-6.0_r31android-cts-6.0_r30android-cts-6.0_r3android-cts-6.0_r29android-cts-6.0_r28android-cts-6.0_r27android-cts-6.0_r26android-cts-6.0_r25android-cts-6.0_r24android-cts-6.0_r23android-cts-6.0_r22android-cts-6.0_r21android-cts-6.0_r20android-cts-6.0_r2android-cts-6.0_r19android-cts-6.0_r18android-cts-6.0_r17android-cts-6.0_r16android-cts-6.0_r15android-cts-6.0_r14android-cts-6.0_r13android-cts-6.0_r12android-cts-6.0_r1android-cts-5.1_r9android-cts-5.1_r8android-cts-5.1_r7android-cts-5.1_r6android-cts-5.1_r5android-cts-5.1_r4android-cts-5.1_r3android-cts-5.1_r28android-cts-5.1_r27android-cts-5.1_r26android-cts-5.1_r25android-cts-5.1_r24android-cts-5.1_r23android-cts-5.1_r22android-cts-5.1_r21android-cts-5.1_r20android-cts-5.1_r2android-cts-5.1_r19android-cts-5.1_r18android-cts-5.1_r17android-cts-5.1_r16android-cts-5.1_r15android-cts-5.1_r14android-cts-5.1_r13android-cts-5.1_r10android-cts-5.1_r1android-cts-5.0_r9android-cts-5.0_r8android-cts-5.0_r7android-cts-5.0_r6android-cts-5.0_r5android-cts-5.0_r4android-cts-5.0_r3android-6.0.1_r9android-6.0.1_r81android-6.0.1_r80android-6.0.1_r8android-6.0.1_r79android-6.0.1_r78android-6.0.1_r77android-6.0.1_r74android-6.0.1_r73android-6.0.1_r72android-6.0.1_r70android-6.0.1_r7android-6.0.1_r69android-6.0.1_r68android-6.0.1_r67android-6.0.1_r66android-6.0.1_r65android-6.0.1_r63android-6.0.1_r62android-6.0.1_r61android-6.0.1_r60android-6.0.1_r59android-6.0.1_r58android-6.0.1_r57android-6.0.1_r56android-6.0.1_r55android-6.0.1_r54android-6.0.1_r53android-6.0.1_r52android-6.0.1_r51android-6.0.1_r50android-6.0.1_r5android-6.0.1_r49android-6.0.1_r48android-6.0.1_r47android-6.0.1_r46android-6.0.1_r45android-6.0.1_r43android-6.0.1_r42android-6.0.1_r41android-6.0.1_r40android-6.0.1_r4android-6.0.1_r33android-6.0.1_r32android-6.0.1_r31android-6.0.1_r30android-6.0.1_r3android-6.0.1_r28android-6.0.1_r27android-6.0.1_r26android-6.0.1_r25android-6.0.1_r24android-6.0.1_r22android-6.0.1_r21android-6.0.1_r20android-6.0.1_r18android-6.0.1_r17android-6.0.1_r16android-6.0.1_r13android-6.0.1_r12android-6.0.1_r11android-6.0.1_r10android-6.0.1_r1android-6.0.0_r7android-6.0.0_r6android-6.0.0_r5android-6.0.0_r41android-6.0.0_r4android-6.0.0_r3android-6.0.0_r26android-6.0.0_r25android-6.0.0_r24android-6.0.0_r23android-6.0.0_r2android-6.0.0_r13android-6.0.0_r12android-6.0.0_r11android-6.0.0_r1android-5.1.1_r9android-5.1.1_r8android-5.1.1_r7android-5.1.1_r6android-5.1.1_r5android-5.1.1_r4android-5.1.1_r38android-5.1.1_r37android-5.1.1_r36android-5.1.1_r35android-5.1.1_r34android-5.1.1_r33android-5.1.1_r30android-5.1.1_r3android-5.1.1_r29android-5.1.1_r28android-5.1.1_r26android-5.1.1_r25android-5.1.1_r24android-5.1.1_r23android-5.1.1_r22android-5.1.1_r20android-5.1.1_r2android-5.1.1_r19android-5.1.1_r18android-5.1.1_r17android-5.1.1_r16android-5.1.1_r15android-5.1.1_r14android-5.1.1_r13android-5.1.1_r12android-5.1.1_r10android-5.1.1_r1android-5.1.0_r5android-5.1.0_r4android-5.1.0_r3android-5.1.0_r1android-5.0.2_r3android-5.0.2_r1android-5.0.1_r1android-5.0.0_r7android-5.0.0_r6android-5.0.0_r5.1android-5.0.0_r5android-5.0.0_r4android-5.0.0_r3android-5.0.0_r2android-5.0.0_r1master-soongmarshmallow-releasemarshmallow-mr3-releasemarshmallow-mr2-releasemarshmallow-mr1-releasemarshmallow-mr1-devmarshmallow-dr1.6-releasemarshmallow-dr1.5-releasemarshmallow-dr1.5-devmarshmallow-dr-releasemarshmallow-dr-lego-releasemarshmallow-dr-dragon-releasemarshmallow-dr-devmarshmallow-dr-arc-m54marshmallow-dr-arc-m53marshmallow-dr-arc-devmarshmallow-devmarshmallow-cts-releaselollipop-wear-releaselollipop-releaselollipop-mr1-wfc-releaselollipop-mr1-releaselollipop-mr1-fi-releaselollipop-mr1-devlollipop-mr1-cts-releaselollipop-devlollipop-cts-releasel-preview
Change-Id: I4dda14f93e12181153832ed76e019194232712d3 Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
-rw-r--r--Android.mk9
-rw-r--r--android.config1
-rw-r--r--nfacct.c36
3 files changed, 29 insertions, 17 deletions
diff --git a/Android.mk b/Android.mk
index a72a64c..d4664d4 100644
--- a/Android.mk
+++ b/Android.mk
@@ -1,11 +1,16 @@
LOCAL_PATH:= $(call my-dir)
+include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android.config
INCLUDES = $(LOCAL_PATH)
INCLUDES += external/libnl/include
-LIBS += -lnl-3
+
+ifdef HAVE_LIBNL20
+LOCAL_CFLAGS += -DHAVE_LIBNL20
+endif
########################
-include $(CLEAR_VARS)
+
LOCAL_SRC_FILES:= nfacct.c
LOCAL_MODULE := nfacct
diff --git a/android.config b/android.config
new file mode 100644
index 0000000..9b834b5
--- /dev/null
+++ b/android.config
@@ -0,0 +1 @@
+HAVE_LIBNL20=y
diff --git a/nfacct.c b/nfacct.c
index 4ea3a9d..7f520ac 100644
--- a/nfacct.c
+++ b/nfacct.c
@@ -56,6 +56,12 @@ static int nfacct_cmd_version(int argc, char *argv[]);
static int nfacct_cmd_help(int argc, char *argv[]);
static int nfacct_cmd_restore(int argc, char *argv[]);
+#ifndef HAVE_LIBNL20
+#define nl_sock nl_handle
+#define nl_socket_alloc nl_handle_alloc
+#define nl_socket_free nl_handle_destroy
+#endif
+
static void usage(char *argv[])
{
fprintf(stderr, "Usage: %s command [parameters]...\n", argv[0]);
@@ -177,7 +183,7 @@ static int valid_input(struct nl_msg *msg, void *arg)
static int nfacct_cmd_list(int argc, char *argv[])
{
struct nl_msg *msg;
- struct nl_handle *handle;
+ struct nl_sock *handle;
int zeroctr = 0;
int ret, i;
@@ -213,7 +219,7 @@ static int nfacct_cmd_list(int argc, char *argv[])
goto fail;
}
- handle = nl_handle_alloc();
+ handle = nl_socket_alloc();
if ((ret = nfnl_connect(handle))) {
NL_DBG(2, "Can't connect handle: %s line: %d\n",
__FUNCTION__, __LINE__);
@@ -235,7 +241,7 @@ static int nfacct_cmd_list(int argc, char *argv[])
fail_send:
nl_close(handle);
- nl_handle_destroy(handle);
+ nl_socket_free(handle);
fail:
nlmsg_free(msg);
return ret;
@@ -244,7 +250,7 @@ fail:
static int _nfacct_cmd_add(char *name, int pkts, int bytes)
{
struct nl_msg *msg;
- struct nl_handle *handle;
+ struct nl_sock *handle;
char nfname[NFACCT_NAME_MAX];
int ret;
@@ -274,7 +280,7 @@ static int _nfacct_cmd_add(char *name, int pkts, int bytes)
nla_put_u64(msg, NFACCT_PKTS, htobe64(pkts));
nla_put_u64(msg, NFACCT_BYTES, htobe64(bytes));
- handle = nl_handle_alloc();
+ handle = nl_socket_alloc();
if ((ret = nfnl_connect(handle))) {
NL_DBG(2, "Can't connect handle: %s line: %d\n",
__FUNCTION__, __LINE__);
@@ -295,7 +301,7 @@ static int _nfacct_cmd_add(char *name, int pkts, int bytes)
fail_send:
nl_close(handle);
- nl_handle_destroy(handle);
+ nl_socket_free(handle);
fail:
nlmsg_free(msg);
return ret;
@@ -319,7 +325,7 @@ static int nfacct_cmd_add(int argc, char *argv[])
static int nfacct_cmd_delete(int argc, char *argv[])
{
struct nl_msg *msg;
- struct nl_handle *handle;
+ struct nl_sock *handle;
char nfname[NFACCT_NAME_MAX];
int ret;
@@ -355,7 +361,7 @@ static int nfacct_cmd_delete(int argc, char *argv[])
nla_put_string(msg, NFACCT_NAME, nfname);
- handle = nl_handle_alloc();
+ handle = nl_socket_alloc();
if ((ret = nfnl_connect(handle))) {
NL_DBG(2, "Can't connect handle: %s line: %d\n",
__FUNCTION__, __LINE__);
@@ -376,7 +382,7 @@ static int nfacct_cmd_delete(int argc, char *argv[])
fail_send:
nl_close(handle);
- nl_handle_destroy(handle);
+ nl_socket_free(handle);
fail:
nlmsg_free(msg);
return ret;
@@ -387,7 +393,7 @@ fail:
static int nfacct_cmd_get(int argc, char *argv[])
{
struct nl_msg *msg;
- struct nl_handle *handle;
+ struct nl_sock *handle;
struct nl_cb *cb;
char nfname[NFACCT_NAME_MAX];
int zeroctr = 0;
@@ -435,7 +441,7 @@ static int nfacct_cmd_get(int argc, char *argv[])
nla_put_string(msg, NFACCT_NAME, nfname);
- handle = nl_handle_alloc();
+ handle = nl_socket_alloc();
if (handle) {
cb = nl_cb_alloc(NL_CB_DEFAULT);
@@ -473,7 +479,7 @@ static int nfacct_cmd_get(int argc, char *argv[])
fail_send:
nl_close(handle);
- nl_handle_destroy(handle);
+ nl_socket_free(handle);
fail:
nlmsg_free(msg);
return ret;
@@ -482,7 +488,7 @@ fail:
static int nfacct_cmd_flush(int argc, char *argv[])
{
struct nl_msg *msg;
- struct nl_handle *handle;
+ struct nl_sock *handle;
int ret;
if (argc > 2) {
@@ -509,7 +515,7 @@ static int nfacct_cmd_flush(int argc, char *argv[])
goto fail;
}
- handle = nl_handle_alloc();
+ handle = nl_socket_alloc();
if ((ret = nfnl_connect(handle))) {
NL_DBG(2, "Can't connect handle: %s line: %d\n",
__FUNCTION__, __LINE__);
@@ -530,7 +536,7 @@ static int nfacct_cmd_flush(int argc, char *argv[])
fail_send:
nl_close(handle);
- nl_handle_destroy(handle);
+ nl_socket_free(handle);
fail:
nlmsg_free(msg);
return ret;