summaryrefslogtreecommitdiffstats
path: root/src/conntrack/callback.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/conntrack/callback.c')
-rw-r--r--src/conntrack/callback.c55
1 files changed, 0 insertions, 55 deletions
diff --git a/src/conntrack/callback.c b/src/conntrack/callback.c
deleted file mode 100644
index c83a564..0000000
--- a/src/conntrack/callback.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * (C) 2006 by Pablo Neira Ayuso <pablo@netfilter.org>
- *
- * This software may be used and distributed according to the terms
- * of the GNU General Public License, incorporated herein by reference.
- */
-
-#include "internal/internal.h"
-
-int __callback(struct nlmsghdr *nlh, struct nfattr *nfa[], void *data)
-{
- int ret = NFNL_CB_STOP;
- unsigned int type;
- struct nf_conntrack *ct;
- int len = nlh->nlmsg_len;
- struct __data_container *container = data;
-
- len -= NLMSG_LENGTH(sizeof(struct nfgenmsg));
- if (len < 0)
- return NFNL_CB_CONTINUE;
-
- type = __parse_message_type(nlh);
- if (!(type & container->type))
- return NFNL_CB_CONTINUE;
-
- ct = nfct_new();
- if (!ct)
- return NFNL_CB_CONTINUE;
-
- __parse_conntrack(nlh, nfa, ct);
-
- if (container->h->cb)
- ret = container->h->cb(type, ct, container->data);
- else if (container->h->cb2)
- ret = container->h->cb2(nlh, type, ct, container->data);
-
- switch(ret) {
- case NFCT_CB_FAILURE:
- free(ct);
- ret = NFNL_CB_FAILURE;
- break;
- case NFCT_CB_STOP:
- free(ct);
- ret = NFNL_CB_STOP;
- break;
- case NFCT_CB_CONTINUE:
- free(ct);
- ret = NFNL_CB_CONTINUE;
- break;
- case NFCT_CB_STOLEN:
- ret = NFNL_CB_CONTINUE;
- break;
- }
- return ret;
-}