Bug #14692 Updated: Crash
| From: | derick@php.net | Date: | Tue, 25 Dec 2001 16:41:06 +0000 |
| Subject: | Bug #14692 Updated: Crash | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-74964@lists.php.net to get a copy of this message | ||
ID: 14692
Updated by: derick
Reported By: sitnikov@infonet.ee
Old Status: Open
Status: Closed
Bug Type: mcrypt related
Operating System: Linux
PHP Version: 4.1.0
New Comment:
This is not a PHP bug, but in libmcrypt. I reported this to the author of the library.
This is the C code I used for it:
#include <unistd.h>
#include <mcrypt.h>
void main (void)
{
int res;
res = mcrypt_module_is_block_algorithm ("gost", NULL);
}
This one works, the next does not (segfaults):
#include <unistd.h>
#include <mcrypt.h>
void main (void)
{
int res;
res = mcrypt_module_is_block_algorithm_mode ("gost", NULL);
}
regards,
Derick
Previous Comments:
------------------------------------------------------------------------
[2001-12-25 11:18:30] sitnikov@infonet.ee
i use php-4.1.1
------------------------------------------------------------------------
[2001-12-25 11:18:16] sitnikov@infonet.ee
I know what it is buggy script, but it not the justification for "Segmentation".
Your script work for me and print "false"
------------------------------------------------------------------------
[2001-12-25 11:09:03] derick@php.net
Hello,
your script is buggy, GOST, is not a mode, but an algorithm.
It indeed crashes with this code, but to me it seems like it is an libmcrypt problem.
If you use this:
<?
if (mcrypt_module_is_block_algorithm(MCRYPT_GOST))
echo "true\n";
else
echo "false\n";
?>
it works, but it returns true if it is NOT a block algorithm, which is a bug in the extension.
(mcrypt returns 1 if it is a block algorithm).
Can you confirm that it does not crash with the script I pasted?
Derick
------------------------------------------------------------------------
[2001-12-25 10:29:26] sitnikov@infonet.ee
libmcrypt-2.4.18
------------------------------------------------------------------------
[2001-12-25 10:13:04] sitnikov@infonet.ee
Crash to:
<?
if (mcrypt_module_is_block_algorithm_mode(MCRYPT_GOST))
echo "true\n";
else
echo "false\n";
?>
(gdb) bt
#0 0x00000000 in ?? ()
#1 0x4023d8de in mcrypt_module_is_block_algorithm_mode (mode=0x83c1d34 "gost",
m_directory=0x0) at mcrypt_modules.c:610
#2 0x0814d1bf in zif_mcrypt_module_is_block_algorithm_mode (ht=1, return_value=0x83c1d6c,
this_ptr=0x0, return_value_used=1)
at mcrypt.c:876
#3 0x081aae6a in execute (op_array=0x83c1e8c) at ./zend_execute.c:1590
#4 0x080e5239 in zend_execute_scripts (type=8, retval=0x0, file_count=3) at zend.c:814
#5 0x080801c1 in php_execute_script (primary_file=0xbffff7f0) at main.c:1307
#6 0x0807a8cc in main (argc=3, argv=0xbffff864) at cgi_main.c:738
#7 0x404f19cb in __libc_start_main (main=0x8079f34 <main>, argc=3, argv=0xbffff864,
init=0x8076e1c <_init>,
fini=0x82310d0 <_fini>, rtld_fini=0x4000aea0 <_dl_fini>, stack_end=0xbffff85c) at
../sysdeps/generic/libc-start.c:92
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/?id=14692
Edit this bug report at http://bugs.php.net/?id=14692&edit=1