LDAP: do not fail on (&(...)) and filters

git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@388 3d1905a2-6b24-0410-a738-b14d5a86fcbd
This commit is contained in:
mguessan 2009-02-23 10:15:44 +00:00
parent e689c36aa8
commit ea866b0045
1 changed files with 8 additions and 1 deletions

View File

@ -117,6 +117,7 @@ public class LdapConnection extends AbstractConnection {
static final int LDAP_SIZE_LIMIT_EXCEEDED = 4;
static final int LDAP_INVALID_CREDENTIALS = 49;
static final int LDAP_FILTER_AND = 0xa0;
static final int LDAP_FILTER_OR = 0xa1;
// LDAP filter operators (only LDAP_FILTER_SUBSTRINGS is supported)
@ -447,7 +448,13 @@ public class LdapConnection extends AbstractConnection {
int ldapFilterOperator = reqBer.parseSeq(null);
parseSimpleFilter(reqBer, criteria, ldapFilterOperator);
}
// simple filter
} else if (ldapFilterType == LDAP_FILTER_AND) {
DavGatewayTray.warn("Unsupported filter");
while (reqBer.getParsePosition() < end && reqBer.bytesLeft() > 0) {
int ldapFilterOperator = reqBer.parseSeq(null);
parseSimpleFilter(reqBer, criteria, ldapFilterOperator);
}
// simple filter
} else {
parseSimpleFilter(reqBer, criteria, ldapFilterType);
}