dovecot: If protocols=none, don't check if mail/login executable...

dovecot at dovecot.org dovecot at dovecot.org
Fri Dec 21 17:11:23 EET 2007


details:   http://hg.dovecot.org/dovecot/rev/421226dbdce1
changeset: 7004:421226dbdce1
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Dec 21 17:11:15 2007 +0200
description:
If protocols=none, don't check if mail/login executables are usable.

diffstat:

1 file changed, 5 insertions(+), 2 deletions(-)
src/master/master-settings.c |    7 +++++--

diffs (31 lines):

diff -r f622ddfb69b2 -r 421226dbdce1 src/master/master-settings.c
--- a/src/master/master-settings.c	Fri Dec 21 16:57:26 2007 +0200
+++ b/src/master/master-settings.c	Fri Dec 21 17:11:15 2007 +0200
@@ -709,7 +709,8 @@ static bool settings_verify(struct setti
 			return FALSE;
 	}
 
-	if (access(t_strcut(set->mail_executable, ' '), X_OK) < 0) {
+	if (set->protocol != MAIL_PROTOCOL_ANY &&
+	    access(t_strcut(set->mail_executable, ' '), X_OK) < 0) {
 		i_error("Can't use mail executable %s: %m",
 			t_strcut(set->mail_executable, ' '));
 		return FALSE;
@@ -786,7 +787,8 @@ static bool settings_verify(struct setti
 		return FALSE;
 	}
 
-	if (access(t_strcut(set->login_executable, ' '), X_OK) < 0) {
+	if (set->protocol != MAIL_PROTOCOL_ANY &&
+	    access(t_strcut(set->login_executable, ' '), X_OK) < 0) {
 		i_error("Can't use login executable %s: %m",
 			t_strcut(set->login_executable, ' '));
 		return FALSE;
@@ -1469,6 +1471,7 @@ bool master_settings_read(const char *pa
 		   of what's in protocols setting. */
 		if (!settings_is_active(server->imap) && !nochecks) {
 			if (strcmp(server->imap->protocols, "none") == 0) {
+				server->imap->protocol = MAIL_PROTOCOL_ANY;
 				if (!settings_fix(server->imap, nochecks,
 						  nofixes))
 					return FALSE;


More information about the dovecot-cvs mailing list