Is this the correct list to post bug reports to?
There is a bug in cryptlib.c when using app locks. It is in both 0.9.6c and 0.9.7 beta 3. In 0.9.7 beta3 CRYPTO_NUM_LOCKS is 31. When requesting an app lock this code gets called: int CRYPTO_get_new_lockid(char *name) { char *str; int i; ... i=sk_push(app_locks,str); if (!i) OPENSSL_free(str); else i+=CRYPTO_NUM_LOCKS; /* gap of one :-) */ return(i); } which returns 32 for the new app lock. Note that, as the comment says, there is a gap of one; there is no lock numbered 31. Now when you try to access the name of that new lock, 32, this code is called: const char *CRYPTO_get_lock_name(int type) { if (type < 0) return("dynamic"); else if (type < CRYPTO_NUM_LOCKS) return(lock_names[type]); else if (type-CRYPTO_NUM_LOCKS >= sk_num(app_locks)) return("ERROR"); else return(sk_value(app_locks,type-CRYPTO_NUM_LOCKS)); } However since type-CRYPTO_NUM_LOCKS is 1 and that is >= the number of app locks, 1, you get "ERROR" instead of the lock's name. This can be fixed by not having the gap, or by compensating for the gap. I don't know what the original intention was in having the gap so I'm not sure what the best way to fix it is. Tim __________________________________________________ Do You Yahoo!? HotJobs - Search Thousands of New Jobs ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [EMAIL PROTECTED] Automated List Manager [EMAIL PROTECTED]