Re: Bug #1910: eval causes core dump with mathfunctions that retun NaN

From: Date: Wed, 28 Jul 1999 22:51:43 +0000
Subject: Re: Bug #1910: eval causes core dump with mathfunctions that retun NaN
References: 1 2 3  Groups: php.dev 
Request: Send a blank email to php-dev+get-9300@lists.php.net to get a copy of this message
Well, I probably should have tried the CVS first :) There were no open bug reports related to this, but I can try the current CVS tomorrow and see if that fixes it. I know this has been asked (no archives...), but where do I get the CVS tree from? Zeev Suraski wrote: > Assuming these are open problems, can you please submit bug reports to > ensure these don't escape my memory before we release Beta 2? > > Thanks, > > Zeev > > At 23:35 28/07/99 , Chad Cunningham wrote: > >Well, I had initially made too many assumptions about what the problem > >was, but > >I've ended up finding two seperate things causing the core dumps. The first > >problem was that in my simple test script I made to isolate the problem, I > >forgot the closing ; at the end of the eval string. This causes a core dump on > >Solaris, although on Linux is gives the proper parse error. Second, calling > >numberformat on a string that was evaluated to be NaN causes a core dump. > >Granted, this is a strange thing to do, but it seems as if it should return an > >error rather than dump core. And on Linux, it does just return an error. Here > >are example scripts of each problem and debugging data: > > > > > ><? > >eval("\$one = sin(-1)"); > >echo $one; > >?> > > > >Error Log: > >[Wed Jul 28 17:20:35 1999] [notice] child pid 13254 exit signal Segmentation > >Fault (11) > > > >dbx: > >In add vars > >signal SEGV (no mapping at the fault address) in strlen at 0xef5a4614 > >0xef5a4614: strlen+0x0080: ld [%o1], %o2 > > > > > >----------- > > > ><? > >$one = sqrt(-50); // or $one = "NaN"; > >$out = number_format($one,12); > >echo $out; > >?> > > > >Error Log: > >Script: '/opt/web/htdocs/test.php' > >--------------------------------------- > >math.c(641) : Block 0x00120270 status: > >Beginning: Overrun (magic=0x0000119D, expected=0x7312F8DC) > > End: Unknown > >--------------------------------------- > >Script: '/opt/web/htdocs/test.php' > >--------------------------------------- > >zend_hash.c(746) : Block 0x00120038 status: > >Beginning: Overrun (magic=0x732E7068, expected=0x7312F8DC) > > End: Unknown > >--------------------------------------- > >[Wed Jul 28 17:24:54 1999] [notice] child pid 13289 exit signal Segmentation > >Fault (11) > > > >dbx: > >In add vars > >signal BUS (invalid address alignment) in _get_zval_ptr_ptr at 0xef3042c0 > >0xef3042c0: _get_zval_ptr_ptr+0x003c: ld [%o1 + 0xc], %o0 > > > > > > > >Andrey Zmievski wrote: > > > > > ccunning@math.ohio-state.edu wrote: > > > > From: ccunning@math.ohio-state.edu > > > > Operating system: Solaris 2.6 > > > > PHP version: 4.0b1 > > > > PHP Bug Type: Reproduceable crash > > > > Bug description: eval causes core dump with math functions that > > retun NaN > > > > > > > > Doing something like eval("\$one = log(-1)"); on Solaris causes a core > > > dump. Doing the log(-1) outside of eval returns NaN. Any function that can > > > return NaN or Infinity with the right argument seems to do this when > > executed > > > inside an eval. Doing the eval on RedHat 6 with php4 works fine, and > > PHP3 on > > > Solaris handles it fine. Here is the dbx output as well as some stuff that > > > showed up in the error log. > > > > > > I believe this should be fixed in the latest CVS. Zeev? > > > > > > -Andrey > > > * If it ain't broken, it doesn't have enough features yet. * > > > > > > -- > > > PHP Development Mailing List > > > <http://www.php.net/> > > > To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net > > > For additional commands, e-mail: php-dev-help@lists.php.net > > > To contact the list administrators, e-mail: php-list-admin@lists.php.net > > > > > >-- > >PHP Development Mailing List <http://www.php.net/> > >To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net > >For additional commands, e-mail: php-dev-help@lists.php.net > >To contact the list administrators, e-mail: php-list-admin@lists.php.net > > -- > Zeev Suraski <zeev@zend.com> http://www.zend.com/ > For a PGP public key, finger bourbon@netvision.net.il > > -- > PHP Development Mailing List <http://www.php.net/> > To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net > For additional commands, e-mail: php-dev-help@lists.php.net > To contact the list administrators, e-mail: php-list-admin@lists.php.net

« previous php.dev (#9300) next »