diff options
author | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2007-12-17 00:55:40 +0000 |
---|---|---|
committer | /C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org </C=EU/ST=EU/CN=Pablo Neira Ayuso/emailAddress=pablo@netfilter.org> | 2007-12-17 00:55:40 +0000 |
commit | 8b14339d6d26c5ff0ab176edba9bcfb0fa7526e1 (patch) | |
tree | 37e4420a8f1c5c0d4240cc97a6286839228f341b /src/conntrack/build.c | |
parent | 10d50dac91b61247f9cdfe687191e1bc959e2d5f (diff) |
- add support for secmark
- fix typo s/test_but/test_bit/
Diffstat (limited to 'src/conntrack/build.c')
-rw-r--r-- | src/conntrack/build.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/conntrack/build.c b/src/conntrack/build.c index 169f289..f5e7353 100644 --- a/src/conntrack/build.c +++ b/src/conntrack/build.c @@ -236,6 +236,13 @@ void __build_mark(struct nfnlhdr *req, nfnl_addattr32(&req->nlh, size, CTA_MARK, htonl(ct->mark)); } +void __build_secmark(struct nfnlhdr *req, + size_t size, + const struct nf_conntrack *ct) +{ + nfnl_addattr32(&req->nlh, size, CTA_SECMARK, htonl(ct->secmark)); +} + int __build_conntrack(struct nfnl_subsys_handle *ssh, struct nfnlhdr *req, size_t size, @@ -282,11 +289,14 @@ int __build_conntrack(struct nfnl_subsys_handle *ssh, if (test_bit(ATTR_MARK, ct->set)) __build_mark(req, size, ct); + if (test_bit(ATTR_SECMARK, ct->set)) + __build_secmark(req, size, ct); + if (test_bit(ATTR_TCP_STATE, ct->set) || (test_bit(ATTR_TCP_FLAGS_ORIG, ct->set) && test_bit(ATTR_TCP_MASK_ORIG, ct->set)) || (test_bit(ATTR_TCP_FLAGS_REPL, ct->set) && - test_but(ATTR_TCP_MASK_REPL, ct->set))) + test_bit(ATTR_TCP_MASK_REPL, ct->set))) __build_protoinfo(req, size, ct); if (test_bit(ATTR_SNAT_IPV4, ct->set) && |