Edit report at http://bugs.php.net/bug.php?id=52818&edit=1

 ID:                 52818
 User updated by:    svimik at mail dot ru
 Reported by:        svimik at mail dot ru
 Summary:            PCRE segfault
 Status:             Bogus
 Type:               Bug
 Package:            Reproducible crash
 Operating System:   Debian-50-lenny-64
 PHP Version:        5.3.3
 Block user comment: N

 New Comment:

Why stack overflow is not a bug?


Previous Comments:
------------------------------------------------------------------------
[2010-09-14 13:09:14] ahar...@php.net

I can replicate this on a stock trunk build, and it is (as usual) a
simple stack overflow.



Closing.

------------------------------------------------------------------------
[2010-09-12 11:35:08] svimik at mail dot ru

Thanks to pajoye, the problem was solved by reducing recursion limit.

pcre.recursion_limit was default value (100000), and only reducing to
10000 solved the problem.



The only question is: is default value of pcre.recursion_limit too high?
And should it work?

------------------------------------------------------------------------
[2010-09-12 02:35:15] paj...@php.net

What's your pcre recursion limit setting? Also it looks like a stack
issue to me.



In any case, please provide a backtrace, without any patch or random
extension (suhoshin or whatever else).

------------------------------------------------------------------------
[2010-09-12 00:57:27] svimik at mail dot ru

Tested versions:

------------------------

PHP 5.3.2-2 with Suhosin-Patch (cli) (built: Jul 19 2010 01:22:58)

Copyright (c) 1997-2009 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

    with XCache v1.3.0, Copyright (c) 2005-2009, by mOo



PHP 5.2.12-2 with Suhosin-Patch 0.9.7 (cli) (built: Jan 11 2010
16:51:28)

Copyright (c) 1997-2009 The PHP Group

Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies

    with XCache v1.3.0, Copyright (c) 2005-2009, by mOo



PHP 5.2.9 (cli) (built: Mar 31 2009 23:21:47)

Copyright (c) 1997-2009 The PHP Group

Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies



PHP 5.2.6-1+lenny8 with Suhosin-Patch 0.9.6.2 (cli) (built: Mar 14 2010
08:14:04)

Copyright (c) 1997-2008 The PHP Group

Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

    with Zend Optimizer v3.3.9, Copyright (c) 1998-2009, by Zend
Technologies

------------------------------------------------------------------------
[2010-09-12 00:48:44] svimik at mail dot ru

Description:
------------
My phpinfo:

http://188.40.74.4/_phpinfo.php



My hardware configuration:

http://www.hetzner.de/en/hosting/produkte_rootserver/eq4/



Test condition:

Run the script below in console (via SSH in my case).



Result:

Segmentation fault



Note: the regular expression may look senseless, because it was
shortened to the minimun length for reproducing the bug.



Bug is reproducible on php 5.2.6, 5.2.9, 5.2.12 and 5.3.2. (Sorry, can't
test on the latest version, waiting for someone to confirm the bug on
5.3.3).

Sorry, can't make a backtrace on a production server, because it is
necessary to recompile the php.



In Windows this script works well.

Test script:
---------------
$str="<script>".str_repeat(".", 7000); //at least 6378 bytes (or more)

$str=preg_replace("/<script>((?!qqqq).)*/", "", $str);

Expected result:
----------------
Not a Segmentation fault :)

Actual result:
--------------
Debian-50-lenny-64-LAMP:/home/httpd# php -f segf.php

Segmentation fault

Debian-50-lenny-64-LAMP:/home/httpd#


------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=52818&edit=1

Reply via email to