HardenedBSD src tree
Go to file
Brooks Davis 8bff61a6ba Reduce NL_ARGMAX to 4096 to match Linux.
NL_ARGMAX is the maximum number of positional arguments supported by
printf(3). Prior to r308145 it was declared as 99 and not enforced.
r308145 added enforcement and increased the value to 64k.

Unfortunately, development versions of PostgreSQL used the system
definition to allocate and zero an NL_ARGMAX * 4 sized array on the
stack of its snprintf implementation with measurable performance
impacts. This has been fixed in new PostgreSQL versions, but it is
possible that other programs suffer from this problem.

A value of 4096 puts us on par with Linux and is certainly large enough
for any reasonable program.

Reviewed by:	mjg
Reported by:	mjg
Approved by:	re (gjb)
Differential revision:	https://reviews.freebsd.org/D17387
Differential revision:	https://reviews.freebsd.org/D8286
2018-10-04 21:55:58 +00:00
bin dd(1): Correct padding in status=progress 2018-09-13 14:54:46 +00:00
cddl
contrib Remove invalid comments and correct some typos. 2018-10-04 05:57:27 +00:00
crypto openssh: rename local macro to avoid OpenSSL 1.1.1 conflict 2018-09-19 20:52:47 +00:00
etc Move hosts.allow to lib/libwrap/ 2018-09-22 13:17:30 +00:00
gnu Disable sbrk() use in GNU tools. 2018-09-21 17:44:05 +00:00
include Reduce NL_ARGMAX to 4096 to match Linux. 2018-10-04 21:55:58 +00:00
kerberos5
lib crt: switch to standard note type definitions from elf_common.h 2018-10-04 17:35:32 +00:00
libexec This commit reverts 338930. The approach was wrong. 2018-10-01 18:46:35 +00:00
release Fix the hardware.{txt,html} build in the release/Makefile 'reldoc' 2018-10-04 01:46:56 +00:00
rescue
sbin Add missing newline in pwarn message. 2018-10-02 13:45:25 +00:00
secure Move the openssl.cnf install to secure/usr.bin/openssl/ 2018-09-20 09:34:55 +00:00
share Set the default loader for powerpc64 back to to forth too. 2018-10-03 19:09:09 +00:00
stand Improve loader passwords: 2018-09-22 13:14:44 +00:00
sys amd64: hide non-erms jump label under non-erms copyin/copyout 2018-10-04 20:01:48 +00:00
targets
tests
tools Do not remove ld man page if lld is enabled and binutils is not 2018-09-25 18:54:18 +00:00
usr.bin top(1): Rework DESCRIPTION OF MEMORY section. 2018-10-02 08:13:54 +00:00
usr.sbin bsdinstall(8): Document ZFS installation scripting. 2018-10-04 09:28:40 +00:00
.arcconfig
.arclint
.gitattributes
.gitignore
COPYRIGHT
LOCKS
MAINTAINERS
Makefile
Makefile.inc1
Makefile.libcompat
Makefile.sys.inc
ObsoleteFiles.inc
README
README.md
UPDATING Use nda(4) on powerpc64 2018-10-02 21:36:00 +00:00

FreeBSD Source:

This is the top level of the FreeBSD source directory. This file was last revised on: FreeBSD

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), https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html, and https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html for more information, including setting make(1) variables.

Source Roadmap:

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		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* 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.

sys/<arch>/conf Kernel configuration files. GENERIC is the configuration
		used in release builds. NOTES contains documentation of
		all possible entries.

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:

https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/current-stable.html