#24301 [Opn->Fbk]: readfile() and fpassthru() die with SEGV on a 64k file
| From: | derick@php.net | Date: | Mon, 23 Jun 2003 19:55:27 +0000 |
| Subject: | #24301 [Opn->Fbk]: readfile() and fpassthru() die with SEGV on a 64k file | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-42377@lists.php.net to get a copy of this message | ||
ID: 24301
Updated by: derick@php.net
Reported By: hessu at hes dot iki dot fi
-Status: Open
+Status: Feedback
Bug Type: Reproducible crash
Operating System: linux 2.4.20
PHP Version: 4CVS-2003-06-23 (stable)
New Comment:
Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php
Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2003-06-23 14:50:16] hessu at hes dot iki dot fi
Description:
------------
php-4.3.2 and php4-STABLE-200306231730 on apache-2.0.46, RedHat Linux
on i386, vanilla 2.4.20 kernel, gcc version 3.2 20020903 (Red Hat Linux
8.0 3.2-7).
When trying to send a binary or ascii file of exactly 65536 bytes using
readfile() or fpassthru(), the httpd process dies with a SIGSEGV. If
the file is 65535 or 65537 bytes long, it is sent out just fine. 32768
and 131072 bytes do not seem to crash, either.
The same source file does not crash the command line version of php.
Reproduce code:
---------------
$ cat 64kcrash.php
<? readfile("64k-of-data"); ?>
$
$ dd if=/dev/urandom of=64k-of-data bs=1 count=65536
OR
$ perl -e 'print "a" × 65536;' > 64k-of-data
Expected result:
----------------
The contents of the file should be sent.
Actual result:
--------------
[Mon Jun 23 22:46:56 2003] [notice] child pid 7805 exit signal
Segmentation fault (11)
client gets EOF after sending the request.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=24301&edit=1