Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .../karaf/jaas/modules/ldap/LDAPLoginModule.java | 29 ++++++++++++++++++++++
- 1 file changed, 29 insertions(+)
- diff --git a/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/ldap/LDAPLoginModule.java b/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/ldap/LDAPLoginModule.java
- index 6d759e1..49bd1c8 100644
- --- a/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/ldap/LDAPLoginModule.java
- +++ b/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/ldap/LDAPLoginModule.java
- @@ -72,6 +72,7 @@ public class LDAPLoginModule extends AbstractKarafLoginModule {
- }
- user = ((NameCallback) callbacks[0]).getName();
- + user = doRFC2254Encoding(user);
- char[] tmpPassword = ((PasswordCallback) callbacks[1]).getPassword();
- @@ -159,6 +160,34 @@ public class LDAPLoginModule extends AbstractKarafLoginModule {
- return true;
- }
- + protected String doRFC2254Encoding(String inputString) {
- + StringBuffer buf = new StringBuffer(inputString.length());
- + for (int i = 0; i < inputString.length(); i++) {
- + char c = inputString.charAt(i);
- + switch (c) {
- + case '\\':
- + buf.append("\\5c");
- + break;
- + case '*':
- + buf.append("\\2a");
- + break;
- + case '(':
- + buf.append("\\28");
- + break;
- + case ')':
- + buf.append("\\29");
- + break;
- + case '\0':
- + buf.append("\\00");
- + break;
- + default:
- + buf.append(c);
- + break;
- + }
- + }
- + return buf.toString();
- + }
- +
- public boolean abort() throws LoginException {
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement