From 7847af6e63e7adef6ec8d99a1809e91472d2bc2d Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 05 Sep 2013 09:14:22 -0400
Subject: [PATCH] Restore blockpush and localclone hooks to binaries (issue-303)

---
 src/main/java/com/gitblit/LdapUserService.java |   23 +++++++++++++++++------
 1 files changed, 17 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/gitblit/LdapUserService.java b/src/main/java/com/gitblit/LdapUserService.java
index 2867b88..b65f9bb 100644
--- a/src/main/java/com/gitblit/LdapUserService.java
+++ b/src/main/java/com/gitblit/LdapUserService.java
@@ -129,7 +129,7 @@
                                 logger.debug("detecting removed LDAP users...");
 
                                 for (UserModel userModel : super.getAllUsers()) {
-                                    if (ExternalAccount.equals(userModel.password)) {
+                                    if (Constants.EXTERNAL_ACCOUNT.equals(userModel.password)) {
                                         if (! ldapUsers.containsKey(userModel.username)) {
                                             logger.info("deleting removed LDAP user " + userModel.username + " from backing user service");
                                             super.deleteUser(userModel.username);
@@ -170,13 +170,24 @@
 				if (ldapPort == -1)	// Default Port
 					ldapPort = 636;
 				
-				SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager()); 
-				return new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort, bindUserName, bindPassword);
+				LDAPConnection conn;
+				SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager());
+				if (StringUtils.isEmpty(bindUserName) && StringUtils.isEmpty(bindPassword)) {
+					 conn = new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort);
+				} else {
+					 conn = new LDAPConnection(sslUtil.createSSLSocketFactory(), ldapUrl.getHost(), ldapPort, bindUserName, bindPassword);
+				}
+				return conn;
 			} else {
 				if (ldapPort == -1)	// Default Port
 					ldapPort = 389;
-				
-				LDAPConnection conn = new LDAPConnection(ldapUrl.getHost(), ldapPort, bindUserName, bindPassword);
+
+				LDAPConnection conn;
+				if (StringUtils.isEmpty(bindUserName) && StringUtils.isEmpty(bindPassword)) {
+					conn = new LDAPConnection(ldapUrl.getHost(), ldapPort);	
+				} else {
+					conn = new LDAPConnection(ldapUrl.getHost(), ldapPort, bindUserName, bindPassword);	
+				}
 
 				if (ldapUrl.getScheme().equalsIgnoreCase("ldap+tls")) {
 					SSLUtil sslUtil = new SSLUtil(new TrustAllTrustManager());
@@ -344,7 +355,7 @@
 		setAdminAttribute(user);
 		
 		// Don't want visibility into the real password, make up a dummy
-		user.password = ExternalAccount;
+		user.password = Constants.EXTERNAL_ACCOUNT;
 		user.accountType = getAccountType();
 		
 		// Get full name Attribute

--
Gitblit v1.9.1