Bug #70091 [PATCH]: Phar does not mark UTF-8 filenames in ZIP archives

From: Date: Fri, 22 Jan 2021 11:19:11 +0000
Subject: Bug #70091 [PATCH]: Phar does not mark UTF-8 filenames in ZIP archives
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-231707@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=70091&edit=1 ID: 70091 Patch added by: cmb@php.net Reported by: david dot vantyghem at free dot fr Summary: Phar does not mark UTF-8 filenames in ZIP archives Status: Verified Type: Bug Package: PHAR related Operating System: Linux Mint MATE 17.2 PHP Version: 5.5Git-2015-07-17 (Git) Assigned To: cmb Block user comment: N Private report: N New Comment: The following pull request has been associated: Patch Name: Fix #70091: Phar does not mark UTF-8 filenames in ZIP archives On GitHub: https://github.com/php/php-src/pull/6630 Patch: https://github.com/php/php-src/pull/6630.patch Previous Comments: ------------------------------------------------------------------------ [2020-12-14 14:57:21] cmb@php.net Prior to PHP 5.4.29 and 5.5.13, respectively, Phar filenames could only consist of printable ASCII characters. As of these versions, UTF-8 characters are supported as well, but apparently your filenames are encoded in a different encoding (possibly ISO-8859-1). So far, this would be a documentation problem. You could still work around that by using PharData::addFromFile() or ::buildFromIterator(). However, ZIP archives traditionally store filenames encoded as CP 437, and Phar still solely supports the tradional mechanism, so directly storing UTF-8 filenames as local names doesn't have the desired result. In my opion, this is an implementation bug. ------------------------------------------------------------------------ [2015-07-22 09:26:32] d dot dussouillez at 2n-tech dot com Same here (PHP 5.6.6, linux) : exception 'BadMethodCallException' with message 'Entry modules/Medicnet - Le sp�cialiste de la vente en ligne de mat�riel m�dical.URL cannot be created: phar error: invalid path "modules/Medicnet - Le sp�cialiste de la vente en ligne de mat�riel m�dical.URL" contains illegal character' ------------------------------------------------------------------------ [2015-07-17 06:57:35] david dot vantyghem at free dot fr Description: ------------ Fatal error: Uncaught exception 'BadMethodCallException' with message 'Entry Cliquez ici pour démarrer COMPILIBRE.bat cannot be created: phar error: invalid path "Cliquez ici pour démarrer COMPILIBRE.bat" contains illegal character' in /home/david/Documents/logiciels/COMPILIBRE/SourceForge Code/COMPILIBRE-source/COMPILIBRE/compilation.php:271 Stack trace: #0 /home/david/Documents/logiciels/COMPILIBRE/SourceForge Code/COMPILIBRE-source/COMPILIBRE/compilation.php(271): PharData->buildFromDirectory('compilations/1') #1 {main} thrown in /home/david/Documents/logiciels/COMPILIBRE/SourceForge Code/COMPILIBRE-source/COMPILIBRE/compilation.php on line 271 Test script: --------------- // Create the zip file $phar = new PharData("compilations/".az09_($compilation_name).".".$compilation_key.".zip"); $phar->buildFromDirectory("compilations/".$compilation_key); Name of the file that causes the error : "Cliquez ici pour démarrer COMPILIBRE.bat" ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=70091&edit=1

« previous php.bugs (#231707) next »