]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/ipc/mach_msg.c
xnu-792.24.17.tar.gz
[apple/xnu.git] / osfmk / ipc / mach_msg.c
index f532b52300c03c059d82bedc3aed1e141a77afac..e2785e3cfed73b1ef7e5cfd73cdf71109c3232bc 100644 (file)
@@ -183,6 +183,9 @@ mach_msg_send(
        if ((send_size < sizeof(mach_msg_header_t)) || (send_size & 3))
                return MACH_SEND_MSG_TOO_SMALL;
 
+       if (send_size > MACH_MSG_SIZE_MAX - MAX_TRAILER_SIZE)
+               return MACH_SEND_TOO_LARGE;
+       
        msg_and_trailer_size = send_size + MAX_TRAILER_SIZE;
 
        kmsg = ipc_kmsg_alloc(msg_and_trailer_size);