diff options
-rw-r--r-- | addressbook/ChangeLog | 6 | ||||
-rw-r--r-- | addressbook/backend/pas/pas-backend-ldap.c | 11 |
2 files changed, 17 insertions, 0 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index 79d8108b9c..7eb77f55b6 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,9 @@ +2003-01-23 Chris Toshok <toshok@ximian.com> + + * backend/pas/pas-backend-ldap.c (pas_backend_ldap_connect): fix + for bug 34883 broke ssl transactions (at least those where we were + connecting to port 636). Move it to after the SSL stanza. + 2003-01-23 Ettore Perazzoli <ettore@ximian.com> * gui/component/select-names/Makefile.am (componentdir): Remove diff --git a/addressbook/backend/pas/pas-backend-ldap.c b/addressbook/backend/pas/pas-backend-ldap.c index 09a6d258de..93bbd6cbd4 100644 --- a/addressbook/backend/pas/pas-backend-ldap.c +++ b/addressbook/backend/pas/pas-backend-ldap.c @@ -691,6 +691,17 @@ pas_backend_ldap_connect (PASBackendLDAP *bl) } } + /* bind anonymously initially, we'll actually + authenticate the user properly later (in + authenticate_user) if they've selected + authentication */ + ldap_error = ldap_simple_bind_s (blpriv->ldap, NULL, NULL); + if (ldap_error == LDAP_SERVER_DOWN) { + /* we only want this to be fatal if the server is down. */ + g_warning ("failed to bind anonymously while connecting (ldap_error 0x%02x)", ldap_error); + return GNOME_Evolution_Addressbook_BookListener_RepositoryOffline; + } + ldap_error = query_ldap_root_dse (bl); /* query_ldap_root_dse will cause the actual connect(), so any tcpip problems will show up |