Looks like there may be a possible bug
in above version in 
file: crypto/lhash/lhash.c
routine: expand(...)
line#:321

cause: in file: crypto/evp/c_allc.c
routine:OpenSSL_add_all_ciphers(void)
If I try to add ALL ciphers and algorithms
(i.e, donot define any of "NO_RC4, ..." ).
Then, the code path runtime at sometime seems to fall 
through expand(..) routine which is causing SIGSEGV
(per attached below.
The problem needs to be investigated and fixed.

temporary fix:
change in file: lhash.c:
#define MIN_NODES   16
to
#define MIN_NODES   128
This seems to fix above, but donot know if this
would be the correct solution.

Tested using versions:
OpenSSL 0.9.5a  1 Apr 2000  with
OpenSSH_2.3.1p1   running on
NetBSD 1.4.2


---------------------------------
Program received signal SIGSEGV, Segmentation fault.
0x2ddce in expand (lh=0xd3080) at openssl/crypto/lhash/lhash.c:321
321                             np->next= *n2;
(gdb) where
#0  0x2ddce in expand (lh=0xd3080) at openssl/crypto/lhash/lhash.c:321
#1  0x2dff4 in lh_insert (lh=0xd3080, data=0xd8800)
    at openssl/crypto/lhash/lhash.c:187
#2  0x2efec in OBJ_NAME_add (name=0x3054a "RC4", type=2, data=0xbc0c0
"\005")
    at openssl/crypto/objects/o_names.c:171
#3  0x4c23a in EVP_add_cipher (c=0xbc0c0)
    at openssl/crypto/evp/names.c:69
#4  0x2ceca in OpenSSL_add_all_ciphers ()
    at openssl/crypto/evp/c_allc.c:94
#5  0x2ccf8 in OpenSSL_add_all_algorithms ()
    at openssl/crypto/evp/c_all.c:65
#6  0x29a4 in main (ac=1, av=0xefbfd628) at openssh/ssh-keygen.c:649
(gdb)
(gdb) p n2
$1 = (LHASH_NODE **) 0xd9040
(gdb) p *n2
$2 = (LHASH_NODE *) 0x0
(gdb) p np
$3 = (LHASH_NODE *) 0x8d7ca
(gdb) p np->next
$4 = (struct lhash_node_st *) 0xe8510c4d

-------------------------



______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to