Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:112334 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 74607 invoked from network); 1 Dec 2020 17:57:13 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 1 Dec 2020 17:57:13 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 0C1501804C4 for ; Tue, 1 Dec 2020 09:24:39 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from mout.gmx.net (mout.gmx.net [212.227.17.22]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 1 Dec 2020 09:24:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1606843475; bh=OQyfsQE33w0/wl4YenukR5affEIKz7DcnGO8J/QQIlg=; h=X-UI-Sender-Class:Subject:To:References:From:Date:In-Reply-To; b=OzeuEhZKRzDnHk10BQH+tVKovCUWV2vFZZ3Zy3/os/hFykKeSoE5Dmzi54/zQUJ96 VTvxvjfz84ncW9ch0GtzMoH+oQ1PNXmFQneNrCyd14hZvTHpoXjrcf2gZbEvPFVOUV 3wk0K7KjXJ2uIOtLiJajRlQIq3p1mtKYuolXAQDI= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.2.130] ([84.179.229.113]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1M3UV8-1kjbQP1cd0-000cbk; Tue, 01 Dec 2020 18:24:35 +0100 To: Aimeos | Norbert Sendetzky , PHP internals References: Message-ID: Date: Tue, 1 Dec 2020 18:24:35 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.5.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:iExTb6BA2QEQ7SbM2NKWJZs3uPQmLq2hQzTZ5DV98tVd6hAl8e4 MF9E2S+7gQjRPdRMW4dusDfOucDUwO1OU2jkpXtEDuSO+bgMm9gUndO+CwCjQK6MbBYOZe2 nbtk8KAv1kwMNT4KY5bAImABYv8NefJTSvo1wk40d2umurgnCH2tov/d0ZlLANavvDWYYng ZAhS32rJ0uwdZwzkV1pow== X-UI-Out-Filterresults: notjunk:1;V03:K0:gVTejEAy0Rw=:CZ/JAWIOB10Bl8sWSsVJeW zgiz9mfrV9QEglzG6zDj8mYT0wTuLrI5lQoiwMkhXjvYRXiTW/sb5QChoqgw0IpeSkO0g6yUK hRShSB5fAm+aEAqzs2ApGCLlF53Qzvotl+qskcX2AJ9ytfwRWYGEoaXswoylPpxy74h48K2ry wJv/yy17K1W06xtDKDv/saj/3ALhanKiTC9yzN6Yqm+TadQDgD3Jn2DzchsNEw709YcfpQPrb g8zusCIEAQ185637WUEdBLWzpEzZeCKRe2vbMMU0lqe3k6vdkTx9wBEJh/ll9lDlomgwsBeZa b4mmzdCCEyOarB0Ovh83qDtq4dzSwbPhLipl0jdVxZf4Q1k/4RlTYYo+Y+h4Nns2Drn8iaDWV u0i2+t5ihNwby+HwGdjVG9yBtD2SR8pahdZleVI8G9Z5dfTfZQhNYgJO/7+Xwup3pDvXMvlWz eFqWM/EkBoqcvztX9m3F6plgOzvHKPghhaN+/KzPfTH/MGrRqYKEbCdAEElrBGmnHrAGl/ARw sQ5NXUe18PLQ+FiPwftEP/cXUqqOe+x/FN+W5jOQikJw7F6lkrId/2s6Z5+yDNGtMa2AqxUB/ /P8MuNvLUyaP9ThDr/+0hldIitIFgUxt+xd2SjVlYQrYDFdpAGshSDv0x/FhGgkJa0Kf09lh/ OSVwee3m7QYLVOawOm+6EQioCfwZUbUEVyKMnfx0KrdzfPh0oBZPtSl/AyvrWTSa40SwAbzBD E1Hp+qQD40oyNP42Zi4G7XJkjOvOpYX9m/z8MGu+V3TTHLZhl7iZpQy4BJ4w9oQaX3rfWxs4t tldSyLkmbSB4/vUVYAtafiljV78xrWpa2y+qOJYGMUiRkxbEeeESBDPo/nzEG0Xd+h25fF3Ew KiOH9kXIMos8fIuZovGA== Subject: Re: PHP 8 is_file/is_dir input handling From: cmbecker69@gmx.de ("Christoph M. Becker") On 01.12.2020 at 18:18, Aimeos | Norbert Sendetzky wrote: > PHP 8 is stricter in checking input data then PHP 7. This is good but > has some side effects for is_file(), is_dir() and similar functions when > invalid paths are passed for checking. > > In PHP 7, this returns FALSE: > > php -r 'var_dump(is_file("ab\0c"));' > > In PHP 8, the same code throws a ValueException. Problem is now that > it's not possible to check upfront if the passed argument is a valid > path to avoid the exception being thrown. This is only about the NUL byte in the filename. You can easily check for that yourself. :) Regards, Christoph