php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #35278 output_buffer set too low -> segfaulting Apache childs
Submitted: 2005-11-18 16:33 UTC Modified: 2005-11-19 01:06 UTC
From: maddog2k at maddog2k dot net Assigned: iliaa
Status: Closed Package: Output Control
PHP Version: 5CVS, 4CVS (2005-11-18) (snap) OS: Linux
Private report: No CVE-ID:
 [2005-11-18 16:33 UTC] maddog2k at maddog2k dot net
Description:
------------
Bug #35264 was fixed, but this introduced a new Apache child segmentation fault, under some conditions.

With PHP 4.4.0 and below, the following would work correctly with Apache 2.0.54/.55 : 

AddOutputFilter INCLUDES .php
AddType application/x-httpd-php .php

Then having a .php that contains multiple (eg. 2) <!--#include virtual="/page.html" --> and for example about 24 thumbnails (of 4.0k each), you read a segfault of an Apache child process in the error_log and the page loading finishes and showing cut-off content.

Like I said, the segfault happens since the fix for bug #35264, before it just didn't segfault but stopped loading.

When changing output_buffer to 0 or Off, no difference.
Only when I set output_buffer => 16384 in php.ini, the page loads completely.

Strange thing here is that output buffering isn't used in the page at all, or SSI by default must use buffering...

Seems to me that something has changed regarding buffering between 4.4.0 <-> higher versions.

Like the memory get's full or so, cause when I delete a few lines of html-code in the page (random), it does load.

Noe that this does like an Apache bug or so, but hence it only happens since PHP 4.4.1

Reproduce code:
---------------
Hopefully, the description rings a bell at you guys :)
But possible if really needed.


Expected result:
----------------
Page loads completely (100%)

Actual result:
--------------
Page loads not completely

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-11-18 16:33 UTC] sniper@php.net
Please try using this CVS snapshot:

  http://snaps.php.net/php5-latest.tar.gz
 
For Windows:
 
  http://snaps.php.net/win32/php5-win32-latest.zip


 [2005-11-18 16:55 UTC] maddog2k at maddog2k dot net
Unfortunately, no change... (php5-200511181330 -> 5.1.0RC7-dev)
 [2005-11-18 17:18 UTC] sniper@php.net
Do us a favor and test with the latest PHP 5 snapshots from now on so we don't have to ask for that separately. 
 [2005-11-18 17:19 UTC] sniper@php.net
Ilia, this is pretty interesting. And on Linux.. :)
 [2005-11-18 20:04 UTC] iliaa@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

Give it 2-3 hours and grab the latest snapshot, it should resolve this issue.
 [2005-11-19 01:06 UTC] maddog2k at maddog2k dot net
Confirming the fix.

Many thanks! :)
 
PHP Copyright © 2001-2014 The PHP Group
All rights reserved.
Last updated: Mon Apr 21 12:02:07 2014 UTC