goto error_exit;
                }
 
+               SSL_CTX_set_session_id_context( tls_def_ctx,
+                       "OpenLDAP", sizeof("OpenLDAP")-1 );
                if ( tls_opt_ciphersuite &&
                        !SSL_CTX_set_cipher_list( tls_def_ctx, ciphersuite ) )
                {
        
        xn = X509_get_subject_name(x);
        rc = ldap_X509dn2bv(xn, dn, (LDAPDN_rewrite_func *)func, flags );
-       X509_free(x);
        return rc;
 }
 
        
        xn = X509_get_subject_name(x);
        rc = ldap_X509dn2bv(xn, dn, (LDAPDN_rewrite_func *)func, flags);
-       X509_free(x);
        return rc;
 }
 
 
        ret = X509_NAME_get_text_by_NID(xn, NID_commonName, buf, sizeof(buf));
        if( ret == -1 ) {
-               X509_free(x);
                return NULL;
        }
 
        p = LDAP_STRDUP(buf);
-       X509_free(x);
        return p;
 }
 
                        ret = LDAP_SUCCESS;
                }
        }
-       X509_free(x);
        return ret;
 }
 
        
        xn = X509_get_issuer_name(x);
        p = LDAP_STRDUP(X509_NAME_oneline(xn, buf, sizeof(buf)));
-       X509_free(x);
        return p;
 #else
        return NULL;