summaryrefslogtreecommitdiff
path: root/src/main/java/com/c2kernel/lookup/Path.java
diff options
context:
space:
mode:
authorAndrew Branson <andrew.branson@cern.ch>2013-06-13 09:58:56 +0200
committerAndrew Branson <andrew.branson@cern.ch>2013-06-13 09:58:56 +0200
commitad89155aefdc8cc757657a5c57da6624d8e8b25d (patch)
tree5eb337c496790a82622059c0787233bfb1253a79 /src/main/java/com/c2kernel/lookup/Path.java
parentaf23ac49a616990c4414e998f2611a1247f90d1f (diff)
Escape DNs in Path, so special characters can be used in Path
components. Fixes #125
Diffstat (limited to 'src/main/java/com/c2kernel/lookup/Path.java')
-rw-r--r--src/main/java/com/c2kernel/lookup/Path.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/main/java/com/c2kernel/lookup/Path.java b/src/main/java/com/c2kernel/lookup/Path.java
index 16d4f07..4bec43a 100644
--- a/src/main/java/com/c2kernel/lookup/Path.java
+++ b/src/main/java/com/c2kernel/lookup/Path.java
@@ -176,7 +176,7 @@ public abstract class Path implements Serializable
while (tok.hasMoreTokens()) {
String nextPath = tok.nextToken();
if (nextPath.indexOf("cn=") == 0)
- newPath.add(0, nextPath.substring(3));
+ newPath.add(0, LDAPLookupUtils.unescapeDN(nextPath.substring(3)));
else
break;
}
@@ -188,6 +188,7 @@ public abstract class Path implements Serializable
/*************************************************************************/
+
/*
* Getter Methods
*/
@@ -215,7 +216,7 @@ public abstract class Path implements Serializable
if (mDN == null) {
StringBuffer dnBuffer = new StringBuffer();
for (int i=mPath.length-1; i>=0; i--)
- dnBuffer.append("cn=").append(mPath[i]).append(",");
+ dnBuffer.append("cn=").append(LDAPLookupUtils.escapeDN(mPath[i])).append(",");
dnBuffer.append("cn="+getRoot()+",");
mDN = dnBuffer.toString();
}