aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/receive.c
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-09-23 18:12:43 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-09-23 18:50:45 +0200
commit193c75255729b0a9b0ef91b9c86de3823b4352e2 (patch)
tree8e3f47400ee9bdc6119d23724af0bf7f442492d8 /src/receive.c
parentchacha20-arm: switch to entirely Andy Polyakov's implementation (diff)
downloadwireguard-monolithic-historical-jd/andy-is-best-maybe.tar.xz
wireguard-monolithic-historical-jd/andy-is-best-maybe.zip
Real life sort of benchmarkjd/andy-is-best-maybe
Diffstat (limited to 'src/receive.c')
-rw-r--r--src/receive.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/receive.c b/src/receive.c
index 6a27bdd..085cda0 100644
--- a/src/receive.c
+++ b/src/receive.c
@@ -580,6 +580,8 @@ void packet_receive(struct wireguard_device *wg, struct sk_buff *skb)
break;
}
case cpu_to_le32(MESSAGE_DATA):
+ if (skb->len > MESSAGE_MINIMUM_LENGTH)
+ goto err;
PACKET_CB(skb)->ds = ip_tunnel_get_dsfield(ip_hdr(skb), skb);
packet_consume_data(wg, skb);
break;