From f3501cbf507ead7b31ccb6499813cc26931f451e Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sun, 2 Sep 2001 12:06:41 +0000 Subject: [PATCH] Fix ldap_int_tls_start to set its error codes in ld->ld_errno. --- libraries/libldap/tls.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libraries/libldap/tls.c b/libraries/libldap/tls.c index c4a683edc2..90a11429d8 100644 --- a/libraries/libldap/tls.c +++ b/libraries/libldap/tls.c @@ -1049,7 +1049,6 @@ ldap_int_tls_start ( LDAP *ld, LDAPConn *conn, LDAPURLDesc *srv ) void *ctx = ld->ld_defconn->lconn_tls_ctx; char *host; void *ssl; - int ret; if( srv ) { host = srv->lud_host; @@ -1063,7 +1062,8 @@ ldap_int_tls_start ( LDAP *ld, LDAPConn *conn, LDAPURLDesc *srv ) * Fortunately, the lib uses blocking io... */ if ( ldap_int_tls_connect( ld, conn ) < 0 ) { - return LDAP_CONNECT_ERROR; + ld->ld_errno = LDAP_CONNECT_ERROR; + return (ld->ld_errno); } ssl = (void *) ldap_pvt_tls_sb_ctx( sb ); @@ -1073,9 +1073,11 @@ ldap_int_tls_start ( LDAP *ld, LDAPConn *conn, LDAPURLDesc *srv ) * compare host with name(s) in certificate */ - ret = ldap_pvt_tls_check_hostname( ssl, host ); - if (ret != LDAP_SUCCESS) - return ret; + ld->ld_errno = ldap_pvt_tls_check_hostname( ssl, host ); + if (ld->ld_errno != LDAP_SUCCESS) + { + return ld->ld_errno; + } /* * set SASL properties to TLS ssf and authid -- 2.39.5