From ef56ba7fa2103984eefce9eb01227feab6fa2898 Mon Sep 17 00:00:00 2001 From: "/C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org" Date: Sat, 9 Feb 2008 20:28:50 +0000 Subject: add missing bits for NAT sequence adjusment support --- src/build.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/build.c') diff --git a/src/build.c b/src/build.c index d6c8837..6363458 100644 --- a/src/build.c +++ b/src/build.c @@ -146,6 +146,20 @@ void build_netpld(struct nf_conntrack *ct, struct netpld *pld, int query) __nat_build_u16(data, pld, ATTR_DNAT_PORT); } + /* NAT sequence adjustment */ + if (nfct_attr_is_set(ct, ATTR_ORIG_NAT_SEQ_CORRECTION_POS)) + __build_u32(ct, pld, ATTR_ORIG_NAT_SEQ_CORRECTION_POS); + if (nfct_attr_is_set(ct, ATTR_ORIG_NAT_SEQ_OFFSET_BEFORE)) + __build_u32(ct, pld, ATTR_ORIG_NAT_SEQ_OFFSET_BEFORE); + if (nfct_attr_is_set(ct, ATTR_ORIG_NAT_SEQ_OFFSET_AFTER)) + __build_u32(ct, pld, ATTR_ORIG_NAT_SEQ_OFFSET_AFTER); + if (nfct_attr_is_set(ct, ATTR_REPL_NAT_SEQ_CORRECTION_POS)) + __build_u32(ct, pld, ATTR_REPL_NAT_SEQ_CORRECTION_POS); + if (nfct_attr_is_set(ct, ATTR_REPL_NAT_SEQ_OFFSET_BEFORE)) + __build_u32(ct, pld, ATTR_REPL_NAT_SEQ_OFFSET_BEFORE); + if (nfct_attr_is_set(ct, ATTR_REPL_NAT_SEQ_OFFSET_AFTER)) + __build_u32(ct, pld, ATTR_REPL_NAT_SEQ_OFFSET_AFTER); + pld->query = query; PLD_HOST2NETWORK(pld); -- cgit v1.2.3