summaryrefslogtreecommitdiffstats
path: root/expect.c
diff options
context:
space:
mode:
Diffstat (limited to 'expect.c')
-rw-r--r--expect.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/expect.c b/expect.c
index 072e913..3d59f9e 100644
--- a/expect.c
+++ b/expect.c
@@ -241,6 +241,30 @@ int cthelper_cmp_addr_dst(struct nf_conntrack *ct, int dir,
return memcmp(addr, &tmp, sizeof(union nfct_attr_grp_addr)) == 0;
}
+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;
+ }
+}
+
int cthelper_cmp_exp_addr_dst(struct nf_expect *exp,
union nfct_attr_grp_addr *addr)
{