changeset 9238:1eb00fd62d1c HEAD

If login_executable=imap/pop3, give better error message.
author Timo Sirainen <tss@iki.fi>
date Fri, 24 Jul 2009 20:55:26 -0400
parents 72f159e0aaa6
children 7d54410a34b9
files src/imap/main.c src/pop3/main.c
diffstat 2 files changed, 15 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/imap/main.c	Fri Jul 24 16:02:03 2009 -0400
+++ b/src/imap/main.c	Fri Jul 24 20:55:26 2009 -0400
@@ -179,11 +179,15 @@
         lib_signals_ignore(SIGALRM, FALSE);
 
 	username = getenv("USER");
+	if (username == NULL & IS_STANDALONE())
+		username = getlogin();
 	if (username == NULL) {
-		if (IS_STANDALONE())
-			username = getlogin();
-		if (username == NULL)
+		if (getenv("DOVECOT_MASTER") == NULL)
 			i_fatal("USER environment missing");
+		else {
+			i_fatal("login_executable setting must be imap-login, "
+				"not imap");
+		}
 	}
 
 	home = getenv("HOME");
--- a/src/pop3/main.c	Fri Jul 24 16:02:03 2009 -0400
+++ b/src/pop3/main.c	Fri Jul 24 20:55:26 2009 -0400
@@ -198,8 +198,14 @@
         lib_signals_ignore(SIGPIPE, TRUE);
         lib_signals_ignore(SIGALRM, FALSE);
 
-	if (getenv("USER") == NULL)
-		i_fatal("USER environment missing");
+	if (getenv("USER") == NULL) {
+		if (getenv("DOVECOT_MASTER") == NULL)
+			i_fatal("USER environment missing");
+		else {
+			i_fatal("login_executable setting must be imap-login, "
+				"not imap");
+		}
+	}
 
 	if (getenv("DEBUG") != NULL) {
 		const char *home;