From 59708bb0f71c72bd06e1e30ed68e8bea6759f65d Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Fri, 10 May 2019 15:19:53 +0200 Subject: [PATCH] icingacli web serve: redirect standard I/O to /dev/null after fork(2) --- application/clicommands/WebCommand.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/application/clicommands/WebCommand.php b/application/clicommands/WebCommand.php index 8e4306ce8..67d50a343 100644 --- a/application/clicommands/WebCommand.php +++ b/application/clicommands/WebCommand.php @@ -85,6 +85,17 @@ class WebCommand extends Command // pcntl_wait($status); } else { // child + + // Replace console with /dev/null by first freeing the (lowest possible) FDs 0, 1 and 2 + // and then opening /dev/null once for every one of them (open(2) chooses the lowest free FD). + + fclose(STDIN); + fclose(STDOUT); + fclose(STDERR); + + fopen('/dev/null', 'rb'); + fopen('/dev/null', 'wb'); + fopen('/dev/null', 'wb'); } } }