dovecot-2.0-sslstream: anvil: Stay alive until it has no more cl...
dovecot at dovecot.org
dovecot at dovecot.org
Sat Feb 13 02:56:22 EET 2010
details: http://hg.dovecot.org/dovecot-2.0-sslstream/rev/506fba223006
changeset: 10320:506fba223006
user: Timo Sirainen <tss at iki.fi>
date: Thu Nov 12 18:37:57 2009 -0500
description:
anvil: Stay alive until it has no more clients.
diffstat:
2 files changed, 12 insertions(+), 3 deletions(-)
src/anvil/main.c | 1 -
src/master/service-process.c | 14 ++++++++++++--
diffs (35 lines):
diff -r 1c29c69248e0 -r 506fba223006 src/anvil/main.c
--- a/src/anvil/main.c Thu Nov 12 18:28:39 2009 -0500
+++ b/src/anvil/main.c Thu Nov 12 18:37:57 2009 -0500
@@ -25,7 +25,6 @@ int main(int argc, char *argv[])
if (master_getopt(master_service) > 0)
return FATAL_DEFAULT;
- master_service_set_die_with_master(master_service, TRUE);
master_service_init_log(master_service, "anvil: ");
master_service_init_finish(master_service);
connect_limit = connect_limit_init();
diff -r 1c29c69248e0 -r 506fba223006 src/master/service-process.c
--- a/src/master/service-process.c Thu Nov 12 18:28:39 2009 -0500
+++ b/src/master/service-process.c Thu Nov 12 18:37:57 2009 -0500
@@ -100,8 +100,18 @@ service_dup_fds(struct service *service)
dup2_append(&dups, service->login_notify_fd,
MASTER_LOGIN_NOTIFY_FD);
}
- dup2_append(&dups, service_anvil_global->blocking_fd[1],
- MASTER_ANVIL_FD);
+ switch (service->type) {
+ case SERVICE_TYPE_LOG:
+ case SERVICE_TYPE_ANVIL:
+ case SERVICE_TYPE_CONFIG:
+ dup2_append(&dups, null_fd, MASTER_ANVIL_FD);
+ break;
+ case SERVICE_TYPE_UNKNOWN:
+ case SERVICE_TYPE_LOGIN:
+ dup2_append(&dups, service_anvil_global->blocking_fd[1],
+ MASTER_ANVIL_FD);
+ break;
+ }
dup2_append(&dups, service->status_fd[1], MASTER_STATUS_FD);
if (service->type != SERVICE_TYPE_LOG) {
More information about the dovecot-cvs
mailing list