freebsd kernel with SKQ
Go to file
Yuri Pankov 547bc083d6 regcomp: reduce size of bitmap for multibyte locales
This fixes the obscure endless loop seen with case-insensitive
patterns containing characters in 128-255 range;  originally
found running GNU grep test suite.

Our regex implementation being kludgy translates the characters
in case-insensitive pattern to bracket expression containing both
cases for the character and doesn't correctly handle the case when
original character is in bitmap and the other case is not, falling
into the endless loop going through in p_bracket(), ordinary(),
and bothcases().

Reducing the bitmap to 0-127 range for multibyte locales solves this
as none of these characters have other case mapping outside of bitmap.
We are also safe in the case when the original character outside of
bitmap has other case mapping in the bitmap (there are several of those
in our current ctype maps having unidirectional mapping into bitmap).

Reviewed by:	bapt, kevans, pfg
Differential revision:	https://reviews.freebsd.org/D18302
2018-12-12 04:23:00 +00:00
bin sh(1): Remove -c string from set builtin documentation 2018-12-08 12:49:19 +00:00
cddl dtrace(1): remove reference to dtruss that was removed from base 2018-10-31 15:29:26 +00:00
contrib Merge ^/head r340918 through r341763. 2018-12-09 11:39:45 +00:00
crypto Merge OpenSSL 1.1.1a. 2018-11-20 21:10:04 +00:00
etc Merge ^/head r340918 through r341763. 2018-12-09 11:39:45 +00:00
gnu Do not install GNU ld if lld is /usr/bin/ld 2018-11-26 17:07:35 +00:00
include Vendor import of clang release_70 branch r348686: 2018-12-08 14:31:58 +00:00
kerberos5 Update the existing heimdal implementation for OpenSSL 1.1. 2018-10-05 16:35:24 +00:00
lib regcomp: reduce size of bitmap for multibyte locales 2018-12-12 04:23:00 +00:00
libexec rc.subr: Implement list_vars without using 'read' 2018-12-11 01:38:50 +00:00
release mkisoimages.sh: don't use -p flag when copying loader.efi to msdosfs. 2018-12-03 22:31:57 +00:00
rescue rescue: set NO_SHARED in Makefile 2018-11-19 22:18:18 +00:00
sbin Use Capsicum helpers in ping(8). 2018-12-12 02:33:01 +00:00
secure Merge OpenSSL 1.1.1a. 2018-11-20 21:10:04 +00:00
share Merge ^/head r341764 through r341812. 2018-12-11 06:47:04 +00:00
stand powerpc/ubldr: Teach powerpc's ubldr to boot 64-bit kernels 2018-12-10 01:52:39 +00:00
sys Continuing efforts to provide hardening of FFS. This change adds a 2018-12-11 22:14:37 +00:00
targets retire LINKER_FEATURES filter flag 2018-11-12 20:44:22 +00:00
tests pf tests: Use the ATF cleanup infrastructure in the ioctl tests 2018-12-11 21:49:13 +00:00
tools Remove a dead file. CVS was removed in r251794. 2018-12-11 21:16:09 +00:00
usr.bin Merge ^/head r341764 through r341812. 2018-12-11 06:47:04 +00:00
usr.sbin Allow CTL device specification in bhyve virtio-scsi. 2018-12-11 20:47:00 +00:00
.arcconfig callsign isn't required anymore 2016-09-29 06:19:45 +00:00
.arclint arc lint: ignore /tests/ in chmod 2017-12-19 03:38:06 +00:00
.gitattributes sfxge(4): fix incorrectly set svn properties 2018-11-26 07:30:47 +00:00
.gitignore Ignore _.universe-toolchain file. 2018-07-01 13:50:37 +00:00
COPYRIGHT Remove 'All Rights Reserved' from the collection copyright and templates. 2018-05-09 02:02:49 +00:00
LOCKS LOCKS: update current locks 2018-06-09 03:08:04 +00:00
MAINTAINERS Add pointer to freebsd-numerics for libm. 2018-07-16 15:29:32 +00:00
Makefile Update comment about 'universe' disk usage 2018-11-10 19:09:48 +00:00
Makefile.inc1 Clean stale wpa dependencies and objects after r341759 2018-12-10 14:50:11 +00:00
Makefile.libcompat Use ...-freebsd13.0 in -target strings. 2018-11-12 16:55:20 +00:00
Makefile.sys.inc AUTO_OBJ: For all top-level targets enforce using an OBJDIR. 2017-12-05 21:29:47 +00:00
ObsoleteFiles.inc Set tentative merge date, and add UPDATING note. 2018-12-11 17:39:49 +00:00
README Import wpa_supplicant/hostapd 2.7 2018-12-06 05:04:28 +00:00
README.md README: add generic notes about GENERIC and NOTES 2018-06-17 19:44:24 +00:00
UPDATING Set tentative merge date, and add UPDATING note. 2018-12-11 17:39:49 +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