aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/receive.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2016-07-08 02:29:38 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2016-07-08 02:29:38 +0200
commitdc009781e0836fa1cb18df46ee7ac3b509738fed (patch)
tree37bb23da616c6997a9f735234172258caad7d247 /src/receive.c
parentgo test: don't rely on undefined append behavior (diff)
downloadwireguard-monolithic-historical-dc009781e0836fa1cb18df46ee7ac3b509738fed.tar.xz
wireguard-monolithic-historical-dc009781e0836fa1cb18df46ee7ac3b509738fed.zip
persistent keepalive: add kernel mechanism
Diffstat (limited to 'src/receive.c')
-rw-r--r--src/receive.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/receive.c b/src/receive.c
index 1b86489..db19527 100644
--- a/src/receive.c
+++ b/src/receive.c
@@ -273,7 +273,7 @@ void packet_receive(struct wireguard_device *wg, struct sk_buff *skb)
static const u8 addr;
#endif
- if (skb_data_offset(skb, &offset, &len) < 0)
+ if (unlikely(skb_data_offset(skb, &offset, &len) < 0 || !len))
goto err;
switch (message_determine_type(skb->data + offset, len)) {
case MESSAGE_HANDSHAKE_INITIATION: