freebsd-dev/sys/compat/freebsd32
Brooks Davis c46697b9cb freebsd32_sendmsg: fix control message ABI
When a freebsd32 caller uses all or most allowed space for control
messages (MCLBYTES == 2K) then the message may no longer fit when
the messages are padded for 64-bit alignment.  Historically we've just
shrugged and said there is no ABI guarantee.  We ran into this on
CheriBSD where a capsicumized 64-bit nm would fail when called with more
than 64 files.

Fix this by not gratutiously capping size of mbuf data we'll allocate
to MCLBYTES and let m_get2 allocate up to MJUMPAGESIZE (4K or larger).
Instead of hard-coding a length check, let m_get2 do it and check for a
NULL return.

Reviewed by:	markj, jhb, emaste
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D36322
2022-08-24 18:34:39 +01:00
..
freebsd32_abort2.c freebsd32: add real abort2 2021-11-17 20:12:25 +00:00
freebsd32_capability.c fd: rename fget*_locked to fget*_noref 2022-02-22 18:53:43 +00:00
freebsd32_ioctl.c sysent: Get rid of bogus sys/sysent.h include. 2022-05-28 20:52:17 +03:00
freebsd32_ioctl.h Move 32-bit compat support for FIODGNAME to the right place. 2018-10-26 17:59:25 +00:00
freebsd32_ipc.h freebsd32: Fix layout of struct shmid_kernel32. 2022-01-18 10:42:21 -08:00
freebsd32_misc.c freebsd32_sendmsg: fix control message ABI 2022-08-24 18:34:39 +01:00
freebsd32_misc.h Remove "All Rights Reserved" from FreeBSD Foundation sys/ copyrights 2021-08-08 10:42:24 -04:00
freebsd32_proto.h sysent: regen for syscallarg_t 2022-03-28 19:43:03 +01:00
freebsd32_signal.h sys/compat: Use C99 fixed-width integer types. 2021-12-28 09:41:33 -08:00
freebsd32_syscall.h Regen 2021-12-09 02:49:10 +02:00
freebsd32_syscalls.c Regen 2021-12-09 02:49:10 +02:00
freebsd32_sysent.c sysent: regen after 52a1d90c8b, posix_fadvise in capmode 2022-04-14 15:17:36 -04:00
freebsd32_systrace_args.c Regen 2021-12-09 02:49:10 +02:00
freebsd32_util.h sys/compat: Use C99 fixed-width integer types. 2021-12-28 09:41:33 -08:00
freebsd32.h Implement shared page address randomization 2022-07-18 16:27:37 +02:00
Makefile freebsd32: generate from sys/kern/syscalls.master 2021-11-22 22:36:58 +00:00
syscalls.conf freebsd32: generate from sys/kern/syscalls.master 2021-11-22 22:36:58 +00:00