From 65f55e2a2cdbce33ed4d2d7111b49ff00b2fd575 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 06 Aug 2012 17:39:25 -0400
Subject: [PATCH] Drop failed attempt to add user or team (issue 118)
---
src/com/gitblit/LdapUserService.java | 29 ++++++++++++++---------------
1 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/src/com/gitblit/LdapUserService.java b/src/com/gitblit/LdapUserService.java
index 78b5f99..61de01d 100644
--- a/src/com/gitblit/LdapUserService.java
+++ b/src/com/gitblit/LdapUserService.java
@@ -27,6 +27,7 @@
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
+import com.gitblit.utils.ArrayUtils;
import com.gitblit.utils.StringUtils;
import com.unboundid.ldap.sdk.Attribute;
import com.unboundid.ldap.sdk.LDAPConnection;
@@ -140,17 +141,6 @@
return !settings.getBoolean(Keys.realm.ldap.maintainTeams, false);
}
- /**
- * Does the user service support cookie authentication?
- *
- * @return true or false
- */
- @Override
- public boolean supportsCookies() {
- // TODO cookies need to be reviewed
- return false;
- }
-
@Override
public UserModel authenticate(String username, char[] password) {
String simpleUsername = getSimpleUsername(username);
@@ -173,8 +163,11 @@
UserModel user = getUserModel(simpleUsername);
if (user == null) // create user object for new authenticated user
user = new UserModel(simpleUsername);
-
-
+
+ // create a user cookie
+ if (StringUtils.isEmpty(user.cookie) && !ArrayUtils.isEmpty(password)) {
+ user.cookie = StringUtils.getSHA1(user.username + new String(password));
+ }
if (!supportsTeamMembershipChanges())
getTeamsFromLdap(ldapConnection, simpleUsername, loggingInUser, user);
@@ -227,7 +220,10 @@
user.displayName = displayName;
} else {
- user.displayName = userEntry.getAttribute(displayName).getValue();
+ Attribute attribute = userEntry.getAttribute(displayName);
+ if (attribute != null && attribute.hasValue()) {
+ user.displayName = attribute.getValue();
+ }
}
}
@@ -240,7 +236,10 @@
user.emailAddress = email;
} else {
- user.emailAddress = userEntry.getAttribute(email).getValue();
+ Attribute attribute = userEntry.getAttribute(email);
+ if (attribute != null && attribute.hasValue()) {
+ user.emailAddress = attribute.getValue();
+ }
}
}
}
--
Gitblit v1.9.1