diff options
author | Ulrich Weber <uweber@astaro.com> | 2010-09-22 06:45:11 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-09-22 20:25:48 -0700 |
commit | 94e2238969e89f5112297ad2a00103089dde7e8f (patch) | |
tree | 95a65a101132a512b70918cdecfd74d209a47862 /net/ipv4/xfrm4_policy.c | |
parent | 3f5a2a713aad28480d86b0add00c68484b54febc (diff) | |
download | linux-3.10-94e2238969e89f5112297ad2a00103089dde7e8f.tar.gz linux-3.10-94e2238969e89f5112297ad2a00103089dde7e8f.tar.bz2 linux-3.10-94e2238969e89f5112297ad2a00103089dde7e8f.zip |
xfrm4: strip ECN bits from tos field
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>
Diffstat (limited to 'net/ipv4/xfrm4_policy.c')
-rw-r--r-- | net/ipv4/xfrm4_policy.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/xfrm4_policy.c b/net/ipv4/xfrm4_policy.c index 869078d4eeb..a580349f0b8 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, |