ID: 50947
Updated by: [email protected]
Reported By: dax at enst dot fr
-Status: Open
+Status: Feedback
Bug Type: Scripting Engine problem
Operating System: Solaris10
PHP Version: 5.2.12
New Comment:
It just means crypt() returns NULL because some error happens. Is the
command line PHP same version as the Apache module?
And does this crash as well:
<?php echo crypt("bar", "12"); ?>
Previous Comments:
------------------------------------------------------------------------
[2010-02-06 23:01:18] dax at enst dot fr
1- This incident happens always with this script (above)
2- MPM is prefork
3- Here the backtrace :
db) r -X -f /home/www/conf/httpd-infres1.conf
Starting program: /local/packages/apache22/bin/httpd -X -f
/home/www/conf/httpd-infres1.conf
warning: Lowest section in /usr/lib/libdl.so.1 is .hash at 000000b4
warning: Lowest section in /usr/lib/libpthread.so.1 is .dynamic at
00000074
[New LWP 1]
[New LWP 2]
[LWP 2 exited]
[New LWP 2]
[Sat Feb 06 23:41:28 2010] [warn] module php5_module is already loaded,
skipping
[Sat Feb 06 23:41:28 2010] [warn] module dav_svn_module is already
loaded, skipping
[Sat Feb 06 23:41:28 2010] [warn] module authz_svn_module is already
loaded, skipping
[New LWP 3]
[LWP 3 exited]
[New LWP 3]
[Sat Feb 06 23:41:34 2010] [warn] module php5_module is already loaded,
skipping
[Sat Feb 06 23:41:34 2010] [warn] module dav_svn_module is already
loaded, skipping
[Sat Feb 06 23:41:34 2010] [warn] module authz_svn_module is already
loaded, skipping
Program received signal SIGSEGV, Segmentation fault.
0xfeb320d0 in strlen () from /usr/lib/libc.so.1
(gdb) bt
#0 0xfeb320d0 in strlen () from /usr/lib/libc.so.1
#1 0xfe4c3c44 in zif_crypt (ht=1, return_value=0x4bc248,
return_value_ptr=0x0, this_ptr=0x0,
return_value_used=1) at
/infres/admin1/install/php-5.2.12/ext/standard/crypt.c:165
#2 0xfe66c96c in zend_do_fcall_common_helper_SPEC
(execute_data=0xffbfe990)
at /infres/admin1/install/php-5.2.12/Zend/zend_vm_execute.h:200
#3 0xfe675018 in ZEND_DO_FCALL_SPEC_CONST_HANDLER
(execute_data=0xffbfe990)
at /infres/admin1/install/php-5.2.12/Zend/zend_vm_execute.h:1740
#4 0xfe66c284 in execute (op_array=0x4bbb78)
at /infres/admin1/install/php-5.2.12/Zend/zend_vm_execute.h:92
#5 0xfe634aa8 in zend_execute_scripts (type=8, retval=0x0,
file_count=3)
at /infres/admin1/install/php-5.2.12/Zend/zend.c:1134
#6 0xfe5b05c4 in php_execute_script (primary_file=0xffbff028)
at /infres/admin1/install/php-5.2.12/main/main.c:2036
#7 0xfe6eba8c in php_handler (r=0x5f8dd0)
at
/infres/admin1/install/php-5.2.12/sapi/apache2handler/sapi_apache2.c:637
#8 0x000444f0 in ap_run_handler (r=0x5f8dd0) at config.c:157
#9 0x0004496c in ap_invoke_handler (r=0x5f8dd0) at config.c:372
#10 0x0008fa8c in ap_process_request (r=0x5f8dd0) at
http_request.c:282
#11 0x0008cbf8 in ap_process_http_connection (c=0x5ed038) at
http_core.c:190
#12 0x0004ac9c in ap_run_process_connection (c=0x5ed038) at
connection.c:43
#13 0x000bf14c in child_main (child_num_arg=0) at prefork.c:662
#14 0x000bf334 in make_child (s=0x124398, slot=0) at prefork.c:702
#15 0x000bf928 in ap_mpm_run (_pconf=0x11e4b0, plog=0x113400,
s=0x124398) at prefork.c:978
#16 0x00031700 in main (argc=4, argv=0xffbff67c) at main.c:740
(gdb) frame 3
#3 0xfe675018 in ZEND_DO_FCALL_SPEC_CONST_HANDLER
(execute_data=0xffbfe990)
at /infres/admin1/install/php-5.2.12/Zend/zend_vm_execute.h:1740
1740 return
zend_do_fcall_common_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
------------------------------------------------------------------------
[2010-02-06 20:32:45] [email protected]
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 for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32
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.
Additional to the backtrace: Does this always happen or "randomly"
which MPM are you using?
------------------------------------------------------------------------
[2010-02-06 16:31:46] dax at enst dot fr
Description:
------------
In my configuration the PHP crypt() function makes a segmentation fault
in a httpd process. However this doesn't occur in command line mode
using the php interpeter.
Consequence : impossible to run any PHP applications with crypt() as
PMwiki for example.
OS : Solaris10
Apache server : httpd-2.2.14
Compilation options :
./configure --prefix=/usr/local/apache22
--with-apxs2=/usr/local/apache22/bin/apxs
--with-config-file-path=/usr/local/apache22/etc --enable-sockets
--enable-sigchild --enable-ftp --enable-calendar --enable-wddx
--enable-bcmath --enable-shmop --enable-sysvmsg --enable-sysvsem
--enable-sysvshm --enable-session --enable-mbstring --enable-exif
--with-regex=system --with-gettext --with-iconv=/usr/local
--with-openssl=/usr/local/ssl --with-zlib-dir=/usr/local
--with-bz2=/usr/local --with-libxml-dir=/usr/local
--with-xpm-dir=/usr/local/X11R6 --with-png-dir=/usr/local
--with-gd=/usr/local --with-freetype-dir=/usr/local
--enable-gd-native-ttf --with-t1lib=/usr/local --with-ttf=/usr/local
--with-gdbm=/usr/local --with-db4=/usr/local/BerkeleyDB.4.5
--with-mysql=/infres/mysql/5.1.30 --with-ldap=/usr/local
--with-curl=/usr/local --with-xsl=/usr/local --enable-soap
--with-mcrypt=/usr/local/ --enable-zip
Reproduce code:
---------------
<?php $foo = crypt("bar"); echo "$foo"; ?>
Expected result:
----------------
A md5 string
Actual result:
--------------
[Sat Feb 06 17:05:15 2010] [notice] child pid 17043 exit signal
Segmentation fault (11)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=50947&edit=1