Bug #64302 [Opn->Csd]: Invalid read in ext/phar/tests/bug52013.phpt

From: Date: Sun, 04 Feb 2018 17:13:34 +0000
Subject: Bug #64302 [Opn->Csd]: Invalid read in ext/phar/tests/bug52013.phpt
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-213806@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64302&edit=1 ID: 64302 Updated by: bishop@php.net Reported by: ab@php.net Summary: Invalid read in ext/phar/tests/bug52013.phpt -Status: Open +Status: Closed Type: Bug Package: PHAR related Operating System: all PHP Version: 5.5Git-2013-02-26 (Git) -Assigned To: +Assigned To: bishop Block user comment: N Private report: N New Comment: As of PHP 7.1 on a 64-bit Intel, I'm not able to reproduce: $ valgrind --tool=memcheck --leak-check=full -v sapi/cli/php -d phar.readonly=0 ./ext/phar/tests/bug52013.php ... ==55816== HEAP SUMMARY: ==55816== in use at exit: 966 bytes in 20 blocks ==55816== total heap usage: 12,451 allocs, 12,431 frees, 1,769,055 bytes allocated ==55816== ==55816== Searching for pointers to 20 not-freed blocks ==55816== Checked 647,512 bytes ==55816== ==55816== LEAK SUMMARY: ==55816== definitely lost: 0 bytes in 0 blocks ==55816== indirectly lost: 0 bytes in 0 blocks ==55816== possibly lost: 0 bytes in 0 blocks ==55816== still reachable: 966 bytes in 20 blocks ==55816== suppressed: 0 bytes in 0 blocks ==55816== Reachable blocks (those to which a pointer was found) are not shown. ==55816== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==55816== ==55816== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) ==55816== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) Those leaked bytes are outside the PHAR call stack. Example: ==55838== 400 bytes in 1 blocks are still reachable in loss record 20 of 20 ==55838== at 0x4C29BE3: malloc (vg_replace_malloc.c:299) ==55838== by 0x60069F1: xmlInitCharEncodingHandlers (encoding.c:1395) ==55838== by 0x600F994: xmlInitParser__internal_alias.part.17 (parser.c:14904) ==55838== by 0x45C908: php_libxml_initialize (libxml.c:755) ==55838== by 0x45C95F: zm_startup_libxml (libxml.c:794) ==55838== by 0x7028DD: zend_startup_module_ex (zend_API.c:1843) ==55838== by 0x70299B: zend_startup_module_zval (zend_API.c:1858) ==55838== by 0x70F7EA: zend_hash_apply (zend_hash.c:1507) ==55838== by 0x702C49: zend_startup_modules (zend_API.c:1969) ==55838== by 0x69ED6D: php_module_startup (main.c:2300) ==55838== by 0x7979CC: php_cli_startup (php_cli.c:427) ==55838== by 0x42D8C4: main (php_cli.c:1348) If this is not the correct reproduction and the bug still exists, please re-open with further reproduction details. Previous Comments: ------------------------------------------------------------------------ [2013-02-26 11:33:25] laruence@php.net same in 5.3 ------------------------------------------------------------------------ [2013-02-26 10:24:21] ab@php.net Description: ------------ Running the mentioned test with valgrind is to see Expected result: ---------------- no valgrind warnings Actual result: -------------- ==22761== Syscall param write(buf) points to uninitialised byte(s) ==22761== at 0x5924EB3: __write_nocancel (syscall-template.S:82) ==22761== by 0x85852E8: _php_stream_filter_flush (filter.c:504) ==22761== by 0x831BE2F: phar_flush (phar.c:2903) ==22761== by 0x832B1DE: zim_Phar_compressFiles (phar_object.c:3436) ==22761== by 0x863FFA4: zend_do_fcall_common_helper_SPEC (zend_vm_execute.h:542) ==22761== by 0x8641374: ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (zend_vm_execute.h:674) ==22761== by 0x863E004: execute_ex (zend_vm_execute.h:356) ==22761== by 0x863E9BA: zend_execute (zend_vm_execute.h:381) ==22761== by 0x85FF017: zend_execute_scripts (zend.c:1316) ==22761== by 0x85615FB: php_execute_script (main.c:2479) ==22761== by 0x875C33C: do_cli (php_cli.c:988) ==22761== by 0x875D785: main (php_cli.c:1364) ==22761== Address 0x6187d1b is 11 bytes inside a block of size 15 alloc'd ==22761== at 0x4024F20: malloc (vg_replace_malloc.c:236) ==22761== by 0x85C3E62: _emalloc (zend_alloc.c:2427) ==22761== by 0x85C4356: _estrndup (zend_alloc.c:2641) ==22761== by 0x81C613C: php_zlib_deflate_filter (zlib_filter.c:250) ==22761== by 0x8585094: _php_stream_filter_flush (filter.c:452) ==22761== by 0x831BE2F: phar_flush (phar.c:2903) ==22761== by 0x832B1DE: zim_Phar_compressFiles (phar_object.c:3436) ==22761== by 0x863FFA4: zend_do_fcall_common_helper_SPEC (zend_vm_execute.h:542) ==22761== by 0x8641374: ZEND_DO_FCALL_BY_NAME_SPEC_HANDLER (zend_vm_execute.h:674) ==22761== by 0x863E004: execute_ex (zend_vm_execute.h:356) ==22761== by 0x863E9BA: zend_execute (zend_vm_execute.h:381) ==22761== by 0x85FF017: zend_execute_scripts (zend.c:1316) ==22761== ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=64302&edit=1

« previous php.bugs (#213806) next »