freebsd-nq/sys/kern
John Baldwin b7f27a60ac Add Chacha20-Poly1305 as a KTLS cipher suite.
Chacha20-Poly1305 for TLS is an AEAD cipher suite for both TLS 1.2 and
TLS 1.3 (RFCs 7905 and 8446).  For both versions, Chacha20 uses the
server and client IVs as implicit nonces xored with the record
sequence number to generate the per-record nonce matching the
construction used with AES-GCM for TLS 1.3.

Reviewed by:	gallatin
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D27839

(cherry picked from commit 9c64fc4029)
2021-11-23 15:11:44 -08:00
..
bus_if.m Remove trailing white space. 2020-02-26 16:22:28 +00:00
capabilities.conf Add aio_writev and aio_readv 2021-01-02 19:57:58 -07:00
clock_if.m
cpufreq_if.m
device_if.m
firmw.S Use a template assembly file for firmware object files. 2020-12-17 20:31:17 +00:00
genassym.sh genassym.sh: Fix two minor issues found by shellcheck 2021-09-12 09:56:14 -06:00
genoffset.c Merge td_epochnest with td_no_sleeping. 2019-10-29 17:28:25 +00:00
genoffset.sh genoffset.sh: Use 10 X's instead of 5 for pick mkdtemp implementations 2021-09-22 08:29:59 -06:00
imgact_aout.c Do not call FreeBSD-ABI specific code for all ABIs 2021-07-22 01:11:52 +03:00
imgact_binmisc.c imgact_binmisc: limit the extent of match on incoming entries 2020-11-08 04:24:29 +00:00
imgact_elf32.c
imgact_elf64.c
imgact_elf.c Make core dump writes interruptible with SIGKILL 2021-10-10 12:22:58 +03:00
imgact_shell.c
init_main.c start_init: use 'p' 2021-11-18 02:32:32 +02:00
init_sysent.c Regen 2021-08-03 12:52:36 +03:00
kern_acct.c acct: Zero pad bytes in accounting records 2021-07-29 20:32:58 -04:00
kern_alq.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_clock.c clock: Group the "clocks" SYSINIT with the function definition 2021-11-22 08:45:47 -05:00
kern_clocksource.c
kern_condvar.c Use sleepq_signal(SLEEPQ_DROP) in cv_signal(). 2021-07-17 18:10:25 -04:00
kern_conf.c Fix handling of D_GIANTOK 2021-06-14 16:25:15 -04:00
kern_cons.c sysbeep: Adjust interface to take a duration as a sbt 2021-11-18 21:52:22 -07:00
kern_context.c
kern_cpu.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_cpuset.c domainset: Define additional global policies 2021-04-28 10:00:36 -04:00
kern_ctf.c kern_ctf: Use zlib's uncompress function for simpler code. 2021-10-10 10:08:53 -07:00
kern_descrip.c fexecve(2): allow O_PATH file descriptors opened without O_EXEC 2021-11-06 04:12:33 +02:00
kern_dtrace.c dtrace: stop using eventhandlers for the part compiled into the kernel 2020-11-23 18:27:21 +00:00
kern_dump.c minidump: De-duplicate the progress bar 2021-10-15 12:20:48 -03:00
kern_environment.c kenv: allow listing of static kernel environments 2021-08-26 01:35:33 -05:00
kern_et.c Remove NO_EVENTTIMERS support 2020-11-19 02:50:48 +00:00
kern_event.c kqueue: don't arbitrarily restrict long-past values for NOTE_ABSTIME 2021-10-06 02:03:53 -05:00
kern_exec.c fexecve(2): allow O_PATH file descriptors opened without O_EXEC 2021-11-06 04:12:33 +02:00
kern_exit.c exec: store parent directory and hardlink name of the binary in struct proc 2021-11-06 04:12:32 +02:00
kern_fail.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_ffclock.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_fork.c exec: store parent directory and hardlink name of the binary in struct proc 2021-11-06 04:12:32 +02:00
kern_hhook.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
kern_idle.c
kern_intr.c Mark some sysctls as CTLFLAG_MPSAFE. 2021-08-24 21:53:18 -04:00
kern_jail.c jail(8): Fix a few common typos in source code comments 2021-10-30 09:48:43 +02:00
kern_kcov.c Generalize bus_space(9) and atomic(9) sanitizer interceptors 2021-11-01 10:16:39 -04:00
kern_khelp.c
kern_kthread.c Set TDP_KTHREAD before calling cpu_fork() and cpu_copy_thread(). 2021-03-29 11:10:54 -07:00
kern_ktr.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_ktrace.c ktrace: Zero request structures when populating the pool 2021-07-29 20:32:59 -04:00
kern_linker.c link_elf_obj: Invoke fini callbacks 2021-08-12 09:43:41 -04:00
kern_lock.c lockmgr: fix lock profiling of face adaptive spinning 2021-10-11 09:09:55 +00:00
kern_lockf.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_lockstat.c Add lockmgr(9) probes to the lockstat DTrace provider. 2019-08-21 23:43:58 +00:00
kern_loginclass.c Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
kern_malloc.c realloc: Fix KASAN(9) shadow map updates 2021-11-01 10:05:22 -04:00
kern_mbuf.c Convert vm_page_alloc() callers to use vm_page_alloc_noobj(). 2021-11-03 13:39:36 -04:00
kern_mib.c jail: Consistently handle the pr_allow bitmask 2020-12-26 20:25:02 -08:00
kern_module.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_mtxpool.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
kern_mutex.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-16 21:40:15 -04:00
kern_ntptime.c Add kern_ntp_adjtime(9). 2020-12-04 18:56:44 +00:00
kern_osd.c osd: Fix racy assertions 2021-09-16 08:37:15 -04:00
kern_physio.c Remove alignment requirements for KVA buffer mapping. 2020-11-29 01:30:17 +00:00
kern_pmc.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
kern_poll.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_priv.c jail: Consistently handle the pr_allow bitmask 2020-12-26 20:25:02 -08:00
kern_proc.c proc_get_binpath(): provide syntaxically correct value for unused NDINIT arg 2021-11-06 04:12:32 +02:00
kern_procctl.c procctl: stop using SA_*LOCKED, define local enum 2021-10-26 05:26:27 +03:00
kern_prot.c kern: fail getgroup and setgroup with negative int 2021-07-07 14:09:44 -06:00
kern_racct.c Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
kern_rangelock.c rangelock: add rangelock_cookie_assert 2019-09-15 02:59:53 +00:00
kern_rctl.c rctl(4): support throttling resource usage to 0 2021-01-11 15:36:57 -08:00
kern_resource.c vm_map_protect: allow to set prot and max_prot in one go. 2021-01-13 01:35:22 +02:00
kern_rmlock.c rmslock: Update td_locks during lock and unlock operations 2021-11-03 09:15:05 -04:00
kern_rwlock.c lockprof: pass lock type as an argument instead of reading the spin flag 2021-06-02 15:00:23 +00:00
kern_sdt.c
kern_sema.c
kern_sendfile.c socket: Rename sb(un)lock() and interlock with listen(2) 2021-10-07 09:56:47 -04:00
kern_sharedpage.c random(4) FenestrasX: Push root seed version to arc4random(3) 2020-10-10 21:52:00 +00:00
kern_shutdown.c boot(9): update to match reality 2021-10-04 11:11:06 -03:00
kern_sig.c signal: Add SIG_FOREACH and refactor issignal() 2021-11-01 09:20:11 -04:00
kern_switch.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
kern_sx.c lockprof: pass lock type as an argument instead of reading the spin flag 2021-06-02 15:00:23 +00:00
kern_synch.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-16 21:40:15 -04:00
kern_syscalls.c Move syscall_thread_{enter,exit}() into the slow path. This is only 2020-11-08 15:54:59 +00:00
kern_sysctl.c Escape any '.' characters in sysctl node names 2021-08-22 21:11:00 +00:00
kern_tc.c timecounter: Initialize tc_lock earlier 2021-11-22 08:44:49 -05:00
kern_thr.c Provide ABI modules hooks for process exec/exit and thread exit. 2020-11-23 17:29:25 +00:00
kern_thread.c amd64: eliminate td_md.md_fpu_scratch 2021-10-10 12:21:17 +03:00
kern_time.c itimer: Serialize access to the p_itimers array 2021-09-07 09:36:19 -04:00
kern_timeout.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-16 21:40:15 -04:00
kern_tslog.c
kern_ubsan.c ubsan: Fix a typo in an error message 2021-10-02 10:21:01 +02:00
kern_umtx.c Revert most of ce42e79310 2021-08-03 12:52:36 +03:00
kern_uuid.c validate_uuid: absorb the rest of parse_uuid with a flags arg 2020-04-15 18:39:12 +00:00
kern_xxx.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
ksched.c
link_elf_obj.c Kernel linkers: some style 2021-11-21 02:27:44 +02:00
link_elf.c Kernel linkers: some style 2021-11-21 02:27:44 +02:00
linker_if.m
Make.tags.inc Bring the tags and links entries for amd64 up to date. 2021-10-07 16:01:46 -07:00
Makefile sys/kern sysent: re-add dependency on capabilities.conf 2020-02-12 19:06:34 +00:00
md4c.c
md5c.c
msi_if.m o Add iommu de-initialization method for MSI interface. 2020-10-24 20:09:27 +00:00
p1003_1b.c
pic_if.m
posix4_mib.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
sched_4bsd.c lockprof: pass lock type as an argument instead of reading the spin flag 2021-06-02 15:00:23 +00:00
sched_ule.c sched_ule(4): Fix possible significance loss. 2021-10-21 18:24:36 -04:00
serdev_if.m
stack_protector.c Revert r346292 (permit_nonrandom_stackcookies) 2019-05-13 23:37:44 +00:00
subr_acl_nfs4.c Drop "All rights reserved" from all my stuff. This includes 2020-10-28 13:46:11 +00:00
subr_acl_posix1e.c vfs: remove the obsolete privused argument from vaccess 2020-08-05 09:27:03 +00:00
subr_asan.c kasan: Use vm_offset_t for the first parameter to kasan_shadow_map() 2021-11-02 18:17:58 -04:00
subr_atomic64.c emulated atomic64: disable interrupts as the lock mechanism on !SMP 2020-01-03 18:29:20 +00:00
subr_autoconf.c config_intrhook: provide config_intrhook_drain 2021-07-12 13:30:55 -06:00
subr_blist.c blist: Correct the node count computed in blist_create() 2021-07-26 21:47:20 -04:00
subr_boot.c When parsing command line stuff, treat tabs and spaces the same. 2019-04-18 22:52:12 +00:00
subr_bufring.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_bus_dma.c crypto: Add a new type of crypto buffer for a single mbuf. 2021-10-21 08:51:26 -07:00
subr_bus.c Fix false device_set_unit() error. 2021-09-28 20:44:29 -04:00
subr_busdma_bufalloc.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_capability.c Remove unused SYSINIT macros for capability rights. 2020-03-26 15:02:37 +00:00
subr_clock.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
subr_compressor.c clamp kernel dump compression level when using gzip 2020-02-20 23:53:48 +00:00
subr_counter.c Rationalize per-cpu zones. 2020-11-05 15:08:56 +00:00
subr_coverage.c Generalize bus_space(9) and atomic(9) sanitizer interceptors 2021-11-01 10:16:39 -04:00
subr_csan.c Generalize sanitizer interceptors for memory and string routines 2021-11-01 10:20:50 -04:00
subr_devmap.c riscv: Implement pmap_mapdev_attr 2021-10-24 19:51:10 +01:00
subr_devstat.c Speed up geom_stats_resync in the presence of many devices 2021-03-21 02:23:42 +00:00
subr_disk.c Enable bioq 'car limit' added at r335066 at 128 bios. 2020-10-26 04:04:06 +00:00
subr_dummy_vdso_tc.c
subr_early.c
subr_epoch.c The old thread priority must be stored as part of the EPOCH(9) tracker. 2021-06-02 14:03:21 +02:00
subr_eventhandler.c Include ktr.h in more compilation units 2019-05-21 20:38:48 +00:00
subr_fattime.c Remove duplicated empty lines from kern/*.c 2020-01-30 20:05:05 +00:00
subr_filter.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_firmware.c subr_firmware.c::unloadentry(): remove write-only variable 2021-10-27 03:24:40 +03:00
subr_gtaskqueue.c Make sure all tasklets are drained before unloading the LinuxKPI. 2021-06-02 13:23:19 +02:00
subr_hash.c
subr_hints.c Optimize res_find(). 2021-08-22 21:15:47 -04:00
subr_intr.c kern/intr: declare interrupt vectors unsigned 2021-05-10 09:36:20 -04:00
subr_kdb.c kdb: Handle process enumeration before procinit() 2021-08-30 12:55:40 -03:00
subr_kobj.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_lock.c lockprof: move panic check after inspecting the state 2021-06-02 15:00:23 +00:00
subr_log.c Document kern.log_wakeups_per_second. 2021-10-19 16:53:26 -07:00
subr_mchain.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_module.c sysctl debug.dump_modinfo should recognize font module 2021-01-08 09:24:49 +02:00
subr_msgbuf.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_param.c Make MAXPHYS tunable. Bump MAXPHYS to 1M. 2020-11-28 12:12:51 +00:00
subr_pcpu.c Add more per-cpu zones. 2020-11-09 00:34:23 +00:00
subr_pctrie.c Use SMR to provide safe unlocked lookup for pctries from SMR zones 2020-07-24 17:32:10 +00:00
subr_physmem.c Add support for hw.physmem tunable for ARM/ARM64/RISC-V platforms 2020-12-03 05:39:27 +00:00
subr_pidctrl.c
subr_power.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_prf.c Unify console output. 2021-10-03 21:15:03 -04:00
subr_prng.c Add prng(9) API 2020-08-13 20:48:14 +00:00
subr_prof.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
subr_rangeset.c Implement rangesets. 2019-02-20 09:38:19 +00:00
subr_rman.c rman: fix overflow in rman_reserve_resource_bound() 2021-10-04 11:11:06 -03:00
subr_rtc.c Address whitespace nits in subr_rtc.c 2020-09-28 17:19:57 +00:00
subr_sbuf.c sbuf(9): Microoptimize sbuf_put_byte() 2021-10-21 18:24:29 -04:00
subr_scanf.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_sfbuf.c
subr_sglist.c sglist: Add sglist_append_single_mbuf(). 2021-10-21 08:51:26 -07:00
subr_sleepqueue.c sleepqueue(9): Remove sbinuptime() from sleepq_timeout(). 2021-11-01 20:24:07 -04:00
subr_smp.c Refactor/optimize cpu_search_*(). 2021-08-27 22:17:55 -04:00
subr_smr.c Use COUNTER_U64_DEFINE_EARLY() in places where it simplifies things. 2020-03-06 19:10:00 +00:00
subr_stack.c kern.tty_info_kstacks: add a compact format 2020-07-06 16:33:28 +00:00
subr_stats.c stats(3): Improve t-digest merging of samples which result in mu adjustment underflow. 2021-04-02 13:29:55 +11:00
subr_syscall.c Allow some VOPs to return ERELOOKUP to indicate VFS operation restart at top level. 2020-11-13 09:42:32 +00:00
subr_taskqueue.c callout(9): Allow spin locks use with callout_init_mtx(). 2021-09-16 21:40:15 -04:00
subr_terminal.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_trap.c kqueue: drain kqueue taskqueue if syscall tickled it 2021-09-12 15:17:27 +03:00
subr_turnstile.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_uio.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_unit.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
subr_vmem.c vmem: Revert r364744 2020-12-01 16:06:31 +00:00
subr_witness.c Remove more remnants of sio(4) 2021-04-14 09:19:49 -04:00
sys_capability.c Enter a write sequence when updating rights. 2020-03-19 15:39:45 +00:00
sys_eventfd.c Expose eventfd in the native API/ABI using a new __specialfd syscall 2020-12-27 12:57:26 +02:00
sys_generic.c selsocket: handle sopoll() errors correctly 2021-10-20 00:19:57 +01:00
sys_getrandom.c Fix a typo in r356667 comment 2020-01-12 23:52:16 +00:00
sys_pipe.c pipe_paircreate(): do not leak pipepair memory on error 2021-08-19 14:21:56 +03:00
sys_procdesc.c procdesc: convert the zone to a malloc type 2020-11-09 00:05:21 +00:00
sys_process.c sys_process.c: extract ptrace_unsuspend() 2021-06-01 03:38:53 +03:00
sys_socket.c Stop creating socket aio kprocs during boot. 2021-11-23 15:11:43 -08:00
syscalls.c Regen 2021-08-03 12:52:36 +03:00
syscalls.master makesyscalls.lua: add a CAPENABLED flag 2021-10-20 00:19:56 +01:00
systrace_args.c Regen 2021-08-03 12:52:36 +03:00
sysv_ipc.c sysv: get rid of fork/exit hooks if the code is compiled in 2019-05-04 19:05:30 +00:00
sysv_msg.c MFC jail: Change the locking around pr_ref and pr_uref 2021-03-12 10:30:06 -08:00
sysv_sem.c MFC jail: Change the locking around pr_ref and pr_uref 2021-03-12 10:30:06 -08:00
sysv_shm.c MFC jail: Change the locking around pr_ref and pr_uref 2021-03-12 10:30:06 -08:00
tty_compat.c
tty_info.c kern.tty_info_kstacks: set compact format as default 2020-07-06 16:34:15 +00:00
tty_inq.c
tty_outq.c
tty_pts.c tty_pts: don't rely on tty header pollution for sys/mutex.h 2019-11-29 03:56:01 +00:00
tty_tty.c Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
tty_ttydisc.c Implement FLUSHO 2020-08-27 05:11:15 +00:00
tty.c Re-implement virtual console (constty). 2021-10-03 21:15:02 -04:00
uipc_accf.c Consistently use the SOLISTENING() macro 2021-06-21 09:14:40 -04:00
uipc_debug.c
uipc_domain.c net: Enter a net epoch around protocol if_up/down notifications 2021-09-17 09:13:09 -04:00
uipc_ktls.c Add Chacha20-Poly1305 as a KTLS cipher suite. 2021-11-23 15:11:44 -08:00
uipc_mbuf2.c m_pulldown(): Change an if () panic() into a KASSERT(). 2019-11-06 22:40:19 +00:00
uipc_mbuf.c Factor out flags preserved during mbuf demote into a separate define. 2021-11-12 15:33:54 +01:00
uipc_mbufhash.c Implement mbuf hashing routines for IP over infiniband, IPoIB. 2020-10-22 09:17:56 +00:00
uipc_mqueue.c MFC jail: Change the locking around pr_ref and pr_uref 2021-03-12 10:30:06 -08:00
uipc_sem.c Convert remaining cap_rights_init users to cap_rights_init_one 2021-01-12 13:16:10 +00:00
uipc_shm.c uipc_shm: silent warnings about write-only variables in largepage code 2021-10-27 03:24:41 +03:00
uipc_sockbuf.c socket: Rename sb(un)lock() and interlock with listen(2) 2021-10-07 09:56:47 -04:00
uipc_socket.c Rename m_unmappedtouio() to m_unmapped_uiomove(). 2021-10-21 08:51:26 -07:00
uipc_syscalls.c socket: Avoid clearing SS_ISCONNECTING if soconnect() fails 2021-10-07 09:57:27 -04:00
uipc_usrreq.c unix: Remove a write-only local variable 2021-11-23 09:32:46 -05:00
vfs_acl.c vfs: fix trivial whitespace issues which don't interefere with blame 2020-07-10 09:01:36 +00:00
vfs_aio.c aio_aqueue(): avoid ucred leak on failure path 2021-10-01 03:32:22 +03:00
vfs_bio.c getblk(): do not require devvp vnodes to be locked 2021-11-19 06:25:28 +02:00
vfs_cache.c Make vn_fullpath_hardlink() externally callable 2021-11-06 04:12:31 +02:00
vfs_cluster.c cluster_write(): do not access buffer after it is released 2021-09-09 04:21:44 +03:00
vfs_default.c vfs: add missing atomic conversion to writecount adjustment 2021-05-22 18:22:16 +00:00
vfs_export.c kern: clean up empty lines in .c and .h files 2020-09-01 22:12:32 +00:00
vfs_extattr.c O_PATH: allow vfs_extattr syscalls 2021-10-16 16:01:47 +03:00
vfs_hash.c vfs_hash_rehash(): require the vnode to be exclusively locked 2021-09-03 04:08:36 +03:00
vfs_init.c vfs: fix trivial whitespace issues which don't interefere with blame 2020-07-10 09:01:36 +00:00
vfs_lookup.c vfs: hoist cn_thread assert in namei 2021-10-11 09:13:35 +00:00
vfs_mount.c mount: Check for !VDIR mount points before handling -o emptydir 2021-10-19 20:53:33 -04:00
vfs_mountroot.c vfs: add missing VIRF_MOUNTPOINT in vfs_mountroot_shuffle 2021-10-11 09:10:20 +00:00
vfs_subr.c DEBUG_VFS_LOCKS: stop excluding devfs and doomed vnode from asserts 2021-11-19 06:25:29 +02:00
vfs_syscalls.c readlinkat(2): allow O_PATH fd 2021-10-10 12:22:58 +03:00
vfs_vnops.c vfs: Permit unix sockets to be opened with O_PATH 2021-10-17 17:15:44 -04:00
vnode_if.src Make locking assertions for VOP_FSYNC() and VOP_FDATASYNC() more correct 2021-11-19 06:25:29 +02:00