diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2012-05-15 01:51:29 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2012-05-28 12:34:59 +0200 |
commit | e96bfcd1b9f79cb3642b365a584359b1672f2ac0 (patch) | |
tree | 48b625978164f802fd1a99bdf49a2e7140f6dc5d /include/stack.h | |
parent | e47233151ca5098b268281329b119a398918d75f (diff) | |
download | conntrack-tools-e96bfcd1b9f79cb3642b365a584359b1672f2ac0.tar.gz conntrack-tools-e96bfcd1b9f79cb3642b365a584359b1672f2ac0.zip |
conntrackd: add cthelper infrastructure (+ example FTP helper)
This patch adds the user-space helper infrastructure. It also
contains the implementation of the FTP helper in user-space.
There's one example file that you can use to configure conntrackd
as user-space connection tracking helper under:
doc/helper/conntrackd.conf
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/stack.h')
-rw-r--r-- | include/stack.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/include/stack.h b/include/stack.h new file mode 100644 index 0000000..512a30f --- /dev/null +++ b/include/stack.h @@ -0,0 +1,28 @@ +#ifndef _STACK_H_ +#define _STACK_H_ + +#include "linux_list.h" + +struct stack { + struct list_head list; + int items; +}; + +static inline void stack_init(struct stack *s) +{ + INIT_LIST_HEAD(&s->list); +} + +struct stack_item { + struct list_head head; + int type; + int data_len; + char data[0]; +}; + +struct stack_item *stack_item_alloc(int type, size_t data_len); +void stack_item_free(struct stack_item *e); +void stack_item_push(struct stack *s, struct stack_item *e); +struct stack_item *stack_item_pop(struct stack *s, int type); + +#endif |