Re: Reentrant C scanners for PHP

From: Date: Fri, 06 Jul 2001 11:06:58 +0000
Subject: Re: Reentrant C scanners for PHP
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-59073@lists.php.net to get a copy of this message
> Because software already exists to eliminate the scan/parse > process, speed was not a main concern. The new language > scanner is faster than the old one in all tested scenarios > though. ;) This is so "Sascha"! Looks very nice. Do you think you could LGPL it instead of GPL? Would be tricky to use in conjunction with the QPL if it was GPL'ed. This script: This is a test <? $a = 1; $b = 'Hello'; $c = "$a $b"; echo $a.$b.$c."\n"; ?> And this is the last line generates this overrun: --------------------------------------- cgi_main.c(793) : Block 0x0835D7E8 status: Beginning: Overrun (magic=0x082F9BB8, expected=0x7312F8DC) End: Unknown --------------------------------------- And if I repeat the above code 10000 times in a file, I get a segfault: Program received signal SIGSEGV, Segmentation fault. 0x081439d4 in _efree (ptr=0x835d80c, __zend_filename=0x824a0c6 "cgi_main.c", __zend_lineno=793, __zend_orig_filename=0x0, __zend_orig_lineno=0) at zend_alloc.c:212 212 CALCULATE_REAL_SIZE_AND_CACHE_INDEX(p->size); (gdb) bt #0 0x081439d4 in _efree (ptr=0x835d80c, __zend_filename=0x824a0c6 "cgi_main.c", __zend_lineno=793, __zend_orig_filename=0x0, __zend_orig_lineno=0) at zend_alloc.c:212 #1 0x08078958 in main (argc=2, argv=0xbffff9c4) at cgi_main.c:793 #2 0x4040c177 in __libc_start_main (main=0x8077efc <main>, argc=2, ubp_av=0xbffff9c4, init=0x8075914 <_init>, fini=0x8249cc0 <_fini>, rtld_fini=0x4000e184 <_dl_fini>, stack_end=0xbffff9bc) at ../sysdeps/generic/libc-start.c:129 -Rasmus

« previous php.dev (#59073) next »