]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/kdp/kdp.c
xnu-3789.51.2.tar.gz
[apple/xnu.git] / osfmk / kdp / kdp.c
index a397a9843f2af76b5d454d77085932314d2e2bbf..ee2e9f8d80e52a7e975897f3664f639f82cfca93 100644 (file)
@@ -143,9 +143,13 @@ kdp_packet(
     size_t             plen = *len;
     kdp_req_t          req;
     boolean_t          ret;
-    
+
 #if DO_ALIGN
-    bcopy((char *)pkt, (char *)rd, sizeof(aligned_pkt));
+    if (plen > sizeof(aligned_pkt)) {
+       printf("kdp_packet bad len %lu\n", plen);
+       return FALSE;
+    }
+    bcopy((char *)pkt, (char *)rd, plen);
 #else
     rd = (kdp_pkt_t *)pkt;
 #endif
@@ -1142,8 +1146,7 @@ kdp_dumpinfo(
         }
 
         /* gather some stats for reply */
-        kdp_get_dump_info(&rp->type, rp->name, rp->destip, rp->routerip, 
-                          &rp->port);
+        kdp_get_dump_info(rp);
 
        *reply_port = kdp.reply_port;
        *len = rp->hdr.len;