diff --git a/dns.c b/dns.c index 2039528..cde74be 100644 --- a/dns.c +++ b/dns.c @@ -618,7 +618,9 @@ dnsd_read(int fd, char *buf, int buflen) r = decodepacket(name, &packetbuf); - memcpy(buf, packetbuf.data, r); + if (r > 0) { + memcpy(buf, packetbuf.data, r); + } return r; }