start-stop-daemon: create pidfile before parent exits, closes 8596
This removes DAEMON_DOUBLE_FORK flag from bb_daemonize_or_rexec(), as SSD was the only user. Also includes fix for -S: now works without -a and -x, does not print pids (compat with "start-stop-daemon (OpenRC) 0.34.11 (Gentoo Linux)"). function old new delta start_stop_daemon_main 1018 1084 +66 add_interface 99 103 +4 fail_hunk 139 136 -3 bb_daemonize_or_rexec 205 183 -22 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/2 up/down: 70/-25) Total: 45 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
@ -1201,11 +1201,11 @@ void set_task_comm(const char *comm) FAST_FUNC;
|
||||
* to /dev/null if they are not.
|
||||
*/
|
||||
enum {
|
||||
DAEMON_CHDIR_ROOT = 1,
|
||||
DAEMON_DEVNULL_STDIO = 2,
|
||||
DAEMON_CLOSE_EXTRA_FDS = 4,
|
||||
DAEMON_ONLY_SANITIZE = 8, /* internal use */
|
||||
DAEMON_DOUBLE_FORK = 16, /* double fork to avoid controlling tty */
|
||||
DAEMON_CHDIR_ROOT = 1 << 0,
|
||||
DAEMON_DEVNULL_STDIO = 1 << 1,
|
||||
DAEMON_CLOSE_EXTRA_FDS = 1 << 2,
|
||||
DAEMON_ONLY_SANITIZE = 1 << 3, /* internal use */
|
||||
//DAEMON_DOUBLE_FORK = 1 << 4, /* double fork to avoid controlling tty */
|
||||
};
|
||||
#if BB_MMU
|
||||
enum { re_execed = 0 };
|
||||
|
Reference in New Issue
Block a user