[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#4974) tls calls ldap_pvt_thread_self with wrong prototype



Full_Name: Hallvard B Furuseth
Version: HEAD, RE23
OS: 
URL: 
Submission from: (NULL) (129.240.202.105)
Submitted by: hallvard


libldap/tls.c calls CRYPTO_set_id_callback(ldap_pvt_thread_self), which
causes ldap_pvt_thread_self to be called with the wrong prototype.

That can cause OpenSSL to use a garbage value, e.g. if the unsigned
long it expects takes two words but ldap_pvt_thread_t is an int.

I'm fixing it in HEAD now and also inserting a check for whether
ldap_pvt_thread_t fits in an unsigned long.  Maybe the latter should go
in configure, but since OpenSSL presumably breaks anyway if that fails I
don't see much point at this time.