Only call memmove if the rdata length is non zero

This avoids undefined behaviour on zero length rdata where the
data pointer is NULL.

(cherry picked from commit 228cc557fe)
This commit is contained in:
Mark Andrews
2024-03-14 11:06:11 +11:00
parent 0ea08e6dc0
commit 3fadd9efec
+3 -1
View File
@@ -320,7 +320,9 @@ dns_rdataslab_fromrdataset(dns_rdataset_t *rdataset, isc_mem_t *mctx,
? DNS_RDATASLAB_OFFLINE
: 0;
}
memmove(rawbuf, x[i].rdata.data, x[i].rdata.length);
if (x[i].rdata.length != 0) {
memmove(rawbuf, x[i].rdata.data, x[i].rdata.length);
}
rawbuf += x[i].rdata.length;
}