From e2ff92c6fc18dddd771a1e0c4e46b015eed2dc4a Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Sat, 11 Nov 2000 03:01:00 +0000 Subject: [PATCH] Set outbound connection to use the same protocol version as the inbound. --- servers/slapd/back-ldap/bind.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/servers/slapd/back-ldap/bind.c b/servers/slapd/back-ldap/bind.c index 921bbe0cdc..bd1af5af8b 100644 --- a/servers/slapd/back-ldap/bind.c +++ b/servers/slapd/back-ldap/bind.c @@ -74,6 +74,7 @@ ldap_back_getconn(struct ldapinfo *li, Connection *conn, Operation *op) /* Looks like we didn't get a bind. Open a new session... */ if (!lc) { + int vers = conn->c_protocol; int err = ldap_initialize(&ld, li->url); if (err != LDAP_SUCCESS) { err = ldap_back_map_result(err); @@ -81,6 +82,11 @@ ldap_back_getconn(struct ldapinfo *li, Connection *conn, Operation *op) NULL, "ldap_init failed", NULL, NULL ); return( NULL ); } + /* Set LDAP version. This will always succeed: If the client + * bound with a particular version, then so can we. + */ + ldap_set_option(ld, LDAP_OPT_PROTOCOL_VERSION, &vers); + lc = (struct ldapconn *)ch_malloc(sizeof(struct ldapconn)); lc->conn = conn; lc->ld = ld; -- 2.39.5