freebsd-dev/contrib
Kyle Evans adeebf4cd4 regex(3): Interpret many escaped ordinary characters as EESCAPE
In IEEE 1003.1-2008 [1] and earlier revisions, BRE/ERE grammar allows for
any character to be escaped, but "ORD_CHAR preceded by an unescaped
<backslash> character [gives undefined results]".

Historically, we've interpreted an escaped ordinary character as the
ordinary character itself. This becomes problematic when some extensions
give special meanings to an otherwise ordinary character
(e.g. GNU's \b, \s, \w), meaning we may have two different valid
interpretations of the same sequence.

To make this easier to deal with and given that the standard calls this
undefined, we should throw an error (EESCAPE) if we run into this scenario
to ease transition into a state where some escaped ordinaries are blessed
with a special meaning -- it will either error out or have extended
behavior, rather than have two entirely different versions of undefined
behavior that leave the consumer of regex(3) guessing as to what behavior
will be used or leaving them with false impressions.

This change bumps the symbol version of regcomp to FBSD_1.6 and provides the
old escape semantics for legacy applications, just in case one has an older
application that would immediately turn into a pumpkin because of an
extraneous escape that's embedded or otherwise critical to its operation.

This is the final piece needed before enhancing libregex with GNU extensions
and flipping the switch on bsdgrep.

[1] http://pubs.opengroup.org/onlinepubs/9699919799.2016edition/

PR:		229925 (exp-run, courtesy of antoine)
Differential Revision:	https://reviews.freebsd.org/D10510
2020-07-29 23:21:56 +00:00
..
apr Update apr to 1.7.0. See contrib/apr/CHANGES for a summary of changes. 2020-05-31 22:12:56 +00:00
apr-util Update apr-util to 1.6.1. See contrib/apr-util/CHANGES for a summary of 2020-06-01 10:14:45 +00:00
atf
bc [bc] Fix a "maybe uninitialized" compiler warning under mips-gcc-6.3.0. 2020-07-14 05:02:18 +00:00
bearssl
binutils GNU as: move deprecation message after option parsing 2020-05-18 16:07:14 +00:00
blacklist blacklistd.conf.5: typo/grammar fixes 2020-05-19 00:15:19 +00:00
bmake Update to bmake-20200710 2020-07-12 01:11:48 +00:00
bsnmp Fix immediate crash when snmpd is bound to a specific IP address. 2020-04-20 23:32:49 +00:00
byacc Remove a redundant file from test directory to unbreak yacc regression test. 2020-07-14 23:59:00 +00:00
bzip2
capsicum-test
com_err
cortex-strings
dialog
diff
dma
ee
elftoolchain libdwarf: Hide SHT_NOBITS sections. 2020-07-20 18:22:38 +00:00
expat
file Revert r362261, "Re-apply r333944 to unbreak ports" 2020-06-29 13:30:48 +00:00
flex [flex] Fix compilation issue under mips-gcc-6.4 2020-07-14 05:00:08 +00:00
gdb
gdtoa
googletest
hyperv/tools
ipfilter Continued ipfilter #ifdef cleanup. The r343701 log entry contains a 2020-07-29 19:36:24 +00:00
jemalloc Set LG_VADDR to 48 on RISC-V. 2020-05-04 17:16:30 +00:00
kyua Revert r359385-r359387 2020-03-29 02:40:03 +00:00
ldns Fix crash in drill(1) when IP has two subsequent dots 2020-06-22 23:13:14 +00:00
ldns-host
less
lib9p Import lib9p 7ddb1164407da19b9b1afb83df83ae65a71a9a66. 2020-05-14 19:57:52 +00:00
libarchive MFV r361280: 2020-05-20 20:58:48 +00:00
libbegemot
libc-pwcache pwcache.3: Explicitly document OOM condition 2020-05-05 17:55:45 +00:00
libc-vis
libcxxrt
libdivsufsort
libedit
libevent
libexecinfo
libgnuregex
libpcap
libucl
libxo
llvm-project Merge commit 065fc1eafe7c from llvm git (by Richard Smith): 2020-07-08 16:50:47 +00:00
lua
lutok Add liblutok a lightweight C++ API for lua. 2020-03-23 18:26:23 +00:00
mandoc Revert r362809: Mention FreeBSD in the HISTORY sections of apropos(1) and makewhatis(8). 2020-07-14 12:02:30 +00:00
mknod
mtree
ncurses
netbsd-tests regex(3): Interpret many escaped ordinary characters as EESCAPE 2020-07-29 23:21:56 +00:00
netcat Adjust .Dd, missed in r363084. 2020-07-10 19:58:07 +00:00
ngatm
ntp MFV r362565: 2020-06-24 01:51:05 +00:00
nvi Revert r362148. 2020-06-22 22:59:03 +00:00
ofed Fix style in r363220 2020-07-15 13:26:15 +00:00
one-true-awk
openbsm Fixup some incorrect information and some comments. These changes 2020-07-28 20:06:16 +00:00
opencsd/decoder Update opencsd to 0.14.2 2020-06-17 10:42:20 +00:00
openpam
openresolv
opie
pam_modules/pam_passwdqc
pf
pjdfstest
pnpinfo
processor-trace
sendmail Merge sendmail 8.16.1 to HEAD: See contrib/sendmail/RELEASE_NOTES for details 2020-07-15 18:28:54 +00:00
serf
smbfs
sqlite3 MFV r362990: 2020-07-07 19:09:38 +00:00
subversion Update Subversion to 1.14.0 LTS. See contrib/subversion/CHANGES for a 2020-06-01 10:27:05 +00:00
tcp_wrappers
tcpdump Revert r362466 2020-06-22 07:46:24 +00:00
tcsh MFV r359393: tcsh: import 6974bc35a5cd 2020-03-28 15:00:55 +00:00
telnet telnet: kill off remaining duplicate definition 2020-03-28 20:43:15 +00:00
tnftp
traceroute
tzcode ctime(3): Bump .Dd after r362165 2020-06-17 11:57:48 +00:00
tzdata Import tzdata 2020a 2020-04-24 05:05:58 +00:00
unbound MFV r361322: 2020-05-21 21:00:46 +00:00
unvis
vis
wpa Post CVE-2020-12695 cleanup patch: 2020-06-09 05:43:51 +00:00
xz liblzma: Make liblzma use libmd implementation of SHA256. 2020-06-20 21:32:07 +00:00