changeset 3766:395bc6e93222 HEAD

Removed need_passdb from mechanism definitions. passdb_need_plain/credentials is enough to know that. Also give a better error message if no passdbs are set and a mechanism requires passdb.
author Timo Sirainen <tss@iki.fi>
date Wed, 28 Dec 2005 19:15:43 +0200
parents ce76b6b8ff11
children c96f2e532b9d
files src/auth/auth.c src/auth/mech-anonymous.c src/auth/mech-apop.c src/auth/mech-cram-md5.c src/auth/mech-digest-md5.c src/auth/mech-gssapi.c src/auth/mech-login.c src/auth/mech-ntlm.c src/auth/mech-plain.c src/auth/mech-rpa.c src/auth/mech.h
diffstat 11 files changed, 5 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/src/auth/auth.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/auth.c	Wed Dec 28 19:15:43 2005 +0200
@@ -128,8 +128,6 @@
 	struct mech_module_list *list;
 
 	for (list = auth->mech_modules; list != NULL; list = list->next) {
-		if (list->module.need_passdb && auth->passdbs == NULL)
-			break;
 		if (list->module.passdb_need_plain &&
 		    !auth_passdb_list_have_plain(auth))
 			break;
@@ -139,6 +137,11 @@
 	}
 
 	if (list != NULL) {
+		if (auth->passdbs == NULL) {
+			i_fatal("No passdbs specified in configuration file. "
+				"%s mechanism needs one",
+				list->module.mech_name);
+		}
 		i_fatal("%s mechanism can't be supported with given passdbs",
 			list->module.mech_name);
 	}
--- a/src/auth/mech-anonymous.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-anonymous.c	Wed Dec 28 19:15:43 2005 +0200
@@ -57,7 +57,6 @@
 
 	MEMBER(flags) MECH_SEC_ANONYMOUS,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) FALSE,
 
--- a/src/auth/mech-apop.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-apop.c	Wed Dec 28 19:15:43 2005 +0200
@@ -162,7 +162,6 @@
 
 	MEMBER(flags) MECH_SEC_PRIVATE | MECH_SEC_DICTIONARY | MECH_SEC_ACTIVE,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) TRUE,
 
--- a/src/auth/mech-cram-md5.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-cram-md5.c	Wed Dec 28 19:15:43 2005 +0200
@@ -191,7 +191,6 @@
 
 	MEMBER(flags) MECH_SEC_DICTIONARY | MECH_SEC_ACTIVE,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) TRUE,
 
--- a/src/auth/mech-digest-md5.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-digest-md5.c	Wed Dec 28 19:15:43 2005 +0200
@@ -619,7 +619,6 @@
 	MEMBER(flags) MECH_SEC_DICTIONARY | MECH_SEC_ACTIVE |
 		MECH_SEC_MUTUAL_AUTH,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) TRUE,
 
--- a/src/auth/mech-gssapi.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-gssapi.c	Wed Dec 28 19:15:43 2005 +0200
@@ -394,7 +394,6 @@
 
 	MEMBER(flags) 0,
 
-	MEMBER(need_passdb) FALSE,
 	MEMBER(passdb_need_plain) FALSE, 
 	MEMBER(passdb_need_credentials) FALSE, 
 
--- a/src/auth/mech-login.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-login.c	Wed Dec 28 19:15:43 2005 +0200
@@ -87,7 +87,6 @@
 
 	MEMBER(flags) MECH_SEC_PLAINTEXT,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) TRUE,
 	MEMBER(passdb_need_credentials) FALSE,
 
--- a/src/auth/mech-ntlm.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-ntlm.c	Wed Dec 28 19:15:43 2005 +0200
@@ -281,7 +281,6 @@
 
 	MEMBER(flags) MECH_SEC_DICTIONARY | MECH_SEC_ACTIVE,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) TRUE,
 
--- a/src/auth/mech-plain.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-plain.c	Wed Dec 28 19:15:43 2005 +0200
@@ -103,7 +103,6 @@
 
 	MEMBER(flags) MECH_SEC_PLAINTEXT,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) TRUE,
 	MEMBER(passdb_need_credentials) FALSE,
 
--- a/src/auth/mech-rpa.c	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech-rpa.c	Wed Dec 28 19:15:43 2005 +0200
@@ -614,7 +614,6 @@
 	MEMBER(flags) MECH_SEC_DICTIONARY | MECH_SEC_ACTIVE |
 		MECH_SEC_MUTUAL_AUTH,
 
-	MEMBER(need_passdb) TRUE,
 	MEMBER(passdb_need_plain) FALSE,
 	MEMBER(passdb_need_credentials) TRUE,
 
--- a/src/auth/mech.h	Sun Dec 25 13:24:45 2005 +0200
+++ b/src/auth/mech.h	Wed Dec 28 19:15:43 2005 +0200
@@ -24,7 +24,6 @@
 	const char *mech_name;
 
         enum mech_security_flags flags;
-	unsigned int need_passdb:1;
 	unsigned int passdb_need_plain:1;
 	unsigned int passdb_need_credentials:1;