summaryrefslogtreecommitdiffstats
path: root/include/helper.h
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-06-07 19:53:46 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-06-07 19:53:46 +0200
commit04cbb9c53929173ff0ae261c0bb22b5928ffc23b (patch)
tree97e54ffcc58d376dbe559082e57633983658b6cd /include/helper.h
parentc9b5bc2b976abeaa13a1c1fc46dd5491feb5b9e7 (diff)
expect: add new cthelper_* functions for SIP helper
This patch adds new functions to support the SIP helper in user-space. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'include/helper.h')
-rw-r--r--include/helper.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/helper.h b/include/helper.h
index e208cf3..ba3f773 100644
--- a/include/helper.h
+++ b/include/helper.h
@@ -45,10 +45,22 @@ struct ctd_helper_instance {
extern int cthelper_expect_init(struct nf_expect *exp, struct nf_conntrack *master, uint32_t class, union nfct_attr_grp_addr *saddr, union nfct_attr_grp_addr *daddr, uint8_t l4proto, uint16_t *sport, uint16_t *dport, uint32_t flags);
extern int cthelper_add_expect(struct nf_expect *exp);
extern int cthelper_del_expect(struct nf_expect *exp);
+int cthelper_upd_expect(struct nf_expect *ct);
+
+struct nf_expect *cthelper_find_expect(union nfct_attr_grp_addr *saddr,
+ union nfct_attr_grp_addr *daddr,
+ uint16_t sport, uint16_t dport,
+ uint8_t l3num, uint8_t l4num,
+ uint16_t zone);
+
extern int cthelper_upd_ct(struct nf_conntrack *ct);
+int cthelper_iterate_exp(struct nf_conntrack *ct, int (*cb)(struct nf_expect *exp, void *data), void *data);
extern void cthelper_get_addr_src(struct nf_conntrack *ct, int dir, union nfct_attr_grp_addr *addr);
extern void cthelper_get_addr_dst(struct nf_conntrack *ct, int dir, union nfct_attr_grp_addr *addr);
+int cthelper_cmp_addr_src(struct nf_conntrack *ct, int dir, union nfct_attr_grp_addr *addr);
+int cthelper_cmp_addr_dst(struct nf_conntrack *ct, int dir, union nfct_attr_grp_addr *addr);
+int cthelper_cmp_exp_addr_dst(struct nf_expect *exp, union nfct_attr_grp_addr *addr);
extern int in4_pton(const char *src, int srclen, uint8_t *dst, int delim, const char **end);
extern int in6_pton(const char *src, int srclen, uint8_t *dst, int delim, const char **end);