summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2006-11-03 00:55:35 -0800
committerDavid S. Miller <davem@sunset.davemloft.net>2006-11-05 14:11:26 -0800
commit95026cd242bd4188a036f2eba20994113ed5a5d7 (patch)
tree11749f0f1da68ccc251ead87c9d899ae9b7f7694
parent02e60370d4dac83f22d5ae75d5512bcb9a3f24b7 (diff)
downloadlinux-95026cd242bd4188a036f2eba20994113ed5a5d7.tar.gz
linux-95026cd242bd4188a036f2eba20994113ed5a5d7.tar.bz2
linux-95026cd242bd4188a036f2eba20994113ed5a5d7.zip
[IPV6]: Fix ECN bug on big-endian
__constant_htons(2<<4) is not a replacement for htonl(2<<20). Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/net/inet_ecn.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/inet_ecn.h b/include/net/inet_ecn.h
index d599c6bfbb86..7849844a4911 100644
--- a/include/net/inet_ecn.h
+++ b/include/net/inet_ecn.h
@@ -48,7 +48,7 @@ static inline __u8 INET_ECN_encapsulate(__u8 outer, __u8 inner)
#define IP6_ECN_flow_xmit(sk, label) do { \
if (INET_ECN_is_capable(inet_sk(sk)->tos)) \
- (label) |= __constant_htons(INET_ECN_ECT_0 << 4); \
+ (label) |= htonl(INET_ECN_ECT_0 << 20); \
} while (0)
static inline int IP_ECN_set_ce(struct iphdr *iph)