* [PATCH 2.4 7/8]: Fix refreshing of overlapping expectations
@ 2005-03-04 12:18 Patrick McHardy
0 siblings, 0 replies; only message in thread
From: Patrick McHardy @ 2005-03-04 12:18 UTC (permalink / raw)
To: David S. Miller; +Cc: Netfilter Development Mailinglist
[-- Attachment #1: 07.diff --]
[-- Type: text/x-patch, Size: 1990 bytes --]
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
# 2005/03/04 01:03:49+01:00 kaber@coreworks.de
# [NETFILTER]: Fix refreshing of overlapping expectations
#
# Backport from 2.6, original patch from Rusty:
#
# More importantly, a previous expectation should only be refreshed and return
# EEXIST if it's owned by the same connection (nfsim found this bug).
#
# Slightly different from 2.6 patch, it had a bug that was corrected
# in a different patch. We still want to return -EEXIST if the
# expectation is owned by a different connection as the expectation
# list is global.
#
# Signed-off-by: Patrick McHardy <kaber@trash.net>
#
# net/ipv4/netfilter/ip_conntrack_core.c
# 2005/03/04 01:03:48+01:00 kaber@coreworks.de +2 -1
# [NETFILTER]: Fix refreshing of overlapping expectations
#
# Backport from 2.6, original patch from Rusty:
#
# More importantly, a previous expectation should only be refreshed and return
# EEXIST if it's owned by the same connection (nfsim found this bug).
#
# Slightly different from 2.6 patch, it had a bug that was corrected
# in a different patch. We still want to return -EEXIST if the
# expectation is owned by a different connection as the expectation
# list is global.
#
# Signed-off-by: Patrick McHardy <kaber@trash.net>
#
diff -Nru a/net/ipv4/netfilter/ip_conntrack_core.c b/net/ipv4/netfilter/ip_conntrack_core.c
--- a/net/ipv4/netfilter/ip_conntrack_core.c 2005-03-04 01:52:08 +01:00
+++ b/net/ipv4/netfilter/ip_conntrack_core.c 2005-03-04 01:52:08 +01:00
@@ -973,7 +973,8 @@
pointing into the payload - otherwise we should have to copy
the data filled out by the helper over the old one */
DEBUGP("expect_related: resent packet\n");
- if (related_to->helper->timeout) {
+ if (old->expectant == related_to &&
+ related_to->helper->timeout) {
if (!del_timer(&old->timeout)) {
/* expectation is dying. Fall through */
old = NULL;
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-03-04 12:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-04 12:18 [PATCH 2.4 7/8]: Fix refreshing of overlapping expectations Patrick McHardy
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.