Damjan Jovanovic : wldap32: Implement setting the LDAP_OPT_REFERRALS option.

Alexandre Julliard julliard at winehq.org
Tue Feb 23 15:54:46 CST 2021


Module: wine
Branch: master
Commit: 99fb4b17f3ee36e5dc9775c7446ba7b2d13d0827
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=99fb4b17f3ee36e5dc9775c7446ba7b2d13d0827

Author: Damjan Jovanovic <damjan.jov at gmail.com>
Date:   Thu Feb 18 18:49:25 2021 +0200

wldap32: Implement setting the LDAP_OPT_REFERRALS option.

Signed-off-by: Damjan Jovanovic <damjan.jov at gmail.com>
Signed-off-by: Hans Leidekker <hans at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wldap32/option.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/dlls/wldap32/option.c b/dlls/wldap32/option.c
index cf948bf037c..388432a442c 100644
--- a/dlls/wldap32/option.c
+++ b/dlls/wldap32/option.c
@@ -497,11 +497,20 @@ ULONG CDECL ldap_set_optionW( WLDAP32_LDAP *ld, int option, void *value )
         controlarrayfreeU( ctrlsU );
         return ret;
     }
+    case WLDAP32_LDAP_OPT_REFERRALS:
+    {
+        void *openldap_referral = LDAP_OPT_ON;
+        if (value == LDAP_OPT_OFF)
+            openldap_referral = LDAP_OPT_OFF;
+        else
+            FIXME("upgrading referral value %p to LDAP_OPT_ON (OpenLDAP lacks sufficient granularity)\n", value);
+        return map_error( ldap_set_option( ld->ld, option, openldap_referral ));
+        break;
+    }
     case WLDAP32_LDAP_OPT_DEREF:
     case WLDAP32_LDAP_OPT_DESC:
     case WLDAP32_LDAP_OPT_ERROR_NUMBER:
     case WLDAP32_LDAP_OPT_PROTOCOL_VERSION:
-    case WLDAP32_LDAP_OPT_REFERRALS:
     case WLDAP32_LDAP_OPT_SIZELIMIT:
     case WLDAP32_LDAP_OPT_TIMELIMIT:
         return map_error( ldap_set_option( ld->ld, option, value ));




More information about the wine-cvs mailing list