diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-02-23 18:04:52 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-02-23 18:04:52 +0200 |
commit | dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d (patch) | |
tree | c160c3d7af3a7709fb33224e8344caafe581fcc4 /src/pies.h | |
parent | 6e73a7b0822d1fd506c75a662070f447bba94afb (diff) | |
download | pies-dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d.tar.gz pies-dd2c48ddfc7f8bc62c565b43bbd42a3a2a87836d.tar.bz2 |
Bugfixes
* lib/addrfmt.c: Include limits.h
* src/ctl.c (fun_stop,fun_start): Ignore non-component
progs.
* src/pies.c (request_restart_components): Fix piesctl
invocation.
* src/pies.h (PIES_CHLD_RESCHEDULE_ALARM): New flag.
(progman_wait_until): Remove.
(progman_recompute_alarm): New proto.
* src/progman.c (recompute_alarm): Remove. All uses
raise PIES_CHLD_RESCHEDULE_ALARM instead.
(progman_wake_sleeping): Handle status_stopping components
independently on their activity flag.
(prog_stop_all, progman_wait_until): Remove.
(progman_stop): Rewrite using mark+sweep approach.
Diffstat (limited to 'src/pies.h')
-rw-r--r-- | src/pies.h | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -317,16 +317,17 @@ void config_file_remove_all (void); void free_redirector (struct redirector *rp); void pies_schedule_action (int act); void free_action (struct action *act); -#define PIES_CHLD_NONE 0 -#define PIES_CHLD_CLEANUP 0x01 -#define PIES_CHLD_WAKEUP 0x02 -#define PIES_CHLD_GC 0x04 +#define PIES_CHLD_NONE 0 +#define PIES_CHLD_CLEANUP 0x01 +#define PIES_CHLD_WAKEUP 0x02 +#define PIES_CHLD_GC 0x04 +#define PIES_CHLD_RESCHEDULE_ALARM 0x08 void pies_schedule_children (int op); int pies_read_config (void); void register_prog (struct component *comp); @@ -335,22 +336,22 @@ void progman_start (void); void progman_gc (void); void progman_wake_sleeping (int); void progman_stop (void); void progman_cleanup (int expect_term); void progman_filter (int (*filter) (struct component *, void *data), void *data); -int progman_wait_until (int (*cond) (void *), void *data); int progman_accept (int socket, void *data); void progman_create_sockets (void); struct component *progman_lookup_component (const char *tag); struct component *progman_lookup_tcpmux (const char *service, const char *master); void progman_run_comp (struct component *comp, int fd, union pies_sockaddr_storage *sa, socklen_t salen); +void progman_recompute_alarm (void); void fd_report (int fd, const char *msg); int check_acl (pies_acl_t acl, struct sockaddr *s, socklen_t salen, pies_identity_t identity); |