Bug #66787 [NEW]: SIGSEGV When PHP code involving DNS name resolution, the process will crash
| From: | wangbo5 at 360 dot cn | Date: | Thu, 27 Feb 2014 06:39:24 +0000 |
| Subject: | Bug #66787 [NEW]: SIGSEGV When PHP code involving DNS name resolution, the process will crash | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-184452@lists.php.net to get a copy of this message | ||
From: wangbo5 at 360 dot cn
Operating system: CentOS 5.4
PHP version: 5.5Git-2014-02-27 (Git)
Package: *Network Functions
Bug Type: Bug
Bug description:SIGSEGV When PHP code involving DNS name resolution, the process will crash
Description:
------------
When PHP code involving DNS name resolution, the process will crash
Test script:
---------------
<?php
file_get_contents("http://www.baidu.com/");
?>
Expected result:
----------------
NO SIGSEGV
Actual result:
--------------
kernel: php-fpm[12646]: segfault at 2559 ip 000000398a6145b2 sp
00007fffc1280cf8 error 4 in ld-2.5.so[398a600000+1c000]
Program received signal SIGSEGV, Segmentation fault.
0x000000398a6145b2 in strcmp () from /lib64/ld-linux-x86-64.so.2
(gdb) bt
#0 0x000000398a6145b2 in strcmp () from /lib64/ld-linux-x86-64.so.2
#1 0x000000398a607dc3 in _dl_map_object (loader=<value optimized out>,
name=<value optimized out>, preloaded=<value optimized out>, type=<value
optimized out>,
trace_mode=<value optimized out>, mode=<value optimized out>,
nsid=<value optimized out>) at dl-load.c:1975
#2 0x000000398a610c4d in dl_open_worker (a=<value optimized out>) at
dl-open.c:295
#3 0x000000398a60ce96 in _dl_catch_error (objname=<value optimized
out>, errstring=<value optimized out>, mallocedp=<value optimized out>,
operate=<value optimized out>,
args=<value optimized out>) at dl-error.c:178
#4 0x000000398a61064c in _dl_open (file=<value optimized out>,
mode=<value optimized out>, caller_dlopen=<value optimized out>,
nsid=<value optimized out>, argc=<value optimized out>,
argv=<value optimized out>, env=<value optimized out>) at
dl-open.c:602
#5 0x000000398ab08ab0 in do_dlopen (ptr=<value optimized out>) at
dl-libc.c:86
#6 0x000000398a60ce96 in _dl_catch_error (objname=<value optimized
out>, errstring=<value optimized out>, mallocedp=<value optimized out>,
operate=<value optimized out>,
args=<value optimized out>) at dl-error.c:178
#7 0x000000398ab08c17 in __libc_dlopen_mode (name=<value optimized
out>, mode=<value optimized out>) at dl-libc.c:47
#8 0x000000398aae3960 in __nss_lookup_function (ni=<value optimized
out>, fct_name=<value optimized out>) at nsswitch.c:362
#9 0x000000398aabbb87 in gaih_inet (name=<value optimized out>,
service=<value optimized out>, req=<value optimized out>, pai=<value
optimized out>, naddrs=<value optimized out>)
at ../sysdeps/posix/getaddrinfo.c:813
#10 0x000000398aabd62a in getaddrinfo (name=<value optimized out>,
service=<value optimized out>, hints=<value optimized out>, pai=<value
optimized out>)
at ../sysdeps/posix/getaddrinfo.c:2325
#11 0x0000000000638c8e in php_network_getaddresses (host=0x7fbf8ddadf80
"www.sina.com.cn", socktype=<value optimized out>, sal=0x7fffe27bc238,
error_string=0x7fffe27bc450)
at /home/gaoyuan/php-5.5.0/main/network.c:213
#12 0x0000000000638e85 in php_network_connect_socket_to_host
(host=0x7fffe27bba90 "libnss_dns.so.2", port=80, socktype=1,
asynchronous=0, timeout=0x0, error_string=0x90000001,
error_code=0x7fffe27bc35c, bindto=0x0, bindport=0) at
/home/gaoyuan/php-5.5.0/main/network.c:777
#13 0x0000000000649d4d in php_tcp_sockop_set_option
(stream=0x7fbf8ddade38, option=<value optimized out>, value=<value
optimized out>, ptrparam=0x7fffe27bc3d0)
at /home/gaoyuan/php-5.5.0/main/streams/xp_socket.c:671
#14 0x000000000063cc79 in _php_stream_set_option (stream=0x7fffe27bba90,
option=7, value=0, ptrparam=0xffffffff) at
/home/gaoyuan/php-5.5.0/main/streams/streams.c:1353
#15 0x00000000006481d5 in php_stream_xport_connect
(stream=0x7fbf8ddade38, name=0x7fbf8dd7a296 "www.sina.com.cn:80",
namelen=18, asynchronous=0, timeout=0x7fffe27bd340,
error_text=0x7fffe27bc528, error_code=0x0) at
/home/gaoyuan/php-5.5.0/main/streams/transports.c:243
#16 0x000000000064891b in _php_stream_xport_create (name=0x7fbf8dd7a296
"www.sina.com.cn:80", namelen=18, options=0, flags=<value optimized
out>, persistent_id=0x0, timeout=0x7fffe27bd340,
context=0x7fbf8ddadc30, error_string=0x7fffe27bd378, error_code=0x0)
at /home/gaoyuan/php-5.5.0/main/streams/transports.c:143
#17 0x00000000005e465a in php_stream_url_wrap_http_ex (wrapper=0xbe7fc0,
path=0x7fbf806e71c0 "http://www.sina.com.cn",
mode=0x8bcbfa "rb",
options=0, opened_path=0x0,
context=0x7fbf8ddadc30, redirect_max=20, flags=1) at
/home/gaoyuan/php-5.5.0/ext/standard/http_fopen_wrapper.c:183
#18 0x00000000005e7968 in php_stream_url_wrap_http
(wrapper=0x7fffe27bba90, path=0x2559 <Address 0x2559 out of bounds>,
mode=0x7fbf889e3160 "\016", options=-1, opened_path=0x0,
context=0x90000001) at
/home/gaoyuan/php-5.5.0/ext/standard/http_fopen_wrapper.c:926
#19 0x000000000063ec5b in _php_stream_open_wrapper_ex
(path=0x7fbf806e71c0 "http://www.sina.com.cn",
mode=0x8bcbfa "rb",
options=0, opened_path=0x0, context=0x7fbf8ddadc30)
at /home/gaoyuan/php-5.5.0/main/streams/streams.c:2051
#20 0x00000000005ae6dc in zif_file_get_contents (ht=12599104,
return_value=0x7fbf8ddadc00, return_value_ptr=<value optimized out>,
this_ptr=<value optimized out>,
return_value_used=<value optimized out>) at
/home/gaoyuan/php-5.5.0/ext/standard/file.c:540
#21 0x000000000053473d in phar_file_get_contents (ht=1,
return_value=0x7fbf8ddadc00, return_value_ptr=0x0, this_ptr=0x0,
return_value_used=0)
at /home/gaoyuan/php-5.5.0/ext/phar/func_interceptors.c:225
#22 0x00000000006b9559 in zend_do_fcall_common_helper_SPEC
(execute_data=0x7fbf8dd7b0d8) at
/home/gaoyuan/php-5.5.0/Zend/zend_vm_execute.h:543
#23 0x00000000006f78a8 in execute_ex (execute_data=0x7fbf8dd7b0d8) at
/home/gaoyuan/php-5.5.0/Zend/zend_vm_execute.h:356
#24 0x000000000068652b in zend_execute_scripts (type=8, retval=0x0,
file_count=3) at /home/gaoyuan/php-5.5.0/Zend/zend.c:1316
#25 0x0000000000627939 in php_execute_script
(primary_file=0x7fffe27c1e20) at
/home/gaoyuan/php-5.5.0/main/main.c:2481
#26 0x000000000073ac34 in main (argc=0, argv=<value optimized out>) at
/home/gaoyuan/php-5.5.0/sapi/fpm/fpm/fpm_main.c:1933
--
Edit bug report at https://bugs.php.net/bug.php?id=66787&edit=1
--
Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=66787&r=trysnapshot54
Try a snapshot (PHP 5.5): https://bugs.php.net/fix.php?id=66787&r=trysnapshot55
Try a snapshot (trunk): https://bugs.php.net/fix.php?id=66787&r=trysnapshottrunk
Fixed in SVN: https://bugs.php.net/fix.php?id=66787&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=66787&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=66787&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=66787&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=66787&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=66787&r=support
Expected behavior: https://bugs.php.net/fix.php?id=66787&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=66787&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=66787&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=66787&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=66787&r=php4
Daylight Savings: https://bugs.php.net/fix.php?id=66787&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=66787&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=66787&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=66787&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=66787&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=66787&r=mysqlcfg