summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-05-24 04:41:46 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-05-24 04:42:37 +0200
commitffbdb44078efecc32f7ae7e1f851c264a839cef7 (patch)
tree2f1a3a733af94b00ecaa534ffc9d4fa3d40c970a /src
parent4bf1a952327f116427d9c0aed67061a336a591dc (diff)
compat: don't clash with get_random_u32 backports
Our previous heuristic wasn't good enough, since CopperheadOS backported CANARY_MASK without backporting get_random_u32, as Qualcomm did, so now we just entirely rename all invocations of the function. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'src')
-rw-r--r--src/compat/compat.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/compat/compat.h b/src/compat/compat.h
index 1b6459d..2853c09 100644
--- a/src/compat/compat.h
+++ b/src/compat/compat.h
@@ -125,9 +125,8 @@ static inline void skb_reset_tc(struct sk_buff *skb)
#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)
+static inline u32 __wgcompat_get_random_u32(void)
{
static siphash_key_t key;
static u32 counter = 0;
@@ -142,7 +141,7 @@ static inline u32 get_random_u32(void)
#endif
return siphash_2u32(counter++, get_random_int(), &key);
}
-#endif
+#define get_random_u32 __wgcompat_get_random_u32
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0) && !defined(ISRHEL7)