changeset 8331:8fb20b423f8b HEAD

Login processes: If auth_debug=yes, log about received unknown passdb extra fields.
author Timo Sirainen <tss@iki.fi>
date Sat, 25 Oct 2008 16:07:28 +0300
parents 16a99d3a34dd
children b41126d4379e
files src/imap-login/client-authenticate.c src/login-common/common.h src/login-common/main.c src/master/login-process.c src/pop3-login/client-authenticate.c
diffstat 5 files changed, 13 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/imap-login/client-authenticate.c	Sat Oct 25 15:55:35 2008 +0300
+++ b/src/imap-login/client-authenticate.c	Sat Oct 25 16:07:28 2008 +0300
@@ -110,6 +110,10 @@
 			destuser = *args + 9;
 		else if (strncmp(*args, "pass=", 5) == 0)
 			pass = *args + 5;
+		else if (auth_debug) {
+			i_info("Ignoring unknown passdb extra field: %s",
+			       *args);
+		}
 	}
 
 	if (destuser == NULL)
--- a/src/login-common/common.h	Sat Oct 25 15:55:35 2008 +0300
+++ b/src/login-common/common.h	Sat Oct 25 16:07:28 2008 +0300
@@ -14,7 +14,7 @@
 extern const char *login_protocol;
 
 extern bool disable_plaintext_auth, process_per_connection;
-extern bool verbose_proctitle, verbose_ssl, verbose_auth;
+extern bool verbose_proctitle, verbose_ssl, verbose_auth, auth_debug;
 extern bool ssl_require_client_cert;
 extern const char *greeting, *log_format;
 extern const char *const *log_format_elements;
--- a/src/login-common/main.c	Sat Oct 25 15:55:35 2008 +0300
+++ b/src/login-common/main.c	Sat Oct 25 16:07:28 2008 +0300
@@ -20,7 +20,7 @@
 #include <syslog.h>
 
 bool disable_plaintext_auth, process_per_connection;
-bool verbose_proctitle, verbose_ssl, verbose_auth;
+bool verbose_proctitle, verbose_ssl, verbose_auth, auth_debug;
 bool ssl_require_client_cert;
 const char *greeting, *log_format;
 const char *const *log_format_elements;
@@ -318,6 +318,7 @@
 	verbose_proctitle = getenv("VERBOSE_PROCTITLE") != NULL;
         verbose_ssl = getenv("VERBOSE_SSL") != NULL;
         verbose_auth = getenv("VERBOSE_AUTH") != NULL;
+        auth_debug = getenv("AUTH_DEBUG") != NULL;
 	ssl_require_client_cert = getenv("SSL_REQUIRE_CLIENT_CERT") != NULL;
 
 	greeting = getenv("GREETING");
--- a/src/master/login-process.c	Sat Oct 25 15:55:35 2008 +0300
+++ b/src/master/login-process.c	Sat Oct 25 16:07:28 2008 +0300
@@ -581,6 +581,8 @@
 		env_put("VERBOSE_SSL=1");
 	if (set->server->auths->verbose)
 		env_put("VERBOSE_AUTH=1");
+	if (set->server->auths->debug)
+		env_put("AUTH_DEBUG=1");
 	require_cert = TRUE;
 	for (auth = set->server->auths; auth != NULL; auth = auth->next) {
 		if (!auth->ssl_require_client_cert)
--- a/src/pop3-login/client-authenticate.c	Sat Oct 25 15:55:35 2008 +0300
+++ b/src/pop3-login/client-authenticate.c	Sat Oct 25 16:07:28 2008 +0300
@@ -107,6 +107,10 @@
 			destuser = *args + 9;
 		else if (strncmp(*args, "pass=", 5) == 0)
 			pass = *args + 5;
+		else if (auth_debug) {
+			i_info("Ignoring unknown passdb extra field: %s",
+			       *args);
+		}
 	}
 
 	if (destuser == NULL)