openswoole / ext-openswoole

Programmatic server for PHP with async IO, coroutines and fibers
https://openswoole.com
Apache License 2.0
808 stars 51 forks source link

openssl 1.1.1n error #199

Closed AngusDV closed 2 years ago

AngusDV commented 2 years ago

my program run without SWOOLE_SSL but when i am use SWOOLE_SSL get error Segmentation fault. Please answer these questions before submitting your issue.

  1. What did you do? If possible, provide a simple script for reproducing the error. $server = new Server("0.0.0.0", 9502, SWOOLE_PROCESS,SWOOLE_SOCK_TCP | SWOOLE_SSL); $server->set([ 'daemonize' => false, 'ssl_verify_peer' => true, 'dispatch_mode' => 2, 'debug_mode' => 1, 'open_websocket_protocol' => true, 'log_file' => "./swoole.log", 'buffer_output_size' => 32 1024 1024, 'ssl_cert_file' => env('WS_SSL_CERT_FILE'), 'ssl_key_file' => env('WS_SSL_KEY_FILE'), ]);

  2. What did you expect to see? just run

  3. What did you see instead? [root@vps1708 panel]# gdb php -c core.12620 GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-120.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/... "/usr/local/bin/php": not in executable format: File format not recognized [New LWP 12620] Missing separate debuginfo for the main executable file Try: yum --enablerepo='debug' install /usr/lib/debug/.build-id/9c/1874600eef209dc28a768a2cbd7528cc807b55 Core was generated by `ea-php80 artisan swoole:serve'. Program terminated with signal 11, Segmentation fault.

    0 0x00007fbdc313ebc0 in ?? ()

    (gdb) bt

    0 0x00007fbdc313ebc0 in ?? ()

    1 0x00007fbdbedbda9d in ?? ()

    2 0x0000000003055920 in ?? ()

    3 0x0000000003055920 in ?? ()

    4 0x00000000030557a0 in ?? ()

    5 0x00007fbdae49bae1 in ?? ()

    6 0x0000000000000000 in ?? ()

  4. What version of OpenSwoole are you using (show your php --ri openswoole)? swoole

Swoole => enabled Author => Swoole Team team@swoole.com Version => 4.8.8 Built => Mar 31 2022 09:09:00 coroutine => enabled with boost asm context epoll => enabled eventfd => enabled signalfd => enabled cpu_affinity => enabled spinlock => enabled rwlock => enabled sockets => enabled openssl => OpenSSL 1.1.1n 15 Mar 2022 dtls => enabled http2 => enabled json => enabled curl-native => enabled pcre => enabled zlib => 1.2.7 mutex_timedlock => enabled pthread_barrier => enabled futex => enabled mysqlnd => enabled async_redis => enabled

Directive => Local Value => Master Value swoole.enable_coroutine => On => On swoole.enable_library => On => On swoole.enable_preemptive_scheduler => Off => Off swoole.display_errors => On => On swoole.use_shortname => On => On swoole.unixsock_buffer_size => 8388608 => 8388608

  1. What is your machine environment used (show your uname -a & php -v & gcc -v) ?

    Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-1160.59.1.el7.x86_64 Architecture: x86-64

    PHP 8.0.17 (cli) (built: Mar 23 2022 07:36:32) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.17, Copyright (c) Zend Technologies with Zend OPcache v8.0.17, Copyright (c), by Zend Technologies

    Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux Thread model: posix gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)

doubaokun commented 2 years ago

You have to install openswoole by following the guide at https://openswoole.com/docs/get-started/installation

AngusDV commented 2 years ago

hi i can run my program without SWOOLE_SSL but when use SWOOLE_SSL i get error Segmentation fault.

doubaokun commented 2 years ago

You have to upgrade to openswoole latest version before reporting bugs.

AngusDV commented 2 years ago

i am removed swoole . i am install latest version of openswoole but i have error "segmentation fault". after upgrade to openssl1.1.1n i have problem with SWOOLE_SSL

[root@vps1708 panel]# php --ri openswoole

openswoole

Open Swoole => enabled Author => Open Swoole Group hello@openswoole.com Version => 4.11.0 Built => Apr 1 2022 08:31:25 coroutine => enabled with boost asm context epoll => enabled eventfd => enabled signalfd => enabled cpu_affinity => enabled spinlock => enabled rwlock => enabled sockets => enabled openssl => OpenSSL 1.1.1n 15 Mar 2022 dtls => enabled http2 => enabled json => enabled curl-native => enabled pcre => enabled zlib => 1.2.7 mutex_timedlock => enabled pthread_barrier => enabled futex => enabled mysqlnd => enabled async_redis => enabled

Directive => Local Value => Master Value swoole.enable_coroutine => On => On swoole.enable_library => On => On swoole.enable_preemptive_scheduler => Off => Off swoole.display_errors => On => On swoole.use_shortname => On => On swoole.unixsock_buffer_size => 8388608 => 8388608 [root@vps1708 panel]# ea-php80 artisan swoole:serve Segmentation fault [root@vps1708 panel]# gdb php -c core.29441 GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-120.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/... "/usr/local/bin/php": not in executable format: File format not recognized [New LWP 29441] Missing separate debuginfo for the main executable file Try: yum --enablerepo='debug' install /usr/lib/debug/.build-id/9c/1874600eef209dc28a768a2cbd7528cc807b55 Core was generated by `ea-php80 artisan swoole:serve'. Program terminated with signal 11, Segmentation fault.

0 0x00007f714859cbc0 in ?? ()

(gdb) bt

0 0x00007f714859cbc0 in ?? ()

1 0x00007f71441bda9d in ?? ()

2 0x000000000232d470 in ?? ()

3 0x000000000232d470 in ?? ()

4 0x000000000232d2f0 in ?? ()

5 0x00007f71338b45a1 in ?? ()

6 0x0000000000000000 in ?? ()