opnsense-src/sys/sys
Mark Johnston 7587f6d484 namei: Make stackable filesystems check harder for jail roots
Suppose a process has its cwd pointing to a nullfs directory, where the
lower directory is also visible in the jail's filesystem namespace.
Suppose that the lower directory vnode is moved out from under the
nullfs mount.  The nullfs vnode still shadows the lower vnode, and
dotdot lookups relative to that directory will instantiate new nullfs
vnodes outside of the nullfs mountpoint, effectively shadowing the lower
filesystem.

This phenomenon can be abused to escape a chroot, since the nullfs
vnodes instantiated by these dotdot lookups defeat the root vnode check
in vfs_lookup(), which uses vnode pointer equality to test for the
process root.

Fix this by extending nullfs and unionfs to perform the same check,
exploiting the fact that the passed componentname is embedded in a
nameidata structure to avoid changing the VOP_LOOKUP interface.  That
is, add a flag to indicate that containerof can be used to get the full
nameidata structure, and perform the root vnode check on the lower vnode
when performing a dotdot lookup.

PR:		262180
Reviewed by:	olce, kib
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D50418
2025-05-23 13:03:38 +00:00
..
disk gpart: Add u-boot-env alias for U-Boot's environment GPT partition UUID 2024-09-02 23:21:18 +01:00
_atomic64e.h atomics: Constify loads 2024-12-16 15:42:26 +01:00
_atomic_subword.h atomics: Constify loads 2024-12-16 15:42:26 +01:00
_bitset.h sys: declare bit sets unsigned 2024-05-09 17:14:41 -06:00
_blockcount.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_bus_dma.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_callout.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_clock_id.h Redefine CLOCK_BOOTTIME to alias CLOCK_MONOTONIC, not CLOCK_UPTIME 2024-05-31 08:45:02 -06:00
_cpuset.h sys/_{cpu,domain}set.h: don't require sys/param.h 2024-04-15 21:35:40 +01:00
_domainset.h sys/_{cpu,domain}set.h: don't require sys/param.h 2024-04-15 21:35:40 +01:00
_endian.h endian.h: Define uint{16,32,64}_t 2024-05-06 10:43:14 -06:00
_eventhandler.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_ffcounter.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_iovec.h iovec: macros to manipulate len and base together 2024-06-02 19:41:22 +01:00
_lock.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
_lockmgr.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_maxphys.h Fix new users of MAXPHYS and hide it from the kernel namespace 2024-04-30 15:29:06 -04:00
_mutex.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
_null.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_nv.h nv: Add <sys/_nv.h> header for nvlist_t declaration 2024-12-30 13:51:48 -05:00
_pctrie.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_pthreadtypes.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_pv_entry.h sys/_pv_entry.h: Include sys/param.h 2022-10-11 12:51:55 -06:00
_rangeset.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_rmlock.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
_rwlock.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
_semaphore.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_seqc.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
_sigaltstack.h Define stack_t in sys/_sigaltstack.h 2024-03-19 23:13:25 +00:00
_sigset.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_sigval.h sys/signal.h: move union sigval into dedicated private header sys/_sigval.h 2024-04-23 19:51:20 +03:00
_smr.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_sockaddr_storage.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_stack.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_stdarg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_stdint.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_sx.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
_task.h taskqueue: Move the timeout_task definition to _task.h 2024-07-08 12:26:35 -04:00
_termios.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_timespec.h sys/sys: Remove some more vestiges of the $FreeBSD$ 2023-11-29 01:03:56 +02:00
_timeval.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_tls_variant_i.h tls: Introduce struct dtv and struct dtv_slot 2025-05-07 20:20:26 +01:00
_types.h sys/acl.h: move main typedefs to sys/_types.h 2024-03-19 23:13:26 +00:00
_ucontext.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_uio.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
_umtx.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_unrhdr.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
_winsize.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
aac_ioctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
abi_compat.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
acct.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
acl.h sys: Mark ACL conversion routines as __result_use_check 2024-08-15 15:04:29 -04:00
agpio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
aio.h aio: remove write-only jobid & kernelinfo 2024-11-15 10:47:46 -05:00
alq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
apm.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
arb.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
asan.h thread: Simplify sanitizer integration with thread creation 2024-04-22 11:46:59 -04:00
assym.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ata.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
atomic_common.h atomics: atomic_load_consume_ptr(): Accept pointers to const 2025-01-20 16:49:52 +01:00
atomic_san.h atomics: Constify loads: Remove now superfluous uses of DECONST() 2025-01-20 16:49:52 +01:00
auxv.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
backlight.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bio.h vm: Retire an unused declaration 2024-11-27 02:14:58 -06:00
bitcount.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
bitset.h bitset: __BIT_FFS_AT(): Fix herald comment, take 2 2024-09-03 15:16:13 +02:00
bitstring.h bitstring: Support large bit strings. 2023-11-22 23:30:03 +01:00
blist.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
blockcount.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
boot.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
boottrace.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
buf.h buf: Add a runningbufclaim() helper 2024-11-22 14:03:40 +00:00
buf_ring.h buf_ring: Remove an unneeded barrier 2024-12-11 17:02:24 +00:00
bufobj.h getblk: track "non-sterile" bufobj to avoid bo lock on miss if sterile 2024-06-16 14:09:45 -07:00
bus.h new-bus: Rename bus_generic_get_resource_list to null_get_resource_list 2025-02-05 14:22:25 -05:00
bus_dma.h busdma: kill filter functionality internally 2023-12-06 19:11:39 -04:00
bus_dma_internal.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
bus_san.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
busdma_bufalloc.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
callout.h callout: provide CALLOUT_TRYLOCK flag 2024-10-24 10:14:03 -07:00
caprights.h capsicum: Statically initialize commonly used capability rights 2025-05-20 20:19:47 +00:00
capsicum.h capsicum: Statically initialize commonly used capability rights 2025-05-20 20:19:47 +00:00
cdefs.h sys/cdefs.h: add __nodiscard annotation 2025-05-09 23:50:23 +01:00
cdio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cdrio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cfictl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
chio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ck.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
clock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cnv.h nv: Add <sys/_nv.h> header for nvlist_t declaration 2024-12-30 13:51:48 -05:00
compressor.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
condvar.h condvar: Clean up condvar.h a bit 2024-01-15 12:27:11 -05:00
conf.h cdev: dev_copyname copies a character device's name to a buffer 2025-03-27 16:43:15 -04:00
cons.h vt/sc: retire logic to select vt(4) by default for UEFI boot 2024-05-25 11:00:35 -04:00
consio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
copyright.h copyright: Happy New Year 2025 2025-01-01 00:04:28 +00:00
counter.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
coverage.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cpu.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cpuctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
cpuset.h bitset: Add ORNOT macros 2024-04-27 19:20:34 -05:00
crc16.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
csan.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ctf.h ctf: Add v3 support to CTF tools, ctf{convert,dump,merge} 2022-03-07 10:43:19 -05:00
ctype.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
devctl.h kern: Move devctl_systems[] out of sys/sys/devctl.h 2023-06-08 12:28:04 -04:00
devicestat.h Add interface NVME to devstat 2023-11-15 23:03:40 -05:00
devmap.h subr_devmap: Reduce the use of the static devmap 2025-05-02 16:39:04 +01:00
dirent.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
disk.h Remove cross-references to GBDE 2024-05-07 07:35:33 +00:00
disk_zone.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
disklabel.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
diskmbr.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
dkstat.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
dnv.h nv: Add <sys/_nv.h> header for nvlist_t declaration 2024-12-30 13:51:48 -05:00
domain.h sockets: remove dom_dispose and PR_RIGHTS 2024-01-16 10:30:49 -08:00
domainset.h bitset: Add ORNOT macros 2024-04-27 19:20:34 -05:00
dtrace_bsd.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
dvdio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
efi.h efi: Move to using efi_guid_t in ioctl definitions 2025-05-01 11:53:40 -06:00
efi_map.h sys/efi_map.h: Forward declare struct efi_map_header 2025-03-03 16:38:13 -05:00
efiio.h efi: Move to using efi_guid_t in ioctl definitions 2025-05-01 11:53:40 -06:00
elf.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
elf32.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
elf64.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
elf_common.h sys/elf_common.h: add the DF_1_INITFIRST flag definition 2025-05-06 20:14:56 +03:00
elf_generic.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
endian.h endian.h: Update comments now that POSIX Issue 8 is POSIX.1-2024 2024-12-30 13:38:39 -07:00
epoch.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
errno.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
eui64.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
event.h kevent32/kinfo_knote32: remove __LP64__ predicate in definitions 2025-03-25 04:27:11 +02:00
eventfd.h spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
eventhandler.h sysctl: Update 'master' copy of vnet SYSCTLs on kernel environment variables change 2023-09-21 12:11:28 +08:00
eventvar.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
exec.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
extattr.h Move kern_extattr_* prototypes to <sys/syscallsubr.h> 2023-09-08 16:36:28 -07:00
fail.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
fbio.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
fcntl.h vfs: Add VFS/syscall support for Solaris style extended attributes 2025-04-02 13:45:14 -07:00
fdcio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
file.h file: Qualify pointers to capsicum rights as const 2025-05-20 20:19:30 +00:00
filedesc.h file: Qualify pointers to capsicum rights as const 2025-05-20 20:19:30 +00:00
filio.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
firmware.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
fnv_hash.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
font.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
gmon.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
gpio.h sys: Add GPIO_INTR_EDGE_MASK define 2024-10-22 09:15:30 -07:00
gpt.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
gsb_crc32.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
gtaskqueue.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
hash.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
hhook.h hhook: Sprinkle const qualifiers where appropriate 2024-10-01 23:28:37 +08:00
iconv.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
imgact.h exec: Remove parameter 'segflg' from exec_copyin_args() 2025-04-21 23:06:35 +00:00
imgact_aout.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
imgact_binmisc.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
imgact_elf.h imgact_elf: Add const to the checknote parameter to __elfN(parse_notes) 2024-03-04 20:52:21 -08:00
interrupt.h ithread: Allow some ithreads to sleep 2025-01-24 15:08:09 +00:00
intr.h intrng: fix INTR_ROOT_* constants 2024-12-16 15:11:52 -04:00
ioccom.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ioctl.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ioctl_compat.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
iov.h iovctl: allow vlan restrictions to be passed to the driver 2024-06-17 10:50:15 +02:00
iov_schema.h iovctl: allow vlan restrictions to be passed to the driver 2024-06-17 10:50:15 +02:00
ipc.h sysvshm: add shmobjinfo() function to find key/seq of the segment backed by obj 2024-10-07 11:22:12 +03:00
ipmi.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
jail.h jail: add allow.routing jail permission 2025-05-12 23:13:18 +01:00
joystick.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kassert.h kassert: Explicitly include <sys/_types.h> 2025-04-28 14:19:42 +02:00
kbio.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
kcov.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kdb.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kenv.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kern_prefetch.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kernel.h clock: Add a long ticks variable, ticksl 2025-01-10 15:42:59 +00:00
kerneldump.h kerneldump: add livedump_start_vnode(9) 2024-03-18 17:12:18 -04:00
khelp.h khelp: Sprinkle const qualifiers where appropriate 2024-10-01 23:28:37 +08:00
kobj.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kpilite.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ksem.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
kthread.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ktls.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
ktr.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ktr_class.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
ktrace.h ktrace: Use STAILQ_EMPTY_ATOMIC when checking for records in userret() 2025-03-23 11:54:59 +00:00
libkern.h <sys/libkern.h>: Don't include <ssp/ssp.h> in the kernel 2024-11-14 09:58:09 -05:00
limits.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
link_aout.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
link_elf.h rtld: add rtld_{get,set}_var 2024-11-07 07:15:23 +02:00
linker.h sys: use globals for the ELF kernel and module type strings 2025-01-24 14:29:39 -07:00
linker_set.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
lock.h locks: augment lock_class with lc_trylock method 2024-10-24 10:14:03 -07:00
lock_profile.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
lockf.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
lockmgr.h lockmgr: make lockmgr_disowned public and use it 2024-05-21 10:21:50 -07:00
lockstat.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
loginclass.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mac.h MAC: mac.h: Fix missing includes/typedefs 2024-12-16 15:42:26 +01:00
malloc.h malloc(9): Introduce M_NEVERFREED 2024-07-30 17:38:18 +02:00
mbuf.h mbuf: Allow clusters to fill an entire jumbo page. 2025-05-07 20:59:09 +02:00
mchain.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
md4.h Consolidate md4 implementations written in C 2024-09-29 22:34:21 -05:00
md5.h libmd, kern, stand: consolidate md5 implementations (NFC) 2024-09-29 22:34:18 -05:00
mdioctl.h sys/sys: Remove some more vestiges of the $FreeBSD$ 2023-11-29 01:03:56 +02:00
membarrier.h membarrier.h: fix typo 2024-10-06 13:22:21 -04:00
memdesc.h memdesc: Helper function to construct mbuf chain backed by memdesc buffer 2024-01-09 11:09:43 -08:00
memrange.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mman.h kern: Make fileops and filterops tables const where possible 2024-11-26 21:04:21 +00:00
module.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
module_khelp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mount.h vfs: Add VFS/syscall support for Solaris style extended attributes 2025-04-02 13:45:14 -07:00
mouse.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mpt_ioctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
mqueue.h mqueue: Introduce kern_kmq_timedreceive & kern_kmq_timedsend 2024-05-23 13:40:46 -06:00
msan.h kmsan: Add kmsan_check_uio() 2023-12-06 12:46:25 -05:00
msg.h sysv ipc: remove {msg,sem,shm}sys() declerations 2024-08-02 18:57:16 +01:00
msgbuf.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
mtio.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
mutex.h Revert "sys/mutex.h: Include sys/lock.h instead of sys/_lock.h" 2023-11-28 09:39:59 +01:00
namei.h namei: Make stackable filesystems check harder for jail roots 2025-05-23 13:03:38 +00:00
nlist_aout.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
nv.h nv: Add <sys/_nv.h> header for nvlist_t declaration 2024-12-30 13:51:48 -05:00
nv_namespace.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
osd.h osd: Constify signature of osd_register() 2024-12-16 15:42:20 +01:00
param.h link_addr: be more strict about address formats 2025-05-15 01:02:52 +01:00
pciio.h pciio.h: Delete trailing whitespace 2025-04-29 13:01:01 -06:00
pcpu.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pctrie.h vm_page_grab_pages: fetch page ranges 2025-05-08 22:51:58 -05:00
physmem.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pidctrl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pipe.h kern: Make fileops and filterops tables const where possible 2024-11-26 21:04:21 +00:00
pmc.h pmc: remove last bits of AMD K7 CPU support 2023-10-18 15:05:45 -03:00
pmckern.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
pmclog.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
poll.h Tweak ppoll() to include 1003.1-2024 visibility, take two 2024-12-14 22:40:16 -06:00
posix4.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
power.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
priority.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
priv.h sysctl: Do not serialize requests when running as root 2024-12-21 19:25:32 +00:00
prng.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
proc.h racct: Fix accounting of CPU time for the system idle process 2025-05-01 14:22:25 +00:00
procctl.h Add per-process flag to disable logsigexit 2024-12-13 23:18:30 -06:00
procdesc.h file: Qualify pointers to capsicum rights as const 2025-05-20 20:19:30 +00:00
procfs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
protosw.h sendfile: factor out socket send buffer space sensing into a method 2025-04-30 14:17:35 -07:00
ptio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ptrace.h freebsd32: struct siginfo32 -> struct __siginfo32 2024-03-19 23:13:26 +00:00
qmath.h Fix the logic which determines if the destination Q variable can represent the source Q variable's value with full accuracy. 2024-04-02 17:16:00 +11:00
queue.h sys/queue.h: use reserved identifiers with the file scope for locals 2025-05-07 01:17:23 +03:00
queue_mergesort.h Add <sys/queue_mergesort.h> 2023-08-19 22:04:55 -07:00
racct.h sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
random.h sys: protect the kernel build from accidental _FORTIFY_SOURCE 2025-04-11 20:53:27 -05:00
rangelock.h rangelocks: stop caching per-thread rl_q_entry 2024-08-30 00:32:48 +03:00
rangeset.h rangeset: speed up range traversal 2024-09-09 16:50:14 -05:00
rctl.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
reboot.h cons: Add boot option to mute boot messages after banner 2024-04-30 16:23:47 -04:00
refcount.h refcount: Constify refcount_load() 2024-12-16 15:42:26 +01:00
reg.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
regression.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
resource.h Userspace enablement for getrlimitusage(2) 2024-09-27 18:02:09 +03:00
resourcevar.h kernel: add RLIMIT_PIPEBUF 2024-09-20 09:46:06 +03:00
rman.h kern/rman: mark rman get functions as taking constants 2024-05-21 17:52:29 -06:00
rmlock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rtprio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
runq.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
rwlock.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sbuf.h Remove my middle name. 2023-08-17 15:08:30 +02:00
sched.h sched_unpin(): assert that curthread was pinned 2024-06-26 10:04:10 +03:00
sdt.h netinet: default mib counter probe points off 2024-11-20 09:52:48 +01:00
select.h sys: protect the kernel build from accidental _FORTIFY_SOURCE 2025-04-11 20:53:27 -05:00
selinfo.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
sem.h sysv ipc: remove {msg,sem,shm}sys() declerations 2024-08-02 18:57:16 +01:00
sema.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
seqc.h atomics: Constify loads: Remove now superfluous uses of DECONST() 2025-01-20 16:49:52 +01:00
serial.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sf_buf.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sglist.h sys: Avoid relying on pollution from refcount.h 2024-11-05 18:22:20 +00:00
shm.h sysvshm: add shmobjinfo() function to find key/seq of the segment backed by obj 2024-10-07 11:22:12 +03:00
sigio.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
signal.h posix: POSIX-1.2008 moved SA_* from XSI to base standard 2024-05-10 09:20:21 -06:00
signalvar.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
sleepqueue.h sleepqueue: Remove kernel stack swapping support, part 10 2024-07-29 01:43:59 +00:00
slicer.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
smp.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
smr.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
smr_types.h smr: Load to accept pointers to const pointers 2025-01-20 16:49:52 +01:00
sndstat.h sound: Export hardware and software buffer sample rate in sndstat nvlist 2025-04-25 18:55:38 +02:00
snoop.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sockbuf.h unix: new implementation of unix/stream & unix/seqpacket 2025-05-05 12:56:04 -07:00
socket.h sys: protect the kernel build from accidental _FORTIFY_SOURCE 2025-04-11 20:53:27 -05:00
socketvar.h file: Qualify pointers to capsicum rights as const 2025-05-20 20:19:30 +00:00
sockio.h sys: add MBM device ioctl() values 2025-01-20 23:44:03 +00:00
sockopt.h socket: Make the sopt_rights field a pointer to const 2024-08-12 22:53:26 +00:00
soundcard.h sound: Implement AFMT_FLOAT support 2025-03-30 19:45:38 +02:00
specialfd.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
spigenio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
splash.h splash: Add sys/types.h 2024-07-11 09:36:05 +02:00
stack.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stat.h stat(2): add st_bsdflags field 2025-04-03 17:45:05 +03:00
stats.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
statvfs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stdatomic.h stdatomic: Only use clang atomics if __clang__ is defined 2024-07-19 13:05:52 -04:00
stddef.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
stdint.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
sx.h sx: avoid gcc -Wunused-value 2024-07-09 11:43:57 -07:00
syscall.h sysent: regen for deletion of gssd_syscall and new ABI for rpctls_syscall 2025-02-01 01:00:28 -08:00
syscall.mk sysent: regen for deletion of gssd_syscall and new ABI for rpctls_syscall 2025-02-01 01:00:28 -08:00
syscallsubr.h New setcred() system call and associated MAC hooks 2024-12-16 15:42:39 +01:00
sysctl.h sysctl(9): Ease exporting struct sizes; Discourage doing that 2025-05-07 12:13:40 +02:00
sysent.h sysent: Add sv_protect 2023-11-10 09:57:45 +00:00
syslimits.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
syslog.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
sysproto.h sysent: regen for deletion of gssd_syscall and new ABI for rpctls_syscall 2025-02-01 01:00:28 -08:00
systm.h sys/cdefs.h: add __nodiscard annotation 2025-05-09 23:50:23 +01:00
taskqueue.h new-bus: Add taskqueue_bus to process hot-plug device events 2025-03-10 13:32:23 -04:00
terminal.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
termios.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
thr.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tiio.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tim_filter.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
time.h stand: Don't need sys/select.h 2024-11-19 20:35:04 -07:00
timeb.h libutil: move ftime to libutil 2024-05-29 14:36:09 +02:00
timeet.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
timeffc.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
timepps.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
timerfd.h timerfd: Move kern_timerfd_* prototypes to <sys/syscallsubr.h> 2024-01-31 09:30:12 -08:00
timers.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
times.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
timespec.h sys/sys: Remove some more vestiges of the $FreeBSD$ 2023-11-29 01:03:56 +02:00
timetc.h clock: Add a long ticks variable, ticksl 2025-01-10 15:42:59 +00:00
timex.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tree.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
tslog.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
tty.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ttycom.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ttydefaults.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
ttydevsw.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ttydisc.h kern: tty: recanonicalize the buffer on ICANON/VEOF/VEOL changes 2024-01-15 20:55:59 -06:00
ttyhook.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ttyqueue.h kern: tty: recanonicalize the buffer on ICANON/VEOF/VEOL changes 2024-01-15 20:55:59 -06:00
turnstile.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
types.h stand: Don't need sys/select.h 2024-11-19 20:35:04 -07:00
ucontext.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ucred.h cred: fix struct credbatch to use long for refcount 2025-03-29 15:09:15 -07:00
uio.h uio: provide uioadvance() 2025-04-30 14:23:25 -07:00
umtx.h libthr: move _umtx_op_err() to libsys 2024-02-05 20:34:56 +00:00
umtxvar.h umtx: Add a helper for unlocked umtxq_busy() calls 2025-02-24 21:34:51 +00:00
un.h unix: retire LOCAL_CONNWAIT 2024-02-08 09:00:41 -08:00
unistd.h vfs_default.c: Add _PC_HAS_NAMEDATTR pathconf name 2025-05-04 15:11:06 -07:00
unpcb.h unix: Add support for atomically setting the socket mode 2024-11-03 16:46:53 +00:00
user.h struct kinfo_knote: add spare fields 2025-03-24 04:24:14 +02:00
utsname.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
uuid.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vdso.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
vmem.h sys: Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:24 -06:00
vmmeter.h vm_meter: Add counter for NOFREE pages 2024-10-07 18:46:32 +02:00
vnode.h vfs cache: Move hash row lookup loops into a subroutine 2025-05-03 00:04:32 +00:00
wait.h sys: Remove ancient SCCS tags. 2023-11-26 22:23:30 -07:00
watchdog.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00