changeset 16783:17aaab5511f2

ssl-params: Long-running ssl-params process shouldn't cause Dovecot restart to fail.
author Timo Sirainen <tss@iki.fi>
date Fri, 20 Sep 2013 04:20:22 +0300
parents ac832f051b49
children 3da7f0dad08f
files src/ssl-params/ssl-params.c
diffstat 1 files changed, 4 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ssl-params/ssl-params.c	Fri Sep 20 04:01:10 2013 +0300
+++ b/src/ssl-params/ssl-params.c	Fri Sep 20 04:20:22 2013 +0300
@@ -5,6 +5,7 @@
 #include "buffer.h"
 #include "file-lock.h"
 #include "read-full.h"
+#include "master-service.h"
 #include "master-service-settings.h"
 #include "ssl-params-settings.h"
 #include "ssl-params.h"
@@ -118,7 +119,9 @@
 	case -1:
 		i_fatal("fork() failed: %m");
 	case 0:
-		/* child */
+		/* child - close listener fds so a long-running ssl-params
+		   doesn't cause Dovecot restart to fail */
+		master_service_stop_new_connections(master_service);
 		ssl_params_if_unchanged(param->path, param->last_mtime);
 		exit(0);
 	default: