diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2011-06-21 17:00:45 +0200 |
---|---|---|
committer | Jan Engelhardt <jengelh@medozas.de> | 2011-06-21 17:05:10 +0200 |
commit | 4e98e81ecdcc321d232edc42fac168d257e712ff (patch) | |
tree | f058ef5447610fa556d1412e0af63536dce70786 | |
parent | 931d388ff33dee589bc00e4f9033be5ca7c43786 (diff) |
libipt_LOG: fix ignoring all but last flags
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
-rw-r--r-- | extensions/libip6t_LOG.c | 10 | ||||
-rw-r--r-- | extensions/libipt_LOG.c | 10 | ||||
-rw-r--r-- | tests/options-most.rules | 2 |
3 files changed, 12 insertions, 10 deletions
diff --git a/extensions/libip6t_LOG.c b/extensions/libip6t_LOG.c index a419ec91..2b1ae289 100644 --- a/extensions/libip6t_LOG.c +++ b/extensions/libip6t_LOG.c @@ -87,19 +87,19 @@ static void LOG_parse(struct xt_option_call *cb) "Newlines not allowed in --log-prefix"); break; case O_LOG_TCPSEQ: - info->logflags = IP6T_LOG_TCPSEQ; + info->logflags |= IP6T_LOG_TCPSEQ; break; case O_LOG_TCPOPTS: - info->logflags = IP6T_LOG_TCPOPT; + info->logflags |= IP6T_LOG_TCPOPT; break; case O_LOG_IPOPTS: - info->logflags = IP6T_LOG_IPOPT; + info->logflags |= IP6T_LOG_IPOPT; break; case O_LOG_UID: - info->logflags = IP6T_LOG_UID; + info->logflags |= IP6T_LOG_UID; break; case O_LOG_MAC: - info->logflags = IP6T_LOG_MACDECODE; + info->logflags |= IP6T_LOG_MACDECODE; break; } } diff --git a/extensions/libipt_LOG.c b/extensions/libipt_LOG.c index b270bcf6..77f16d19 100644 --- a/extensions/libipt_LOG.c +++ b/extensions/libipt_LOG.c @@ -87,19 +87,19 @@ static void LOG_parse(struct xt_option_call *cb) "Newlines not allowed in --log-prefix"); break; case O_LOG_TCPSEQ: - info->logflags = IPT_LOG_TCPSEQ; + info->logflags |= IPT_LOG_TCPSEQ; break; case O_LOG_TCPOPTS: - info->logflags = IPT_LOG_TCPOPT; + info->logflags |= IPT_LOG_TCPOPT; break; case O_LOG_IPOPTS: - info->logflags = IPT_LOG_IPOPT; + info->logflags |= IPT_LOG_IPOPT; break; case O_LOG_UID: - info->logflags = IPT_LOG_UID; + info->logflags |= IPT_LOG_UID; break; case O_LOG_MAC: - info->logflags = IPT_LOG_MACDECODE; + info->logflags |= IPT_LOG_MACDECODE; break; } } diff --git a/tests/options-most.rules b/tests/options-most.rules index 6c4a8313..13ee9873 100644 --- a/tests/options-most.rules +++ b/tests/options-most.rules @@ -146,6 +146,8 @@ -A matches -A matches -m rt --rt-segsleft 5:4294967295 -A matches +-A ntarg -j LOG --log-tcp-sequence --log-tcp-options --log-ip-options +-A ntarg -A ntarg -j NFQUEUE --queue-num 1 -A ntarg -A ntarg -j NFQUEUE --queue-balance 8:99 |