dovecot-2.0: master: Require protocols=none to not have any prot...

dovecot at dovecot.org dovecot at dovecot.org
Wed Apr 14 15:40:29 EEST 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/ca663b6f63a4
changeset: 11149:ca663b6f63a4
user:      Timo Sirainen <tss at iki.fi>
date:      Wed Apr 14 15:40:26 2010 +0300
description:
master: Require protocols=none to not have any protocols.

diffstat:

 src/master/master-settings.c |  12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diffs (29 lines):

diff -r 200a6532483b -r ca663b6f63a4 src/master/master-settings.c
--- a/src/master/master-settings.c	Wed Apr 14 15:34:58 2010 +0300
+++ b/src/master/master-settings.c	Wed Apr 14 15:40:26 2010 +0300
@@ -397,7 +397,16 @@
 		expand_user(&service->user, set);
 		service_set_login_dump_core(service);
 	}
-	set->protocols_split = p_strsplit(pool, set->protocols, " ");
+	set->protocols_split = p_strsplit_spaces(pool, set->protocols, " ");
+	if (set->protocols_split[0] == NULL) {
+		*error_r = "No protocols defined, "
+			"if you don't want any use protocols=none";
+		return FALSE;
+	}
+	if (strcmp(set->protocols_split[0], "none") == 0 &&
+	    set->protocols_split[1] == NULL)
+		set->protocols_split[0] = NULL;
+
 	for (i = 0; set->protocols_split[i] != NULL; i++) {
 		if (!services_have_protocol(set, set->protocols_split[i])) {
 			*error_r = t_strdup_printf("protocols: "
@@ -406,7 +415,6 @@
 			return FALSE;
 		}
 	}
-
 	t_array_init(&all_listeners, 64);
 	auth_client_limit = max_auth_client_processes = 0;
 	for (i = 0; i < count; i++) {


More information about the dovecot-cvs mailing list