[Dovecot] [PATCH] change old style SASL discovery code

Andrey Panin pazke at donpac.ru
Thu Oct 7 11:26:11 EEST 2004


Hello,

this patch reworks old-style SASL discovery code. With this
patch applied it advertises all configured SASL mechanisms.
It makes possible for MS Outlook to use all installed 
security service providers (SSP), so if someone crazy enough
will write CRAM-MD5 or DIGEST-MD5 SSP we'll support it readily :)

Please consider applying.

Best regards.

-- 
Andrey Panin		| Linux and UNIX system administrator
pazke at donpac.ru		| PGP key: wwwkeys.pgp.net
-------------- next part --------------
diff -urpX /usr/share/dontdiff dovecot-1.0-test46.vanilla/src/pop3-login/client-authenticate.c dovecot-1.0-test46/src/pop3-login/client-authenticate.c
--- dovecot-1.0-test46.vanilla/src/pop3-login/client-authenticate.c	2004-09-15 17:19:12.000000000 +0400
+++ dovecot-1.0-test46/src/pop3-login/client-authenticate.c	2004-10-05 20:43:18.000000000 +0400
@@ -284,16 +284,19 @@ int cmd_auth(struct pop3_client *client,
 	string_t *buf;
 	size_t argslen;
 
-	if (*args == '\0' &&
-	    auth_client_find_mech(auth_client, "NTLM") != NULL) {
-		/* This is needed to allow MS Outlook to use NTLM
-		   authentication. Sometimes this kludge is called
-		   "old-style SASL discovery". */
+	if (*args == '\0') {
+		/* Old-style SASL discovery, used by MS Outlook */
+		int i, count;
 		client_send_line(client, "+OK");
- 		client_send_line(client, "NTLM");
+		mech = auth_client_get_available_mechs(auth_client, &count);
+		for (i = 0; i < count; i++) {
+			if (mech[i].advertise) {
+		 		client_send_line(client, mech[i].name);
+			}
+		}
  		client_send_line(client, ".");
  		return TRUE;
- 	}
+	}
 
 	/* <mechanism name> <initial response> */
 	p = strchr(args, ' ');
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://dovecot.org/pipermail/dovecot/attachments/20041007/930099f8/attachment-0001.bin>


More information about the dovecot mailing list