Mercurial > dovecot > original-hg > dovecot-1.2
changeset 8405:cb742f826abd HEAD
dovecot --exec-mail: Never listen input from stderr, there's no point.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 15 Nov 2008 19:34:28 +0200 |
parents | d3cbd3494a8c |
children | ed4d6fc5712b |
files | src/master/mail-process.c |
diffstat | 1 files changed, 7 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/master/mail-process.c Sat Nov 15 19:22:33 2008 +0200 +++ b/src/master/mail-process.c Sat Nov 15 19:34:28 2008 +0200 @@ -290,7 +290,7 @@ static void mail_process_set_environment(struct settings *set, const char *mail, const struct var_expand_table *var_expand_table, - bool dump_capability) + bool dump_capability, bool exec_mail) { const char *const *envs; string_t *str; @@ -370,8 +370,10 @@ if (set->mbox_lazy_writes) env_put("MBOX_LAZY_WRITES=1"); /* when running dump-capability log still points to stderr, - and io_add()ing it might break (epoll_ctl() gives EPERM) */ - if (set->shutdown_clients && !dump_capability) + and io_add()ing it might break (epoll_ctl() gives EPERM). + with --exec-mail there's no benefit in adding an extra stderr + listener, but it might cause problems. */ + if (set->shutdown_clients && !dump_capability && !exec_mail) env_put("STDERR_CLOSE_SHUTDOWN=1"); (void)umask(set->umask); @@ -486,7 +488,7 @@ } mail_process_set_environment(set, getenv("MAIL"), var_expand_table, - FALSE); + FALSE, TRUE); if (args == NULL) client_process_exec(executable, ""); else @@ -816,7 +818,7 @@ } mail_process_set_environment(set, mail, var_expand_table, - dump_capability); + dump_capability, FALSE); /* extra args. uppercase key value. */ args = array_get(&extra_args, &count);