From c1ce1560a1ae1a58505c26bc0e46ce1aee982d54 Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Wed, 11 Jan 2017 18:10:37 -0800 Subject: [PATCH] secure_seq: fix sparse errors Fixes following warnings : net/core/secure_seq.c:125:28: warning: incorrect type in argument 1 (different base types) net/core/secure_seq.c:125:28: expected unsigned int const [unsigned] [usertype] a net/core/secure_seq.c:125:28: got restricted __be32 [usertype] saddr net/core/secure_seq.c:125:35: warning: incorrect type in argument 2 (different base types) net/core/secure_seq.c:125:35: expected unsigned int const [unsigned] [usertype] b net/core/secure_seq.c:125:35: got restricted __be32 [usertype] daddr net/core/secure_seq.c:125:43: warning: cast from restricted __be16 net/core/secure_seq.c:125:61: warning: restricted __be16 degrades to integer Fixes: 7cd23e5300c1 ("secure_seq: use SipHash in place of MD5") Signed-off-by: Eric Dumazet Reviewed-by: Jason A. Donenfeld Signed-off-by: David S. Miller --- net/core/secure_seq.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/core/secure_seq.c b/net/core/secure_seq.c index 3a9fcec..758f140b 100644 --- a/net/core/secure_seq.c +++ b/net/core/secure_seq.c @@ -122,7 +122,9 @@ u64 secure_dccp_sequence_number(__be32 saddr, __be32 daddr, { u64 seq; net_secret_init(); - seq = siphash_3u32(saddr, daddr, (u32)sport << 16 | dport, &net_secret); + seq = siphash_3u32((__force u32)saddr, (__force u32)daddr, + (__force u32)sport << 16 | (__force u32)dport, + &net_secret); seq += ktime_get_real_ns(); seq &= (1ull << 48) - 1; return seq; -- 2.7.4