aboutsummaryrefslogtreecommitdiff
path: root/initd/init.h
diff options
context:
space:
mode:
authorDavid Oberhollenzer <goliath@infraroot.at>2019-03-25 17:16:34 +0100
committerDavid Oberhollenzer <goliath@infraroot.at>2019-03-29 21:00:53 +0100
commit028394b8a5c6745bbf3ee34ba71d148bca75d247 (patch)
tree424e21815a67957eae37bd401022afbed70e14a9 /initd/init.h
parent6fa0393be46b1bfdad79643d73d6e54f2df4997c (diff)
Add service configuration reloading
This commit add the ability to initd to reload the service configuration while running. The new configuration is merged with the existing one as follows: For each target: - If the existing service list is not NULL, we have not started that target yet. Simply replace it with the new list. - If it is NULL, the services have already been started. - First, remove all entries for services in that target that no loner exist (except from the 'running' list). - Second, add new services that we don't have yet. Treat them as recently diseased and let the user start them manualy. Signed-off-by: David Oberhollenzer <goliath@infraroot.at>
Diffstat (limited to 'initd/init.h')
-rw-r--r--initd/init.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/initd/init.h b/initd/init.h
index b98da98..ffc7181 100644
--- a/initd/init.h
+++ b/initd/init.h
@@ -68,6 +68,8 @@ void supervisor_init(void);
bool supervisor_process_queues(void);
+void supervisor_reload_config(void);
+
void supervisor_answer_status_request(int fd, const void *dest_addr,
size_t addrlen, E_SERVICE_STATE filter);