[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20120917.124953.1599275868994343219.davem@davemloft.net>
Date: Mon, 17 Sep 2012 12:49:53 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: nicolas.dichtel@...nd.com
Cc: vyasevich@...il.com, eric.dumazet@...il.com, sds@...ho.nsa.gov,
james.l.morris@...cle.com, eparis@...isplace.org, sri@...ibm.com,
linux-sctp@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH net-next v3 0/4] Take care of xfrm policy when checking
dst entries
From: Nicolas Dichtel <nicolas.dichtel@...nd.com>
Date: Tue, 11 Sep 2012 10:09:43 +0200
> The goal of these patches is to fix the following problem: a session is
> established (TCP, SCTP) and after a new policy is inserted. The current
> code does not recalculate the route, thus the traffic is not encrypted.
>
> The patch propose to check flow_cache_genid value when checking a dst
> entry, which is incremented each time a policy is inserted or deleted.
>
> v2: use net->ipv4.rt_genid instead of flow_cache_genid (and thus save a test
> in fast path). Also move it to net->rt_genid, to be able to use it for IPv6
> too. Note that IPv6 will have one more test in fast path.
>
> v3: remove unrelated "#ifdef CONFIG_XFRM" in IPv6 part
> bump rt_genid in selinux code (same place than flow_cache_genid)
>
> Patches are tested with TCP and SCTP, IPv4 and IPv6.
These patches don't apply cleanly at all.
In the net/ipv4/route.c code we don't initialize the genid to zero,
we stick a random value there.
And we don't increment it by one on flushes, instead we increment
it by a random amount.
I wonder what tree these were even against, the differences were
so great.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists