diff options
author | Dominik DL6ER <dl6er@dl6er.de> | 2021-09-18 16:05:34 +0200 |
---|---|---|
committer | Simon Kelley <simon@thekelleys.org.uk> | 2021-09-20 21:20:41 +0100 |
commit | c1473298238cd52c9fb8728e84fa5bfbf4d8924f (patch) | |
tree | 4d12bd9a4f61f7f9c1e1fe114483b539f732e8a4 | |
parent | eb88eed1fc8ed246e9355531c2715fa2f7738afc (diff) | |
download | dnsmasq-c1473298238cd52c9fb8728e84fa5bfbf4d8924f.tar.gz |
Check if allocation of 66573 bytes succeeded before accessing the memory to avoid crash in busy times
Signed-off-by: DL6ER <dl6er@dl6er.de>
-rw-r--r-- | src/forward.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/forward.c b/src/forward.c index f3c38d7..786b11f 100644 --- a/src/forward.c +++ b/src/forward.c @@ -1863,7 +1863,7 @@ unsigned char *tcp_request(int confd, time_t now, int first, last; unsigned int flags = 0; - if (getpeername(confd, (struct sockaddr *)&peer_addr, &peer_len) == -1) + if (!packet || getpeername(confd, (struct sockaddr *)&peer_addr, &peer_len) == -1) return packet; #ifdef HAVE_CONNTRACK |