opnsense-src/lib/libc/sys
Olivier Certner c1d7552ddd
New setcred() system call and associated MAC hooks
This new system call allows to set all necessary credentials of
a process in one go: Effective, real and saved UIDs, effective, real and
saved GIDs, supplementary groups and the MAC label.  Its advantage over
standard credential-setting system calls (such as setuid(), seteuid(),
etc.) is that it enables MAC modules, such as MAC/do, to restrict the
set of credentials some process may gain in a fine-grained manner.

Traditionally, credential changes rely on setuid binaries that call
multiple credential system calls and in a specific order (setuid() must
be last, so as to remain root for all other credential-setting calls,
which would otherwise fail with insufficient privileges).  This
piecewise approach causes the process to transiently hold credentials
that are neither the original nor the final ones.  For the kernel to
enforce that only certain transitions of credentials are allowed, either
these possibly non-compliant transient states have to disappear (by
setting all relevant attributes in one go), or the kernel must delay
setting or checking the new credentials.  Delaying setting credentials
could be done, e.g., by having some mode where the standard system calls
contribute to building new credentials but without committing them.  It
could be started and ended by a special system call.  Delaying checking
could mean that, e.g., the kernel only verifies the credentials
transition at the next non-credential-setting system call (we just
mention this possibility for completeness, but are certainly not
endorsing it).

We chose the simpler approach of a new system call, as we don't expect
the set of credentials one can set to change often.  It has the
advantages that the traditional system calls' code doesn't have to be
changed and that we can establish a special MAC protocol for it, by
having some cleanup function called just before returning (this is
a requirement for MAC/do), without disturbing the existing ones.

The mac_cred_check_setcred() hook is passed the flags received by
setcred() (including the version) and both the old and new kernel's
'struct ucred' instead of 'struct setcred' as this should simplify
evolving existing hooks as the 'struct setcred' structure evolves.  The
mac_cred_setcred_enter() and mac_cred_setcred_exit() hooks are always
called by pairs around potential calls to mac_cred_check_setcred().
They allow MAC modules to allocate/free data they may need in their
mac_cred_check_setcred() hook, as the latter is called under the current
process' lock, rendering sleepable allocations impossible.  MAC/do is
going to leverage these in a subsequent commit.  A scheme where
mac_cred_check_setcred() could return ERESTART was considered but is
incompatible with proper composition of MAC modules.

While here, add missing includes and declarations for standalone
inclusion of <sys/ucred.h> both from kernel and userspace (for the
latter, it has been working thanks to <bsm/audit.h> already including
<sys/types.h>).

Reviewed by:    brooks
Approved by:    markj (mentor)
Relnotes:       yes
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D47618

(cherry picked from commit ddb3eb4efe55e57c206f3534263c77b837aff1dc)
2025-04-03 21:31:03 +02:00
..
__error.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
__vdso_gettimeofday.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
_exit.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
_umtx_op.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
abort2.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
accept.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
accept.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
accept4.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
access.2 faccessat(2): Honor AT_SYMLINK_NOFOLLOW 2024-09-26 09:13:50 -04:00
acct.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
adjtime.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
aio_cancel.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_error.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_fsync.2 Remove _POSIX_PRIORITIZED_IO references from man pages 2024-01-19 18:52:18 -07:00
aio_mlock.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_read.2 Document aio_read2/aio_write2 2024-02-18 12:01:46 +02:00
aio_return.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_suspend.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_suspend.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
aio_waitcomplete.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
aio_write.2 Document aio_read2/aio_write2 2024-02-18 12:01:46 +02:00
bind.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
bindat.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
brk.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
brk.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
cap_enter.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
cap_fcntls_limit.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
cap_ioctls_limit.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
cap_rights_limit.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
chdir.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
chflags.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
chmod.2 unix: Add support for atomically setting the socket mode 2024-12-03 01:03:26 +00:00
chown.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
chroot.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
clock_gettime.2 clock_gettime.2: fix markup 2024-05-10 09:01:52 -04:00
clock_gettime.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
clock_nanosleep.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
close.2 tcp: don't ever return ECONNRESET on close(2) 2025-03-31 10:31:21 -07:00
close.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
closefrom.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
closefrom.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
compat-ino64.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
compat-stub.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
connect.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
connect.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
connectat.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
copy_file_range.2 copy_file_range.2: Clarify that only regular files work 2024-01-10 17:13:23 -08:00
cpuset.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
cpuset_getaffinity.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
cpuset_getdomain.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
dup.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
eventfd.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
execve.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
extattr_get_file.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
fcntl.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
fcntl.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
fdatasync.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
ffclock.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
fhlink.2 manuals: Fix errors in .2 pages 2024-11-04 11:56:24 -04:00
fhopen.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
fhreadlink.2 fhreadlink.2: fix old typo in the manpage 2024-11-28 14:53:17 +02:00
flock.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
fork.2 fork: Document _Fork (and fork) as POSIX 2024 2024-11-20 19:45:07 -05:00
fork.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
fspacectl.2 spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
fstat.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
fstatat.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
fstatfs.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
fsync.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
fsync.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getdents.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getdirentries.2 getdirentries.2: Reference dir(5) 2023-09-12 13:48:18 +02:00
getdirentries.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
getdtablesize.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getfh.2 manuals: Fix errors in .2 pages 2024-11-04 11:56:24 -04:00
getfsstat.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getfsstat.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
getgid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getgroups.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getitimer.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getlogin.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getloginclass.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getpeername.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getpgrp.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getpid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getpriority.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getrandom.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getrlimit.2 getrlimit(2): document RLIMIT_PIPEBUF 2024-10-05 10:08:54 +03:00
getrlimitusage.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
getrusage.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getsid.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
getsockname.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
getsockopt.2 socket: Add an option to retrieve a socket's FIB number 2025-02-21 01:04:50 +00:00
gettimeofday.2 gettimeofday.2: Do mention improbable future removal 2024-05-04 15:05:09 +02:00
gettimeofday.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
getuid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
interposing_table.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
intro.2 intro.2 as errno.2: Update maximum hard link limit 2024-05-20 21:15:00 -06:00
ioctl.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
issetugid.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
jail.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
kcmp.2 kcmp: Add a manual page 2024-01-31 09:16:29 -05:00
kenv.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
kevent.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
kill.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
kldfind.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldfirstmod.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldload.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldnext.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldstat.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldsym.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kldunload.2 linker: Make linker.h more self-contained 2024-11-09 01:10:14 +00:00
kqueue.2 kqueue.2: Editorial pass 2025-03-03 11:56:20 -05:00
ktrace.2 ktrace.2: correct kern.ktrace.genio_size sysctl name 2023-10-13 10:12:34 -04:00
link.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
lio_listio.2 lio_listio(2): add LIO_FOFFSET flag to ignore aiocb aio_offset 2024-02-18 12:01:46 +02:00
listen.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
lseek.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
lstat.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
madvise.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
Makefile.inc kqueue.2: Editorial pass 2025-03-03 11:56:20 -05:00
membarrier.2 membarrier: Add manual page 2024-10-20 23:32:46 -04:00
mincore.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
minherit.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mkdir.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mkfifo.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mknod.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mknod.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
mlock.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mlockall.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mmap.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
modfind.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
modnext.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
modstat.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mount.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mprotect.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
mq_close.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_getattr.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_notify.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_open.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_receive.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_send.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_setattr.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
mq_unlink.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
msgctl.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
msgget.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
msgrcv.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
msgsnd.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
msync.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
msync.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
munmap.2 munmap.2: Remove EINVAL for negative len 2025-01-20 09:25:14 -05:00
nanosleep.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
nanosleep.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
nfssvc.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
ntp_adjtime.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
open.2 open.2: minor editing 2025-03-07 07:23:08 +02:00
open.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
openat.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
pathconf.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
pdfork.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
pdfork.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
pipe.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
pipe.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
poll.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
poll.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
POSIX2x_Fork.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
posix_fadvise.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
posix_fallocate.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
posix_openpt.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
ppoll.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
procctl.2 procctl.2: Editing pass 2024-12-27 10:43:26 -05:00
profil.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
pselect.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
pselect.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
ptrace.2 manuals: Fix errors in .2 pages 2024-11-04 11:56:24 -04:00
ptrace.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
quotactl.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
rctl_add_rule.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
read.2 read.2: Describe debug.iosize_max_clamp 2024-02-14 05:41:54 +02:00
read.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
readlink.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
readv.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
reboot.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
recv.2 recv.2: Improve style in RETURN VALUES 2025-02-26 20:44:37 -05:00
recvfrom.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
recvmsg.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
rename.2 rename(2): Extend EINVAL's description 2024-09-01 03:53:36 +03:00
revoke.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
rfork.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
rmdir.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
rtprio.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sched_get_priority_max.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sched_getcpu.3 sched_getcpu: Add man page 2024-12-04 13:32:58 -05:00
sched_setparam.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sched_setscheduler.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sched_yield.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sctp_generic_recvmsg.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sctp_generic_sendmsg.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sctp_peeloff.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
select.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
select.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
semctl.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
semget.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
semop.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
send.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sendfile.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sendmsg.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sendto.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
setcontext.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
setfib.2 setfib.2: Note that the number of FIBs can be adjusted after boot 2025-02-07 14:46:53 +00:00
setgroups.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
setpgid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
setregid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
setresuid.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
setreuid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
setsid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
setuid.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
shm_open.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
shm_open.c memfd_create: move implementation to libc/gen 2023-12-21 18:13:18 +00:00
shmat.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
shmctl.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
shmget.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
shutdown.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigaction.2 sigaction.2: clarify that fork isn't async-signal-safe, but _Fork is 2024-01-19 18:51:27 -07:00
sigaction.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sigaltstack.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigfastblock.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
sigpending.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigprocmask.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigprocmask.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sigqueue.2 sigqueue(2): Document __SIGQUEUE_TID 2024-04-30 03:48:09 +03:00
sigreturn.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigstack.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigsuspend.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sigsuspend.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sigtimedwait.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sigwait.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sigwait.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
sigwaitinfo.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
sigwaitinfo.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
socket.2 manuals: Fix "unusual .Xr" warnings with a script 2024-11-04 12:13:13 -04:00
socketpair.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
stat.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
stat.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
statfs.2 statfs.2: document missing user-visible MNT flags 2025-02-23 02:30:51 +02:00
statfs.c Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:42 -06:00
swapcontext.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
swapon.2 manuals: Misc macro typos 2024-12-27 10:40:05 -05:00
Symbol.map New setcred() system call and associated MAC hooks 2025-04-03 21:31:03 +02:00
symlink.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sync.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
sysarch.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
syscall.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
thr_exit.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_kill.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_new.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_self.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_set_name.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_suspend.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
thr_wake.2 Canonicalize the name of the FreeBSD Foundation 2025-02-19 09:58:47 -05:00
timer_create.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
timer_delete.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
timer_settime.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
timerfd.2 timerfd.2: Remove a double word 2024-04-23 07:22:46 +02:00
truncate.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
umask.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
undelete.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
unlink.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
utimensat.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
utimes.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
utrace.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
uuidgen.2 Remove $FreeBSD$: two-line nroff pattern 2023-08-16 11:55:10 -06:00
vadvise.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
vfork.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
wait.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
wait4.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
wait6.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
write.2 Remove $FreeBSD$: one-line nroff pattern 2023-08-16 11:55:15 -06:00
write.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00
writev.c libc: Purge unneeded cdefs.h 2023-11-26 21:20:09 -07:00