Author: ate
Date: Thu Dec 6 16:28:47 2007
New Revision: 601928
URL: http://svn.apache.org/viewvc?rev=601928&view=rev
Log:
Fix for JS2-826: Invalid DN values in group/role member attributes result in
null pointer dereferences in the BasePrincipalImpl class
Dennis Dam provided the patch which makes the code more robust and guarding
against configuratiion errors.
Thanks a lot Dennis!
Modified:
portals/jetspeed-2/branches/JETSPEED-2.1.3/components/security/src/java/org/apache/jetspeed/security/spi/impl/ldap/LdapMemberShipDaoImpl.java
Modified:
portals/jetspeed-2/branches/JETSPEED-2.1.3/components/security/src/java/org/apache/jetspeed/security/spi/impl/ldap/LdapMemberShipDaoImpl.java
URL:
http://svn.apache.org/viewvc/portals/jetspeed-2/branches/JETSPEED-2.1.3/components/security/src/java/org/apache/jetspeed/security/spi/impl/ldap/LdapMemberShipDaoImpl.java?rev=601928&r1=601927&r2=601928&view=diff
==============================================================================
---
portals/jetspeed-2/branches/JETSPEED-2.1.3/components/security/src/java/org/apache/jetspeed/security/spi/impl/ldap/LdapMemberShipDaoImpl.java
(original)
+++
portals/jetspeed-2/branches/JETSPEED-2.1.3/components/security/src/java/org/apache/jetspeed/security/spi/impl/ldap/LdapMemberShipDaoImpl.java
Thu Dec 6 16:28:47 2007
@@ -99,7 +99,9 @@
String cnfull = (String)it.next();
if(cnfull.toLowerCase().indexOf(getGroupFilterBase().toLowerCase())!=-1) {
String cn =
extractLdapAttr(cnfull,getRoleUidAttribute());
- groupUids.add(cn);
+ if (cn != null){
+ groupUids.add(cn);
+ }
}
}
//List uids =
getAttributes(getAttribute(getUserGroupMembershipAttribute(),
userAttributes),getGroupFilterBase());
@@ -152,7 +154,9 @@
String cnfull = (String)it.next();
if(cnfull.toLowerCase().indexOf(getRoleFilterBase().toLowerCase())!=-1) {
String cn =
extractLdapAttr(cnfull,getRoleUidAttribute());
- newAttrs.add(cn);
+ if (cn != null){
+ newAttrs.add(cn);
+ }
}else{
// No conversion required (I think!)
String cn = cnfull;
@@ -196,7 +200,9 @@
if (!StringUtils.isEmpty(uidfull)) {
if
(uidfull.toLowerCase().indexOf(getUserFilterBase().toLowerCase())!=-1) {
String uid =
extractLdapAttr(uidfull,getUserIdAttribute());
- newAttrs.add(uid);
+ if (uid != null){
+ newAttrs.add(uid);
+ }
}
}
}
@@ -330,7 +336,9 @@
String uidfull = (String)it.next();
if (!StringUtils.isEmpty(uidfull)) {
String uid =
extractLdapAttr(uidfull,getUserIdAttribute());
- userPrincipalUids.add(uid);
+ if (uid!=null){
+ userPrincipalUids.add(uid);
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]