Index: DigestAuthenticator.java =================================================================== --- DigestAuthenticator.java (revision 344190) +++ DigestAuthenticator.java (working copy) @@ -221,10 +221,8 @@ return (null); authorization = authorization.substring(7).trim(); - - StringTokenizer commaTokenizer = - new StringTokenizer(authorization, ","); - + String[] tokens = authorization.split(",(?=(?:[^\"]*\"[^\"]*\")+$)"); + String userName = null; String realmName = null; String nOnce = null; @@ -235,8 +233,11 @@ String response = null; String method = request.getMethod(); - while (commaTokenizer.hasMoreTokens()) { - String currentToken = commaTokenizer.nextToken(); + for (int i = 0; i < tokens.length; i++) { + String currentToken = tokens[i]; + if (currentToken.length() == 0) + continue; + int equalSign = currentToken.indexOf('='); if (equalSign < 0) return null;