From 31066b084ec7230e6c3d284c3805bc6f7e1958d2 Mon Sep 17 00:00:00 2001
From: ale <ale@incal.net>
Date: Sun, 31 Dec 2017 17:16:50 +0000
Subject: [PATCH] Support anonymous LDAP connections

Simply by setting an empty bind DN.
---
 ldap/pool.go | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/ldap/pool.go b/ldap/pool.go
index 6d8093e..c77d061 100644
--- a/ldap/pool.go
+++ b/ldap/pool.go
@@ -40,10 +40,12 @@ func (p *ConnectionPool) connect(ctx context.Context) (*ldap.Conn, error) {
 	conn := ldap.NewConn(c, false)
 	conn.Start()
 
-	conn.SetTimeout(time.Until(deadline))
-	if _, err = conn.SimpleBind(ldap.NewSimpleBindRequest(p.bindDN, p.bindPw, nil)); err != nil {
-		conn.Close()
-		return nil, err
+	if p.bindDN != "" {
+		conn.SetTimeout(time.Until(deadline))
+		if _, err = conn.SimpleBind(ldap.NewSimpleBindRequest(p.bindDN, p.bindPw, nil)); err != nil {
+			conn.Close()
+			return nil, err
+		}
 	}
 
 	return conn, err
-- 
GitLab