diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-10-16 00:05:23 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2009-10-16 01:16:12 +0300 |
commit | a0631c9ac2c13c3ef1db027a490620504a287d3f (patch) | |
tree | 5cc3c9d5b588974eee29d17c724dbdd8551dfdc8 /src/progman.c | |
parent | 9670b8cada0df307c6ffd9be1b14f5dfd51cc958 (diff) | |
download | pies-a0631c9ac2c13c3ef1db027a490620504a287d3f.tar.gz pies-a0631c9ac2c13c3ef1db027a490620504a287d3f.tar.bz2 |
Various improvements.
* configure.ac (AC_CHECK_FUNCS): Check for vsyslog.
* src/diag.c (syslog_printer) [!HAVE_VSYSLOG]: call syslog.
* src/pies.c (component_keywords): Remove settle-timeout,
replace it with pass-fd-timeout.
(main): Force syslog logging if !foreground.
Do not close first three fds before restarting
if log_to_stderr is set.
* src/pies.h (DEFAULT_PASS_FD_TIMEOUT): New constant.
(struct component): Replace settle_timeout with
pass_fd_timeout. All uses changed.
(pass_fd): Pass timeout as argument.
* src/progman.c (prog_start): Remove hardcoded sleep before
calling pass_fd. Update call to pass_fd.
(prog_start_prerequisites): Remove handling of settle_timeout.
* src/socket.c (open_unix_socket): Remove.
(pass_fd): Rewrite.
* doc/pies.texi: Update.
Diffstat (limited to 'src/progman.c')
-rw-r--r-- | src/progman.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/progman.c b/src/progman.c index 7438837..cc107f7 100644 --- a/src/progman.c +++ b/src/progman.c @@ -773,8 +773,9 @@ prog_start (struct prog *prog) default: if (prog->v.p.comp->mode == pies_comp_pass_fd) { - sleep(1); - pass_fd (prog->v.p.comp->pass_fd_socket, prog->v.p.socket); + pass_fd (prog->v.p.comp->pass_fd_socket, prog->v.p.socket, + prog->v.p.comp->pass_fd_timeout ? + prog->v.p.comp->pass_fd_timeout : DEFAULT_PASS_FD_TIMEOUT); /* FIXME: Error code */; } if (prog->v.p.comp->mode != pies_comp_exec) @@ -1164,7 +1165,6 @@ prog_start_prerequisites (struct prog *prog) { int i; int ret; - unsigned settle_timeout = 0; if (!prog->prereq) return 0; /* Ok to startup */ @@ -1203,11 +1203,7 @@ prog_start_prerequisites (struct prog *prog) prog_start (prog_lookup_by_tag (prog->prereq[i])); if (!(dp->v.p.status == status_enabled && dp->pid)) ret = 1; - else - settle_timeout = prog->v.p.comp->settle_timeout; } - if (ret == 0 && settle_timeout) - sleep (settle_timeout); return ret; } |