dovecot-1.2: Fail if trying to give unknown parameters to passdb...

dovecot at dovecot.org dovecot at dovecot.org
Tue Dec 2 19:25:01 EET 2008


details:   http://hg.dovecot.org/dovecot-1.2/rev/0691f5294bb9
changeset: 8513:0691f5294bb9
user:      Timo Sirainen <tss at iki.fi>
date:      Tue Dec 02 19:24:57 2008 +0200
description:
Fail if trying to give unknown parameters to passdb/userdb.
Also changed error messages to be consistent.

diffstat:

10 files changed, 24 insertions(+), 5 deletions(-)
src/auth/passdb-bsdauth.c     |    3 ++-
src/auth/passdb-pam.c         |    2 +-
src/auth/passdb-passwd-file.c |    2 ++
src/auth/passdb-passwd.c      |    2 ++
src/auth/passdb-shadow.c      |    2 ++
src/auth/passdb-vpopmail.c    |    2 +-
src/auth/passdb.c             |    6 ++++++
src/auth/userdb-nss.c         |    2 +-
src/auth/userdb-vpopmail.c    |    2 +-
src/auth/userdb.c             |    6 ++++++

diffs (129 lines):

diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-bsdauth.c
--- a/src/auth/passdb-bsdauth.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-bsdauth.c	Tue Dec 02 19:24:57 2008 +0200
@@ -58,7 +58,8 @@ bsdauth_preinit(struct auth_passdb *auth
 		module->cache_key =
 			auth_cache_parse_key(auth_passdb->auth->pool,
 					     args + 10);
-	}
+	} else
+		i_fatal("passdb bsdauth: Unknown setting: %s", args);
 	return module;
 }
 
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-pam.c
--- a/src/auth/passdb-pam.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-pam.c	Tue Dec 02 19:24:57 2008 +0200
@@ -357,7 +357,7 @@ pam_preinit(struct auth_passdb *auth_pas
 			module->service_name =
 				p_strdup(auth_passdb->auth->pool, t_args[i]);
 		} else {
-			i_fatal("Unexpected PAM parameter: %s", t_args[i]);
+			i_fatal("passdb pam: Unknown setting: %s", t_args[i]);
 		}
 	}
 	return &module->module;
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-passwd-file.c
--- a/src/auth/passdb-passwd-file.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-passwd-file.c	Tue Dec 02 19:24:57 2008 +0200
@@ -139,6 +139,8 @@ passwd_file_preinit(struct auth_passdb *
 			scheme = p_strdup(auth_passdb->auth->pool, value);
 		else if (strcmp(key, "username_format") == 0)
 			format = p_strdup(auth_passdb->auth->pool, value);
+		else
+			i_fatal("passdb passwd-file: Unknown setting: %s", key);
 	}
 
 	module = p_new(auth_passdb->auth->pool,
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-passwd.c
--- a/src/auth/passdb-passwd.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-passwd.c	Tue Dec 02 19:24:57 2008 +0200
@@ -61,6 +61,8 @@ static void passwd_init(struct passdb_mo
 {
 	if (strcmp(args, "blocking=yes") == 0)
 		module->blocking = TRUE;
+	else
+		i_fatal("passdb passwd: Unknown setting: %s", args);
 
 	module->cache_key = PASSWD_CACHE_KEY;
 	module->default_pass_scheme = PASSWD_PASS_SCHEME;
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-shadow.c
--- a/src/auth/passdb-shadow.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-shadow.c	Tue Dec 02 19:24:57 2008 +0200
@@ -61,6 +61,8 @@ static void shadow_init(struct passdb_mo
 {
 	if (strcmp(args, "blocking=yes") == 0)
 		module->blocking = TRUE;
+	else
+		i_fatal("passdb shadow: Unknown setting: %s", args);
 
 	module->cache_key = SHADOW_CACHE_KEY;
 	module->default_pass_scheme = SHADOW_PASS_SCHEME;
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb-vpopmail.c
--- a/src/auth/passdb-vpopmail.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb-vpopmail.c	Tue Dec 02 19:24:57 2008 +0200
@@ -178,7 +178,7 @@ vpopmail_preinit(struct auth_passdb *aut
 			if (net_addr2ip(*tmp + 8, &module->webmail_ip) < 0)
 				i_fatal("vpopmail: Invalid webmail IP address");
 		} else {
-			i_fatal("vpopmail: Unknown setting: %s", *tmp);
+			i_fatal("passdb vpopmail: Unknown setting: %s", *tmp);
 		}
 	}
 	return &module->module;
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/passdb.c
--- a/src/auth/passdb.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/passdb.c	Tue Dec 02 19:24:57 2008 +0200
@@ -152,6 +152,12 @@ struct auth_passdb *passdb_preinit(struc
 			driver);
 	}
 
+	if (iface->preinit == NULL && iface->init == NULL &&
+	    *auth_passdb->args != '\0') {
+		i_fatal("passdb %s: No args are supported: %s",
+			driver, auth_passdb->args);
+	}
+
 	if (iface->preinit == NULL) {
 		auth_passdb->passdb =
 			p_new(auth->pool, struct passdb_module, 1);
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/userdb-nss.c
--- a/src/auth/userdb-nss.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/userdb-nss.c	Tue Dec 02 19:24:57 2008 +0200
@@ -116,7 +116,7 @@ userdb_nss_preinit(struct auth_userdb *a
 		else if (strncmp(*tmp, "service=", 8) == 0)
 			module->nss_module.name = p_strdup(pool, *tmp + 8);
 		else
-			i_fatal("userdb nss: Unknown parameter: %s", *tmp);
+			i_fatal("userdb nss: Unknown setting: %s", *tmp);
 	}
 
 	if (module->nss_module.name == NULL)
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/userdb-vpopmail.c
--- a/src/auth/userdb-vpopmail.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/userdb-vpopmail.c	Tue Dec 02 19:24:57 2008 +0200
@@ -158,7 +158,7 @@ vpopmail_preinit(struct auth_userdb *aut
 				p_strdup_until(pool, *tmp + 15, p);
 			module->quota_template_value = p_strdup(pool, p + 1);
 		} else
-			i_fatal("vpopmail userdb: Unknown args: %s", *tmp);
+			i_fatal("userdb vpopmail: Unknown setting: %s", *tmp);
 	}
 	return &module->module;
 }
diff -r 2034087a9663 -r 0691f5294bb9 src/auth/userdb.c
--- a/src/auth/userdb.c	Tue Dec 02 19:11:49 2008 +0200
+++ b/src/auth/userdb.c	Tue Dec 02 19:24:57 2008 +0200
@@ -123,6 +123,12 @@ void userdb_preinit(struct auth *auth, c
 			driver);
 	}
 
+	if (iface->preinit == NULL && iface->init == NULL &&
+	    *auth_userdb->args != '\0') {
+		i_fatal("userdb %s: No args are supported: %s",
+			driver, auth_userdb->args);
+	}
+
 	if (iface->preinit == NULL) {
 		auth_userdb->userdb =
 			p_new(auth->pool, struct userdb_module, 1);


More information about the dovecot-cvs mailing list