Bug #74962 [Opn->Nab]: protobuf extension bug

From: Date: Fri, 21 Jul 2017 11:36:36 +0000
Subject: Bug #74962 [Opn->Nab]: protobuf extension bug
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-210167@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=74962&edit=1 ID: 74962 Updated by: requinix@php.net Reported by: roczpwu at gmail dot com Summary: protobuf extension bug -Status: Open +Status: Not a bug Type: Bug Package: *General Issues Operating System: mac osx PHP Version: 7.1.7 Block user comment: N Private report: N New Comment: We do not maintain the protobuf library. https://github.com/google/protobuf/issues Look for any existing bug reports that match your problem, and if you can't find one then report it there. If Google says the bug is in PHP then we can reopen this. Previous Comments: ------------------------------------------------------------------------ [2017-07-21 11:36:28] roczpwu at gmail dot com Core was generated by `php Client.php'. Program terminated with signal 11, Segmentation fault. #0 stringdata_handler (closure=0x600000002, hd=0x322d2f0, str=0x7efe59462419 "hello", len=5, handle=0x7fff883d3820) at /root/protobuf-3.3.2/encode_decode.c:325 325 /root/protobuf-3.3.2/encode_decode.c: No such file or directory. Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-20.el7_2.x86_64 glibc-2.17-157.el7_3.5.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.14.1-27.el7_3.x86_64 libcom_err-1.42.9-9.el7.x86_64 libcurl-7.29.0-35.el7.centos.x86_64 libidn-1.28-4.el7.x86_64 libjpeg-turbo-1.2.90-5.el7.x86_64 libmcrypt-2.5.8-13.el7.x86_64 libpng-1.5.13-7.el7_2.x86_64 libselinux-2.5-6.el7.x86_64 libssh2-1.4.3-10.el7_2.1.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 nspr-4.13.1-1.0.el7_3.x86_64 nss-3.28.4-1.2.el7_3.x86_64 nss-softokn-freebl-3.16.2.3-14.4.el7.x86_64 nss-util-3.28.4-1.0.el7_3.x86_64 openssl-libs-1.0.1e-60.el7_3.1.x86_64 pcre-8.32-15.el7_2.1.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-17.el7.x86_64 (gdb) bt #0 stringdata_handler (closure=0x600000002, hd=0x322d2f0, str=0x7efe59462419 "hello", len=5, handle=0x7fff883d3820) at /root/protobuf-3.3.2/encode_decode.c:325 #1 0x00007efe58ec4cc7 in upb_sink_putstring (handle=0x7fff883d3820, n=5, buf=<optimized out>, sel=2, s=<optimized out>) at /root/protobuf-3.3.2/upb.h:6285 #2 run_decoder_vm (d=0x7fff883d3908, group=<optimized out>, handle=0x7fff883d3820) at /root/protobuf-3.3.2/upb.c:9942 #3 0x00007efe58eb6b86 in upb_bytessink_putbuf (s=0x7fff883d3910, handle=0x7fff883d3820, size=22, buf=0x7efe59462408 "\202\262\226\001\005world\312\363\225\001\a\n\005hello", subc=<optimized out>) at /root/protobuf-3.3.2/upb.h:6228 #4 upb_bufsrc_putbuf ( buf=0x7efe59462408 "\202\262\226\001\005world\312\363\225\001\a\n\005hello", len=22, sink=0x7fff883d3910) at /root/protobuf-3.3.2/upb.c:5106 #5 0x00007efe58ead8f1 in zim_Message_mergeFromString ( execute_data=<optimized out>, return_value=<optimized out>) at /root/protobuf-3.3.2/encode_decode.c:1449 #6 0x000000000089a696 in ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER () at /root/php-7.1.7/Zend/zend_vm_execute.h:970 #7 0x000000000084930b in execute_ex (ex=<optimized out>) at /root/php-7.1.7/Zend/zend_vm_execute.h:429 #8 0x000000000089c3f4 in zend_execute (op_array=0x7efe59480000, op_array@entry=0x7efe59463ae0, return_value=return_value@entry=0x7efe59413030) at /root/php-7.1.7/Zend/zend_vm_execute.h:474 #9 0x00000000008045a4 in zend_execute_scripts (type=type@entry=8, retval=0x7efe59413030, retval@entry=0x0, file_count=file_count@entry=3) at /root/php-7.1.7/Zend/zend.c:1476 #10 0x00000000007a56f0 in php_execute_script ( primary_file=primary_file@entry=0x7fff883d6d50) at /root/php-7.1.7/main/main.c:2537 #11 0x000000000089e58f in do_cli (argc=2, argv=0x306dae0) at /root/php-7.1.7/sapi/cli/php_cli.c:993 #12 0x000000000043cea0 in main (argc=2, argv=0x306dae0) at /root/php-7.1.7/sapi/cli/php_cli.c:1381 (gdb) source /root/php-7.1.7/.gdbinit (gdb) zbacktrace [0x7efe59413260] Google\Protobuf\Internal\Message->mergeFromString("\37777777602\37777777662\37777777626\1\5world\37777777712\37777777763\37777777625\1\7\12\5hello") [internal function] [0x7efe59413030] (main) /root/test/tsf2.0/App/Udp/Client.php:26 (gdb) ------------------------------------------------------------------------ [2017-07-21 11:14:26] roczpwu at gmail dot com backtrace is shown as below: additionaly, protobuf extension version is 3.3.2 ================================================= Core was generated by `php Client.php'. Program terminated with signal 11, Segmentation fault. #0 stringdata_handler (closure=0x600000002, hd=0x322d2f0, str=0x7efe59462419 "hello", len=5, handle=0x7fff883d3820) at /root/protobuf-3.3.2/encode_decode.c:325 325 /root/protobuf-3.3.2/encode_decode.c: No such file or directory. Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-20.el7_2.x86_64 glibc-2.17-157.el7_3.5.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.14.1-27.el7_3.x86_64 libcom_err-1.42.9-9.el7.x86_64 libcurl-7.29.0-35.el7.centos.x86_64 libidn-1.28-4.el7.x86_64 libjpeg-turbo-1.2.90-5.el7.x86_64 libmcrypt-2.5.8-13.el7.x86_64 libpng-1.5.13-7.el7_2.x86_64 libselinux-2.5-6.el7.x86_64 libssh2-1.4.3-10.el7_2.1.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 nspr-4.13.1-1.0.el7_3.x86_64 nss-3.28.4-1.2.el7_3.x86_64 nss-softokn-freebl-3.16.2.3-14.4.el7.x86_64 nss-util-3.28.4-1.0.el7_3.x86_64 openssl-libs-1.0.1e-60.el7_3.1.x86_64 pcre-8.32-15.el7_2.1.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-17.el7.x86_64 ------------------------------------------------------------------------ [2017-07-21 09:57:34] requinix@php.net 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. ------------------------------------------------------------------------ [2017-07-21 09:42:36] roczpwu at gmail dot com Description: ------------ I generate php files using my pro file, when I invoke serializeToString method, Segment fault: 11 error occurred. Test script: --------------- proto file: syntax = "proto3"; package com; message A { string str = 1; } message B { A a = 307001; string json_body_req = 308000; } =================================== php test file: <?php $b = new \Com\B(); $a = new \Com\A(); $a->setStr("hello"); $b->setJsonBodyReq("world"); $b->setA($a); $str = $b->serializeToString(); $b = new \Com\B(); $b->mergeFromString($str); var_dump($b->getA()->getStr()); Expected result: ---------------- string(5) "hello" Actual result: -------------- Segmentation fault: 11 ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=74962&edit=1

« previous php.bugs (#210167) next »