freebsd-dev/tests/sys
Alexander V. Chernikov be1f485d7d sockets: add MSG_TRUNC flag handling for recvfrom()/recvmsg().
Implement Linux-variant of MSG_TRUNC input flag used in recv(), recvfrom() and recvmsg().
Posix defines MSG_TRUNC as an output flag, indicating packet/datagram truncation.
Linux extended it a while (~15+ years) ago to act as input flag,
resulting in returning the full packet size regarless of the input
buffer size.
It's a (relatively) popular pattern to do recvmsg( MSG_PEEK | MSG_TRUNC) to get the
packet size, allocate the buffer and issue another call to fetch the packet.
In particular, it's popular in userland netlink code, which is the primary driving factor of this change.

This commit implements the MSG_TRUNC support for SOCK_DGRAM sockets (udp, unix and all soreceive_generic() users).

PR:		kern/176322
Reviewed by:	pauamma(doc)
Differential Revision: https://reviews.freebsd.org/D35909
MFC after:	1 month
2022-07-30 18:21:51 +00:00
..
acl tests/sys/acl: Add ATF C test for newly added acl_* functions. 2021-08-27 11:52:21 +03:00
aio Reap dead code in lio_kqueue_test and aio_kqueue_test 2022-07-24 09:31:40 -06:00
audit Extend the length of dirpath to fix failure in kyua test 2022-04-12 09:23:56 -07:00
auditpipe Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
capsicum Fix MK_TESTS build with MK_ASAN/MK_UBSAN 2021-08-02 14:33:24 +01:00
cddl Merge fix for zfs readmmap test from CheriBSD 2022-07-15 21:10:09 +02:00
common Reenable vnet tests in CI 2022-05-05 14:38:08 -04:00
devrandom Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
fifo Avoid hard-coding pipe buffer sizes in the pipe and fifo kqueue tests. 2020-05-20 17:48:18 +00:00
file path_test: Verify that operations on unlinked files work 2022-04-18 17:55:24 -04:00
fs fusefs tests: Remove an unused variable. 2022-05-13 20:52:14 +03:00
geom Skip sys.geom.class.multipath.failloop.failloop if dtrace fails to run 2022-03-08 18:12:40 +08:00
kern sockets: add MSG_TRUNC flag handling for recvfrom()/recvmsg(). 2022-07-30 18:21:51 +00:00
kqueue kqueue tests: Simplify the test runner 2022-05-24 20:17:41 -04:00
mac Resolve conflict between the fusefs(5) and mac_bsdextended(4) tests 2020-05-02 20:14:59 +00:00
mqueue Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
net if_vlan tests: Test changing vlan ID 2022-07-21 18:36:01 +02:00
netgraph Remove riscv workaround in sys.netgraph.hub.loop test 2021-12-05 11:12:40 -04:00
netinet Add tests for TCP_MD5 getsockopt 2022-06-23 15:57:56 +01:00
netinet6 netinet6: fix interface handling for loopback traffic 2022-07-10 12:47:47 +00:00
netipsec ping: fix some man pages and tests after r368045 2020-11-26 04:55:02 +00:00
netmap netmap: update unit tests with libnetmap tests 2021-04-02 14:39:30 +00:00
netpfil pf tests: support packet size range in pft_ether.py 2022-07-11 19:55:26 +02:00
opencrypto ossl: Add support for AES-CBC cipher 2021-11-08 10:53:31 +01:00
pjdfstest Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00
posixshm Have posixshm_test ask the kernel for the page size 2022-04-20 14:44:52 +01:00
ses tests/sys/ses: Use ANSI C definition for has_ses. 2022-02-01 13:25:47 -08:00
sys bitstring_test: Add regression tests for bit_ff(c|s)_area_at() 2022-05-20 10:36:05 -04:00
vfs tests/sys/vfs/lookup_cap_dotdot: No longer aborts after ATF update 2021-02-04 17:57:27 +00:00
vm mmap map_at_zero test: handle W^X 2022-02-21 09:43:42 -06:00
vmm vmm: Add credential to cdev object 2021-08-18 13:41:33 -04:00
Makefile Add tests for ses(4) 2022-01-19 12:43:51 -07:00
Makefile.depend
Makefile.inc Do a sweep and remove most WARNS=6 settings 2020-10-01 01:10:51 +00:00