aboutsummaryrefslogtreecommitdiff
path: root/net/ipv4
diff options
context:
space:
mode:
authorUlrich Weber <uweber@astaro.com>2010-09-22 06:45:11 +0000
committerGreg Kroah-Hartman <gregkh@suse.de>2010-11-22 11:00:15 -0800
commitbadaad1d7392eebf646b2e2d4dfe2586e40a8f18 (patch)
tree644031e52fd286a36f4b5cadef6608d99d329136 /net/ipv4
parente26158f99c3c79181eb3e314e898079565cc75fd (diff)
xfrm4: strip ECN bits from tos field
[ Upstream commit 94e2238969e89f5112297ad2a00103089dde7e8f ] otherwise ECT(1) bit will get interpreted as RTO_ONLINK and routing will fail with XfrmOutBundleGenError. Signed-off-by: Ulrich Weber <uweber@astaro.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'net/ipv4')
-rw-r--r--net/ipv4/xfrm4_policy.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c
index 23883a48ebf..ce1e1b5fdd5 100644
--- a/net/ipv4/xfrm4_policy.c
+++ b/net/ipv4/xfrm4_policy.c
@@ -61,7 +61,7 @@ static int xfrm4_get_saddr(struct net *net,
static int xfrm4_get_tos(struct flowi *fl)
{
- return fl->fl4_tos;
+ return IPTOS_RT_MASK & fl->fl4_tos; /* Strip ECN bits */
}
static int xfrm4_init_path(struct xfrm_dst *path, struct dst_entry *dst,