diff options
author | Harald Welte <laforge@netfilter.org> | 2005-09-24 19:56:08 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-09-24 19:56:08 -0400 |
commit | 8ddec7460d2f5db3ac35812c03676b1473d1d668 (patch) | |
tree | 58621a95af9bfcea83a20382659ef088d9921511 | |
parent | 8689c07e47e928f8e329f667df8cf697a37425dd (diff) |
[NETFILTER] ip_conntrack: Update event cache when status changes
The GRE, SCTP and TCP protocol helpers did not call
ip_conntrack_event_cache() when updating ct->status. This patch adds
the respective calls.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/ipv4/netfilter/ip_conntrack_proto_gre.c | 1 | ||||
-rw-r--r-- | net/ipv4/netfilter/ip_conntrack_proto_sctp.c | 1 | ||||
-rw-r--r-- | net/ipv4/netfilter/ip_conntrack_proto_tcp.c | 3 |
3 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv4/netfilter/ip_conntrack_proto_gre.c b/net/ipv4/netfilter/ip_conntrack_proto_gre.c index de3cb9db6f85..744abb9d377a 100644 --- a/net/ipv4/netfilter/ip_conntrack_proto_gre.c +++ b/net/ipv4/netfilter/ip_conntrack_proto_gre.c | |||
@@ -247,6 +247,7 @@ static int gre_packet(struct ip_conntrack *ct, | |||
247 | ct->proto.gre.stream_timeout); | 247 | ct->proto.gre.stream_timeout); |
248 | /* Also, more likely to be important, and not a probe. */ | 248 | /* Also, more likely to be important, and not a probe. */ |
249 | set_bit(IPS_ASSURED_BIT, &ct->status); | 249 | set_bit(IPS_ASSURED_BIT, &ct->status); |
250 | ip_conntrack_event_cache(IPCT_STATUS, skb); | ||
250 | } else | 251 | } else |
251 | ip_ct_refresh_acct(ct, conntrackinfo, skb, | 252 | ip_ct_refresh_acct(ct, conntrackinfo, skb, |
252 | ct->proto.gre.timeout); | 253 | ct->proto.gre.timeout); |
diff --git a/net/ipv4/netfilter/ip_conntrack_proto_sctp.c b/net/ipv4/netfilter/ip_conntrack_proto_sctp.c index a875f35e576d..59a4a0111dd3 100644 --- a/net/ipv4/netfilter/ip_conntrack_proto_sctp.c +++ b/net/ipv4/netfilter/ip_conntrack_proto_sctp.c | |||
@@ -416,6 +416,7 @@ static int sctp_packet(struct ip_conntrack *conntrack, | |||
416 | && newconntrack == SCTP_CONNTRACK_ESTABLISHED) { | 416 | && newconntrack == SCTP_CONNTRACK_ESTABLISHED) { |
417 | DEBUGP("Setting assured bit\n"); | 417 | DEBUGP("Setting assured bit\n"); |
418 | set_bit(IPS_ASSURED_BIT, &conntrack->status); | 418 | set_bit(IPS_ASSURED_BIT, &conntrack->status); |
419 | ip_conntrack_event_cache(IPCT_STATUS, skb); | ||
419 | } | 420 | } |
420 | 421 | ||
421 | return NF_ACCEPT; | 422 | return NF_ACCEPT; |
diff --git a/net/ipv4/netfilter/ip_conntrack_proto_tcp.c b/net/ipv4/netfilter/ip_conntrack_proto_tcp.c index 1985abc59d24..121760d6cc50 100644 --- a/net/ipv4/netfilter/ip_conntrack_proto_tcp.c +++ b/net/ipv4/netfilter/ip_conntrack_proto_tcp.c | |||
@@ -1014,7 +1014,8 @@ static int tcp_packet(struct ip_conntrack *conntrack, | |||
1014 | /* Set ASSURED if we see see valid ack in ESTABLISHED | 1014 | /* Set ASSURED if we see see valid ack in ESTABLISHED |
1015 | after SYN_RECV or a valid answer for a picked up | 1015 | after SYN_RECV or a valid answer for a picked up |
1016 | connection. */ | 1016 | connection. */ |
1017 | set_bit(IPS_ASSURED_BIT, &conntrack->status); | 1017 | set_bit(IPS_ASSURED_BIT, &conntrack->status); |
1018 | ip_conntrack_event_cache(IPCT_STATUS, skb); | ||
1018 | } | 1019 | } |
1019 | ip_ct_refresh_acct(conntrack, ctinfo, skb, timeout); | 1020 | ip_ct_refresh_acct(conntrack, ctinfo, skb, timeout); |
1020 | 1021 | ||