Hello. Saw a warning in another List. "warning: SASL authentication failure: Charset must be UTF-8" This message comes from the DIGEST-MD5 PLugin while connecting to an smtp-Server. ... S: 250-AUTH=LOGIN S: 250-AUTH CRAM-MD5 DIGEST-MD5 LOGIN PLAIN NTLM S: 250-STARTTLS S: 250 SIZE C: AUTH DIGEST-MD5 S: 334 cmVhbG09InNtdHAuZW1haWwudm9kYWZvbmUuZGUiLG5vbmNlPSI3NmQ5NDQ4OWFjMzkxMThlZWNmYjMzMzdjNjY4MzQ0NiIsYWxnb3JpdGhtPW1kNS1zZXNzLGNoYXJzZXQ9dXRmOCxxb3A9YXV0aA== Decoded: realm="smtp.email.vodafone.de",nonce="a8d13b2523e5aeecf7ce58475c64885d",algorithm=md5-sess,charset=utf8,qop=auth The Server announces it's Charset as "utf8" not "utf-8", Cyrus-SASL does not like this and throws the warning. Maybe it's safe to check both. -- Andreas
diff -Naur cyrus-sasl-2.1.22-vanilla/plugins/digestmd5.c cyrus-sasl-2.1.22/plugins/digestmd5.c --- cyrus-sasl-2.1.22-vanilla/plugins/digestmd5.c 2006-05-17 18:46:17.000000000 +0200 +++ cyrus-sasl-2.1.22/plugins/digestmd5.c 2006-05-24 22:15:24.628767968 +0200 @@ -3380,7 +3380,7 @@ goto FreeAllocatedMem; } } else if (strcasecmp(name, "charset") == 0) { - if (strcasecmp(value, "utf-8") != 0) { + if ((strcasecmp(value, "utf-8") != 0) && (strcasecmp(value, "utf8") != 0)) { result = SASL_BADAUTH; params->utils->seterror(params->utils->conn, 0, "Charset must be UTF-8");