From: Timo Sirainen Date: Thu, 10 Feb 2011 01:03:28 +0000 (+0200) Subject: master: Change stderr to /dev/null just before forking. X-Git-Tag: 2.0.10~58 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=303afe90f2f989e8a824a35180a2c8dcd3119c99;p=thirdparty%2Fdovecot%2Fcore.git master: Change stderr to /dev/null just before forking. --- diff --git a/src/master/main.c b/src/master/main.c index add90d488d..54925e3263 100644 --- a/src/master/main.c +++ b/src/master/main.c @@ -771,14 +771,17 @@ int main(int argc, char *argv[]) if (services_listen(services) <= 0) i_fatal("Failed to start listeners"); - if (!foreground) - daemonize(); if (chdir(set->base_dir) < 0) i_fatal("chdir(%s) failed: %m", set->base_dir); + if (dup2(null_fd, STDERR_FILENO) < 0) + i_fatal("dup2(null_fd) failed: %m"); i_set_fatal_handler(master_fatal_callback); i_set_error_handler(orig_error_callback); + if (!foreground) + daemonize(); + main_init(set); master_service_run(master_service, NULL); main_deinit();