DragonFlyBSD Kernel Audit
DF-0389 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -1138,7 +1138,8 @@
 			sa = rt_fix_netmask(&ss, sa, rtinfo->rti_dst);
 		rtinfo->rti_addrs |= (1 << i);
 		dlen = RT_ROUNDUP(sa->sa_len);
-		bcopy(sa, cp, dlen);
+		bzero(cp, dlen);
+		bcopy(sa, cp, sa->sa_len);
 		cp += dlen;
 	}
 }