summaryrefslogtreecommitdiffstats
path: root/src/expect.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-10-02 19:21:01 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-10-03 10:51:03 +0200
commitea753a152cbf3a2658b5ec5bacfb738c13a4c476 (patch)
tree2d488dc6b7d937cd84a1734b309b7afc2a643c1b /src/expect.c
parent9b99aa2980574f4d3bf26145a1bf8bd69d34e764 (diff)
conntrackd: cthelper: add TFTP helper
This patch adds an userspace port of the TFTP helper that is currently implemented in the kernel. This includes NAT support. It requires a Linux kernel 3.12. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/expect.c')
-rw-r--r--src/expect.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/expect.c b/src/expect.c
index 470b9ae..bba0ed7 100644
--- a/src/expect.c
+++ b/src/expect.c
@@ -212,3 +212,27 @@ cthelper_get_addr_dst(struct nf_conntrack *ct, int dir,
break;
}
}
+
+void cthelper_get_port_src(struct nf_conntrack *ct, int dir, uint16_t *port)
+{
+ switch (dir) {
+ case MYCT_DIR_ORIG:
+ *port = nfct_get_attr_u16(ct, ATTR_PORT_SRC);
+ break;
+ case MYCT_DIR_REPL:
+ *port = nfct_get_attr_u16(ct, ATTR_REPL_PORT_SRC);
+ break;
+ }
+}
+
+void cthelper_get_port_dst(struct nf_conntrack *ct, int dir, uint16_t *port)
+{
+ switch (dir) {
+ case MYCT_DIR_ORIG:
+ *port = nfct_get_attr_u16(ct, ATTR_PORT_DST);
+ break;
+ case MYCT_DIR_REPL:
+ *port = nfct_get_attr_u16(ct, ATTR_REPL_PORT_DST);
+ break;
+ }
+}