- s/defined(__uClinux__)/BB_NOMMU/
This needs a second pass to: + add bb_daemon(unsigned char no_chdir, unsigned char no_close, const char*flag) + eventually globally export argc and argv, so we don't need to pass it to bb_daemon().
This commit is contained in:
parent
507cd755a4
commit
c418d482ba
@ -492,7 +492,7 @@ extern int my_query_module(const char *name, int which, void **buf, size_t *bufs
|
|||||||
extern void print_login_issue(const char *issue_file, const char *tty);
|
extern void print_login_issue(const char *issue_file, const char *tty);
|
||||||
extern void print_login_prompt(void);
|
extern void print_login_prompt(void);
|
||||||
|
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
extern void vfork_daemon_rexec(int nochdir, int noclose,
|
extern void vfork_daemon_rexec(int nochdir, int noclose,
|
||||||
int argc, char **argv, char *foreground_opt);
|
int argc, char **argv, char *foreground_opt);
|
||||||
#endif
|
#endif
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
#include "libbb.h"
|
#include "libbb.h"
|
||||||
|
|
||||||
|
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
void vfork_daemon_rexec(int nochdir, int noclose,
|
void vfork_daemon_rexec(int nochdir, int noclose,
|
||||||
int argc, char **argv, char *foreground_opt)
|
int argc, char **argv, char *foreground_opt)
|
||||||
{
|
{
|
||||||
@ -64,4 +64,4 @@ void vfork_daemon_rexec(int nochdir, int noclose,
|
|||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* uClinux */
|
#endif /* BB_NOMMU */
|
||||||
|
@ -205,12 +205,12 @@ int crond_main(int ac, char **av)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if (!(opt & 4)) {
|
if (!(opt & 4)) {
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
/* reexec for vfork() do continue parent */
|
/* reexec for vfork() do continue parent */
|
||||||
vfork_daemon_rexec(1, 0, ac, av, "-f");
|
vfork_daemon_rexec(1, 0, ac, av, "-f");
|
||||||
#else /* uClinux */
|
#else
|
||||||
bb_xdaemon(1, 0);
|
bb_xdaemon(1, 0);
|
||||||
#endif /* uClinux */
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
(void) startlogger(); /* need if syslog mode selected */
|
(void) startlogger(); /* need if syslog mode selected */
|
||||||
|
@ -92,7 +92,7 @@ static void convname(char *a, uint8_t *q)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Insert length of substrings insetad of dots
|
* Insert length of substrings instead of dots
|
||||||
*/
|
*/
|
||||||
static void undot(uint8_t * rip)
|
static void undot(uint8_t * rip)
|
||||||
{
|
{
|
||||||
@ -393,12 +393,12 @@ int dnsd_main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(is_daemon())
|
if(is_daemon())
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
/* reexec for vfork() do continue parent */
|
/* reexec for vfork() do continue parent */
|
||||||
vfork_daemon_rexec(1, 0, argc, argv, "-d");
|
vfork_daemon_rexec(1, 0, argc, argv, "-d");
|
||||||
#else /* uClinux */
|
#else
|
||||||
bb_xdaemon(1, 0);
|
bb_xdaemon(1, 0);
|
||||||
#endif /* uClinuvx */
|
#endif
|
||||||
|
|
||||||
dnsentryinit(is_verbose());
|
dnsentryinit(is_verbose());
|
||||||
|
|
||||||
|
@ -1309,12 +1309,12 @@ inetd_main (int argc, char *argv[])
|
|||||||
bb_error_msg_and_die ("non-root must specify a config file");
|
bb_error_msg_and_die ("non-root must specify a config file");
|
||||||
|
|
||||||
if (!(opt & 2)) {
|
if (!(opt & 2)) {
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
/* reexec for vfork() do continue parent */
|
/* reexec for vfork() do continue parent */
|
||||||
vfork_daemon_rexec (0, 0, argc, argv, "-f");
|
vfork_daemon_rexec (0, 0, argc, argv, "-f");
|
||||||
#else
|
#else
|
||||||
daemon (0, 0); /* bb_xdaemon? */
|
bb_xdaemon (0, 0);
|
||||||
#endif /* uClinux */
|
#endif
|
||||||
} else {
|
} else {
|
||||||
setsid ();
|
setsid ();
|
||||||
}
|
}
|
||||||
|
@ -118,11 +118,11 @@ int klogd_main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!(opt & OPT_FOREGROUND)) {
|
if (!(opt & OPT_FOREGROUND)) {
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
vfork_daemon_rexec(0, 1, argc, argv, "-n");
|
vfork_daemon_rexec(0, 1, argc, argv, "-n");
|
||||||
#else /* __uClinux__ */
|
#else
|
||||||
bb_xdaemon(0, 1);
|
bb_xdaemon(0, 1);
|
||||||
#endif /* __uClinux__ */
|
#endif
|
||||||
}
|
}
|
||||||
doKlogd(console_log_level);
|
doKlogd(console_log_level);
|
||||||
|
|
||||||
|
@ -670,11 +670,11 @@ int syslogd_main(int argc, char **argv)
|
|||||||
umask(0);
|
umask(0);
|
||||||
|
|
||||||
if (doFork == TRUE) {
|
if (doFork == TRUE) {
|
||||||
#if defined(__uClinux__)
|
#ifdef BB_NOMMU
|
||||||
vfork_daemon_rexec(0, 1, argc, argv, "-n");
|
vfork_daemon_rexec(0, 1, argc, argv, "-n");
|
||||||
#else /* __uClinux__ */
|
#else
|
||||||
bb_xdaemon(0, 1);
|
bb_xdaemon(0, 1);
|
||||||
#endif /* __uClinux__ */
|
#endif
|
||||||
}
|
}
|
||||||
doSyslogd();
|
doSyslogd();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user