diff options
author | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2014-02-26 11:57:07 +0100 |
---|---|---|
committer | Patrik Flykt <patrik.flykt@linux.intel.com> | 2014-02-27 15:34:57 +0200 |
commit | ddf176a0ce21be709c40024baa6ff0a212a72993 (patch) | |
tree | 57cbefb7a149147e46c850c944d62267e17e7a5f /tools | |
parent | fa4176bed394ebbe3423910fbbe27f598003f5cf (diff) | |
download | connman-ddf176a0ce21be709c40024baa6ff0a212a72993.tar.gz |
nfacct: Remove support for NFACCT
There is no user for the NFACCT infrastructre, so let's get rid it.
Diffstat (limited to 'tools')
-rw-r--r-- | tools/netlink-test.c | 240 |
1 files changed, 0 insertions, 240 deletions
diff --git a/tools/netlink-test.c b/tools/netlink-test.c index 4765367c..c07806a3 100644 --- a/tools/netlink-test.c +++ b/tools/netlink-test.c @@ -38,8 +38,6 @@ #include <glib.h> #include "../src/shared/netlink.h" -#include "../src/shared/nfacct.h" -#include "../src/shared/nfnetlink_acct_copy.h" #define NFGEN_DATA(nlh) ((void *)((char *)(nlh) + \ NLMSG_ALIGN(sizeof(struct nfgenmsg)))) @@ -115,249 +113,11 @@ static void test_case_1(void) netlink_destroy(netlink); } -static void test_nfacct_dump_callback(unsigned int error, uint16_t type, - const void *data, uint32_t len, void *user_data) -{ - const struct nfgenmsg *msg = data; - const struct nlattr *attr; - uint64_t packets = 0 , bytes = 0; - char *name = NULL; - int attrlen; - - if (error == EINVAL) - printf("nfnetlink_acct not loaded\n"); - - g_assert_cmpuint(error, ==, 0); - - attrlen = len - NLMSG_ALIGN(sizeof(struct nfgenmsg)); - - for (attr = NFGEN_DATA(msg); NLA_OK(attr, attrlen); - attr = NLA_NEXT(attr, attrlen)) { - switch (attr->nla_type) { - case NFACCT_NAME: - name = NLA_DATA(attr); - break; - case NFACCT_PKTS: - packets = be64toh(*(uint64_t *) NLA_DATA(attr)); - break; - case NFACCT_BYTES: - bytes = be64toh(*(uint64_t *) NLA_DATA(attr)); - break; - case NFACCT_USE: - break; - } - } - - printf("%s packets %" PRIu64 " bytes %" PRIu64 "\n", - name, packets, bytes); - - g_main_loop_quit(mainloop); -} - -static void test_nfacct_callback(unsigned int error, uint16_t type, - const void *data, uint32_t len, void *user_data) -{ - if (error == EINVAL) - printf("nfnetlink_acct not loaded\n"); - - g_assert_cmpuint(error, ==, 0); -} - -static void append_attr_str(struct nlattr *attr, - uint16_t type, size_t size, const char *str) -{ - char *dst; - - attr->nla_len = NLA_HDRLEN + size; - attr->nla_type = NFACCT_NAME; - - dst = (char *)NLA_DATA(attr); - strncpy(dst, str, size); - dst[size - 1] = '\0'; -} - -static void test_nfacct_new(struct netlink_info *netlink, const char *name) -{ - struct nfgenmsg *hdr; - size_t len, name_len; - - name_len = strlen(name) + 1; - len = NLMSG_ALIGN(sizeof(struct nfgenmsg)) + - NLA_ALIGN(sizeof(struct nlattr)) + - name_len; - - hdr = g_malloc0(len); - - hdr->nfgen_family = AF_UNSPEC; - hdr->version = NFNETLINK_V0; - hdr->res_id = 0; - - append_attr_str(NLA_DATA(hdr), NFACCT_NAME, name_len, name); - - netlink_send(netlink, - NFNL_SUBSYS_ACCT << 8 | NFNL_MSG_ACCT_NEW, - NLM_F_CREATE | NLM_F_ACK, hdr, len, - test_nfacct_callback, NULL, NULL); - - g_free(hdr); -} - -static void test_nfacct_del(struct netlink_info *netlink, const char *name) -{ - struct nfgenmsg *hdr; - size_t len, name_len; - - name_len = strlen(name) + 1; - len = NLMSG_ALIGN(sizeof(struct nfgenmsg)) + - NLA_ALIGN(sizeof(struct nlattr)) + - name_len; - - hdr = g_malloc0(len); - - hdr->nfgen_family = AF_UNSPEC; - hdr->version = NFNETLINK_V0; - hdr->res_id = 0; - - append_attr_str(NLA_DATA(hdr), NFACCT_NAME, name_len, name); - - netlink_send(netlink, - NFNL_SUBSYS_ACCT << 8 | NFNL_MSG_ACCT_DEL, - NLM_F_ACK, hdr, len, - test_nfacct_callback, NULL, NULL); - - g_free(hdr); -} - -static void test_nfacct_dump(struct netlink_info *netlink) -{ - struct nfgenmsg hdr; - - memset(&hdr, 0, sizeof(hdr)); - hdr.nfgen_family = AF_UNSPEC; - hdr.version = NFNETLINK_V0; - hdr.res_id = 0; - - netlink_send(netlink, - NFNL_SUBSYS_ACCT << 8 | NFNL_MSG_ACCT_GET, - NLM_F_DUMP , &hdr, sizeof(hdr), - test_nfacct_dump_callback, NULL, NULL); -} - -static void test_case_2(void) -{ - struct netlink_info *netlink; - - netlink = netlink_new(NETLINK_NETFILTER); - - printf("\n"); - netlink_set_debug(netlink, do_debug, "[NETLINK] ", NULL); - - test_nfacct_new(netlink, "session-foo"); - test_nfacct_dump(netlink); - test_nfacct_del(netlink, "session-foo"); - - mainloop = g_main_loop_new(NULL, FALSE); - g_main_loop_run(mainloop); - g_main_loop_unref(mainloop); - - netlink_destroy(netlink); -} - - -static void nfacct_add_callback(unsigned int error, void *user_data) -{ - const char *name = user_data; - - if (error == EINVAL) - printf("nfnetlink_acct not loaded\n"); - - g_assert_cmpuint(error, ==, 0); - - printf("nfacct_add: error %d name %s\n", error, name); -} - -static void nfacct_get_callback(unsigned int error, const char *name, - uint64_t packets, uint64_t bytes, - void *user_data) -{ - const char *expected_name = user_data; - - if (error == EINVAL) - printf("nfnetlink_acct not loaded\n"); - - g_assert_cmpuint(error, ==, 0); - - if (!name) { - /* end of dump */ - return; - } - - printf("nfacct_get: error %d name %s packets %" PRIu64 - " bytes %" PRIu64 "\n", error, name, packets, bytes); - - g_assert_cmpstr(expected_name, ==, name); - g_assert_cmpuint(packets, ==, 0); - g_assert_cmpuint(bytes, ==, 0); -} - -static void nfacct_dump_callback(unsigned int error, const char *name, - uint64_t packets, uint64_t bytes, - void *user_data) -{ - const char *expected_name = user_data; - - if (error == EINVAL) - printf("nfnetlink_acct not loaded\n"); - - g_assert_cmpuint(error, ==, 0); - - if (!name) { - /* end of dump */ - return; - } - - printf("nfacct_dump: error %d name %s packets %" PRIu64 - " bytes %" PRIu64 "\n", error, name, packets, bytes); - - g_assert_cmpstr(expected_name, ==, name); - g_assert_cmpuint(packets, ==, 0); - g_assert_cmpuint(bytes, ==, 0); -} - -static void nfacct_del_callback(unsigned int error, void *user_data) -{ - g_assert_cmpuint(error, ==, 0); - - g_main_loop_quit(mainloop); -} - -static void nfacct_case_1(void) -{ - struct nfacct_info *nfacct; - char *name = "session-bar"; - - printf("\n"); - nfacct = nfacct_new(); - - nfacct_add(nfacct, name, nfacct_add_callback, name); - nfacct_get(nfacct, name, false, nfacct_get_callback, name); - nfacct_dump(nfacct, false, nfacct_dump_callback, name); - nfacct_del(nfacct, name, nfacct_del_callback, name); - - mainloop = g_main_loop_new(NULL, FALSE); - g_main_loop_run(mainloop); - g_main_loop_unref(mainloop); - - nfacct_destroy(nfacct); -} - int main(int argc, char *argv[]) { g_test_init(&argc, &argv, NULL); g_test_add_func("/netlink/Test case 1", test_case_1); - g_test_add_func("/netlink/Test case 2", test_case_2); - g_test_add_func("/nfacct/Test case 1", nfacct_case_1); return g_test_run(); } |