From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from tarta.nabijaczleweli.xyz (unknown [139.28.40.42]) by sourceware.org (Postfix) with ESMTP id 459E63858C74 for ; Sun, 7 May 2023 22:56:13 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 459E63858C74 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=nabijaczleweli.xyz Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=nabijaczleweli.xyz Received: from tarta.nabijaczleweli.xyz (unknown [192.168.1.250]) by tarta.nabijaczleweli.xyz (Postfix) with ESMTPSA id B6E6178C4 for ; Mon, 8 May 2023 00:56:12 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=nabijaczleweli.xyz; s=202305; t=1683500172; bh=LoUwVeNXdK6SealT94YnfJkhfg9HbX1RqMHBEHyVfVg=; h=Date:From:Cc:Subject:References:In-Reply-To:From; b=a5XxYRqetDxQdkjUJzIKt3OswGObDy09WC0bzwvzLYxsU+pnpZvRHdmtx0cfC1IYU ZcE1KFL1h66VmezcRB/Pyf2b6z9i0W4RQipHGWQpwnqtnIoFfnGdXN7f4yLS7n8zEz BboAXQULCYjXKvIhKcIJ8V4Kqi7lk5GlFGPhPrN+69jjO96ax1xk6gwnDMs5OYfw0+ BHO0Hm7C0osyOiGCQBk90g3U2x8GN3fujoeTkIXCn/MjSO+LdfZIxy3TG5y69M9esq zlxWjy2Jt1U6xPa7w7EBJS0zCwfn1fwwsHAooc0NfCBGi+64pUL328yqLKXsy4ypln Kdnzt7QGKn/SQ== Date: Mon, 8 May 2023 00:56:11 +0200 From: =?utf-8?B?0L3QsNCx?= Cc: libc-alpha@sourceware.org Subject: [PATCH v4 2/3] posix: regcomp(): clear RE_DOT_NOT_NULL Message-ID: References: <1d5642ecb4bb477c9fd7e1ebaee868fe4ccbefc7.1683500149.git.nabijaczleweli@nabijaczleweli.xyz> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="hiekumncuoevgp3r" Content-Disposition: inline In-Reply-To: <1d5642ecb4bb477c9fd7e1ebaee868fe4ccbefc7.1683500149.git.nabijaczleweli@nabijaczleweli.xyz> User-Agent: NeoMutt/20230407 X-Spam-Status: No, score=-9.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_INFOUSMEBIZ,MISSING_HEADERS,RDNS_DYNAMIC,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --hiekumncuoevgp3r Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable The POSIX API always stops at first NUL so there's no change for that. The BSD REG_STARTEND API, with its explicit range, can include NULs within that range, and those NULs are matched with . and [^]. Heretofor, for a string of "a\0c", glibc would match "[^q]c", but not ".c". This is both inconsistent and nonconformant to BSD REG_STARTEND. With this patch, they're identical like you'd expect, and the tst-reg-startend.c: ..c: a^@c: no match$ failure is removed. Another approach would be to remove it from _RE_SYNTAX_POSIX_COMMON, but it's unclear to me what the custody chain is like for that and what other regex APIs glibc offers that could be affected by this. Signed-off-by: Ahelenia Ziemia=C5=84ska --- posix/regcomp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/posix/regcomp.c b/posix/regcomp.c index 12650714c0..a928ef6c2d 100644 --- a/posix/regcomp.c +++ b/posix/regcomp.c @@ -462,7 +462,7 @@ regcomp (regex_t *__restrict preg, const char *__restri= ct pattern, int cflags) { reg_errcode_t ret; reg_syntax_t syntax =3D ((cflags & REG_EXTENDED) ? RE_SYNTAX_POSIX_EXTEN= DED - : RE_SYNTAX_POSIX_BASIC); + : RE_SYNTAX_POSIX_BASIC) & ~RE_DOT_NOT_NULL; =20 preg->buffer =3D NULL; preg->allocated =3D 0; --=20 2.30.2 --hiekumncuoevgp3r Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEfWlHToQCjFzAxEFjvP0LAY0mWPEFAmRYLIsACgkQvP0LAY0m WPGKQBAAg/YhZi153SeUUMWIlqnl7gDtL/WX+XminpxegvcpJiYKGhq1WeVyoDL/ LnTzjbkrjaaP6bRWvas3ggbTYcE5RP4syj24gUGy3mqRIsW7CbhJEV5Ul1OhiiqY 28QkpT5dxwp9zc1FmMPUtyfgQ0WOXybhuqKTphJk5/Z/WgkdLeBhd+VCT9GAo91e DoshVspYclQyMq11x+jvaRNt27Iyu8Aq/rGMdmL71+tIVbrSqikIPKC3piW72Kft g97O/8P1rMdd/bJBIGT8MWLR0ROIB+zT5fPcx5RQDS7KMXUhhfDja3QjAbrhyEOS taBr5KxHFhNU7xUvOTEebtkfsN51kwSXd0XypBur/CTKX7ukXwPHlPOS0FtOpRfA 4SKePLy7GukeqyKFAvj3OI5L78pfd47Bvt3WgpsA9N2KnJQ5A6QgShXPUAeelVLZ Oo3sFeJVHMyALiY7E2NbPC7NapOmS0cXO0DDPkSS52CdX9332+67bc2WcxCFHw5t OEAN5HDWj7E7/zTTZ/xy0PWPJgTRvlKNFSFPO0mKcHcjLXq75lwf7xn+eb8sHWJI KeTQ1k13DAqHgS5NCkdgPJ1Y3G7UV4SZH9GSyNdz5xn66SvLeQTp2ubLPcvLHY0o 5TsU7gn4qsS7yiT9KAhAIX2YHlk1uL9yjpAYQr9J4nsYF3Lm8X4= =8ejM -----END PGP SIGNATURE----- --hiekumncuoevgp3r--