File upload error reporting partial uploads incorrectly
| Bug #33673 | File upload error reporting partial uploads incorrectly | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Submitted: | 2005-07-13 01:12 UTC | Modified: | 2005-07-13 22:48 UTC |
|
||||||||||
| From: | jason at code820 dot com | Assigned: | ||||||||||||
| Status: | Closed | Package: | HTTP related | |||||||||||
| PHP Version: | 5CVS, 4CVS (2005-07-13) | OS: | * | |||||||||||
| Private report: | No | CVE-ID: | None | |||||||||||
[2005-07-13 01:12 UTC] jason at code820 dot com
Description: ------------ On file upload $_FILES['userfile']['error'] is expecting to return an error when a file is only partially uploaded. However, it returns 0 (upload successful) on each try. We have uploaded everything from 4 meg files to 250 meg files and we cancel them mid-transfer and we are still getting a 0 returned. This is very similar to this bug here: http://bugs.php.net/bug.php?id=19556 Actually, almost the same thing, just with a newer version of PHP. We have tried with single uploads as well as multiple uploads with the same results. Setup is: PHP 5.0.4 Apache 2.0.54 eAccelerator 0.9.2 (did it with eAccelerator turned ON and turned OFF, same result) Apache configure: ./configure --enable-mods-shared=all --enable-ssl PHP configure: './configure' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-pgsql' '--with-mysql' '--enable-bcmath' '--with-mcrypt=/usr/local' '--with-zlib=/usr/' '--with-mime-magic' '--enable-exif' '--with-curl=/usr/local' '--with-openssl' '--enable-sockets' '--enable-mbstring' '--enable-sigchild' php.ini has been altered to accept larger files on upload/post/etc. Reproduce code: --------------- // upload form <form name="myform" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data"> Image 1: <input type="file" name="THEFILE" size="30"> // end upload form // process script <?php $m = print_r($_FILE, TRUE); mail("email@address.com", "DEBUG", $m); ?> Mail message contains: Array ( [THEFILE] => Array ( [name] => IMG_0138.JPG [type] => image/jpeg [tmp_name] => /usr/local/web/tmp/phpmGnzHe [error] => 0 [size] => 3581591 ) ) Expected result: ---------------- Expect to see [THEFILE][error] = 3 Actual result: -------------- Array ( [THEFILE] => Array ( [name] => IMG_0138.JPG [type] => image/jpeg [tmp_name] => /usr/local/web/tmp/phpmGnzHe [error] => 0 [size] => 3581591 ) ) Actual size of the file on the server is 3040870, NOT 3581591
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2005-07-13 19:51 UTC] sniper@php.net
[2005-07-13 19:56 UTC] jason at burfield dot com
[2005-07-13 22:48 UTC] iliaa@php.net