aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/compat/compat.h
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-05-20 22:18:18 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-05-22 16:41:59 +0200
commita0225408e002be8bc207ff37624bad932b92b643 (patch)
tree7b337509597d43a96e32437348c62ff0c088a30c /src/compat/compat.h
parentqemu: bump default kernel for gcc 8.1 (diff)
downloadwireguard-monolithic-historical-a0225408e002be8bc207ff37624bad932b92b643.tar.xz
wireguard-monolithic-historical-a0225408e002be8bc207ff37624bad932b92b643.zip
compat: work around qcom 4.9 backports
Qualcomm backported the get_random_u32 patch, even though kernel.org didn't, which is a problem. They also backported another patch in the same place which defines a new macro variable, so use this as a differentiator.
Diffstat (limited to 'src/compat/compat.h')
-rw-r--r--src/compat/compat.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/compat/compat.h b/src/compat/compat.h
index e077188..1b6459d 100644
--- a/src/compat/compat.h
+++ b/src/compat/compat.h
@@ -124,6 +124,8 @@ static inline void skb_reset_tc(struct sk_buff *skb)
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
+#include <linux/random.h>
+#ifndef CANARY_MASK
#include <linux/siphash.h>
static inline u32 get_random_u32(void)
{
@@ -141,6 +143,7 @@ static inline u32 get_random_u32(void)
return siphash_2u32(counter++, get_random_int(), &key);
}
#endif
+#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0) && !defined(ISRHEL7)
static inline void netif_keep_dst(struct net_device *dev)