inetd: comment why we redirect stderr to network
authorDenys Vlasenko <vda.linux@googlemail.com>
Fri, 5 Jun 2009 13:35:36 +0000 (15:35 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Fri, 5 Jun 2009 13:35:36 +0000 (15:35 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
networking/inetd.c

index 031edc3979e3025743a32a7570f841a37e53d503..331c494418811c64ddb02dbd167a5cf2f26f7c63 100644 (file)
@@ -1356,9 +1356,12 @@ int inetd_main(int argc UNUSED_PARAM, char **argv)
                                if (setrlimit(RLIMIT_NOFILE, &rlim_ofile) < 0)
                                        bb_perror_msg("setrlimit");
                        closelog();
-                       xmove_fd(ctrl, 0);
-                       xdup2(0, 1);
-                       xdup2(0, 2);
+                       xmove_fd(ctrl, STDIN_FILENO);
+                       xdup2(STDIN_FILENO, STDOUT_FILENO);
+                       /* manpages of inetd I managed to find either say
+                        * that stderr is also redirected to the network,
+                        * or do not talk about redirection at all (!) */
+                       xdup2(STDIN_FILENO, STDERR_FILENO);
                        /* NB: among others, this loop closes listening socket
                         * for nowait stream children */
                        for (sep2 = serv_list; sep2; sep2 = sep2->se_next)