HardenedBSD src tree
Go to file
Kyle Evans 522083ffbd kern: tty: recanonicalize the buffer on ICANON/VEOF/VEOL changes
Before this change, we would canonicalize any partial input if the new
local mode is not ICANON, but that's about it.  If we were switching
from -ICANON -> ICANON, or if VEOF/VEOL changes, then our internal canon
accounting would be wrong.

The main consequence of this is that in ICANON mode, we would
potentially hang a read(2) longer if the new VEOF/VEOL appears later in
the buffer, and FIONREAD would be similarly wrong as a result.

Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D43456
2024-01-15 20:55:59 -06:00
.cirrus-ci
.github GitHub: style: Add the synchronize activity type 2024-01-15 17:58:31 -07:00
bin Fix "version introduced" in numerous manual pages 2024-01-08 11:35:16 -05:00
cddl dtrace tests: Diff expected and actual output upon a miscompare 2024-01-10 18:19:36 -05:00
contrib Update to bmake-20240108 2024-01-13 17:31:01 -08:00
crypto Revert "kerberos: Fix numerous segfaults when using weak crypto" 2024-01-11 23:42:33 -08:00
etc crashinfo: Print stack traces for all on-CPU threads 2024-01-15 16:36:40 -05:00
gnu
include resolv: Add a required include to resolv.h 2024-01-08 20:52:08 +09:00
kerberos5 Revert "kerberos: Fix numerous segfaults when using weak crypto" 2024-01-11 23:42:33 -08:00
lib libc: stop exposing __fcntl_compat 2024-01-13 00:01:13 +00:00
libexec crashinfo: Print stack traces for all on-CPU threads 2024-01-15 16:36:40 -05:00
release Increase the size of riscv GENERICSD images to 6 GB 2024-01-15 07:28:53 -06:00
rescue
sbin route: error on IPv4 network routes with incorrect destination 2024-01-15 15:14:54 -06:00
secure ssh: Update to OpenSSH 9.6p1 2024-01-04 22:16:30 -05:00
share snd_hdspe(4): One pcm device per physical ADAT port. 2024-01-15 10:26:41 +00:00
stand
sys kern: tty: recanonicalize the buffer on ICANON/VEOF/VEOL changes 2024-01-15 20:55:59 -06:00
targets
tests fusefs: more consistent operand ordering in io.cc 2024-01-15 16:16:40 -07:00
tools checkstyle9.pl: Soften the single line braces requirement 2024-01-15 17:57:28 -07:00
usr.bin find: Allow '/' to be used with -perm for GNU compatibility 2024-01-15 11:47:24 -07:00
usr.sbin mptable: improve error reporting for invalid commands 2024-01-15 17:57:28 -07:00
.arcconfig
.arclint
.cirrus.yml
.clang-format
.git-blame-ignore-revs
.gitattributes
.gitignore
.mailmap mailmap: Translate olce's personal address to olce@FreeBSD.org 2024-01-04 15:59:01 +01:00
CONTRIBUTING.md
COPYRIGHT
LOCKS
MAINTAINERS MAINTAINERS: Add myself for nvme entries, remove jimharris 2024-01-12 12:12:15 -07:00
Makefile Makefile: Deorbit fmake support 2024-01-03 12:13:26 -07:00
Makefile.inc1 build: Use ls -i | cut rather than stat -f %i to extract inode 2024-01-14 19:23:45 -07:00
Makefile.libcompat
Makefile.sys.inc
ObsoleteFiles.inc geom_map(4): Garbage collect disconnected driver 2024-01-14 22:22:21 +01:00
README.md
RELNOTES
UPDATING UPDATING: Add an entry for the __FreeBSD_version bump to 1500010 2024-01-11 16:53:46 -08:00

FreeBSD Source:

This is the top level of the FreeBSD source directory.

FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms. A large community has continually developed it for more than thirty years. Its advanced networking, security, and storage features have made FreeBSD the platform of choice for many of the busiest web sites and most pervasive embedded networking and storage devices.

For copyright information, please see the file COPYRIGHT in this directory. Additional copyright information also exists for some sources in this tree - please see the specific source directories for more information.

The Makefile in this directory supports a number of targets for building components (or all) of the FreeBSD source tree. See build(7), config(8), FreeBSD handbook on building userland, and Handbook for kernels for more information, including setting make(1) variables.

For information on the CPU architectures and platforms supported by FreeBSD, see the FreeBSD website's Platforms page.

Source Roadmap:

Directory Description
bin System/user commands.
cddl Various commands and libraries under the Common Development and Distribution License.
contrib Packages contributed by 3rd parties.
crypto Cryptography stuff (see crypto/README).
etc Template files for /etc.
gnu Commands and libraries under the GNU General Public License (GPL) or Lesser General Public License (LGPL). Please see gnu/COPYING and gnu/COPYING.LIB for more information.
include System include files.
kerberos5 Kerberos5 (Heimdal) package.
lib System libraries.
libexec System daemons.
release Release building Makefile & associated tools.
rescue Build system for statically linked /rescue utilities.
sbin System commands.
secure Cryptographic libraries and commands.
share Shared resources.
stand Boot loader sources.
sys Kernel sources (see sys/README.md).
targets Support for experimental DIRDEPS_BUILD
tests Regression tests which can be run by Kyua. See tests/README for additional information.
tools Utilities for regression testing and miscellaneous tasks.
usr.bin User commands.
usr.sbin System administration commands.

For information on synchronizing your source tree with one or more of the FreeBSD Project's development branches, please see FreeBSD Handbook.