diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2016-02-13 12:48:59 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2016-02-13 12:48:59 +0200 |
commit | 3c774556e22cd30c42304614e14218a767e4d700 (patch) | |
tree | cdcc278f470b2ef8863cf10655315f8579f679b2 /src/pies.h | |
parent | 92145d8331e824a54109c53032f0ca4b2df71f5f (diff) | |
download | pies-3c774556e22cd30c42304614e14218a767e4d700.tar.gz pies-3c774556e22cd30c42304614e14218a767e4d700.tar.bz2 |
Implement on-demaind components; implement control socket telinit interface.
* src/pies.h: Include json.h
(sysvinit_report, sysvinit_set_runlevel)
(json_object_set_string, json_object_set_number): New protos.
* src/ctl.c (ctlio_resource)<predicate>: New member.
(restab): New endpoint: runlevel. Available only if run
as pid 1.
(find_resource): If predicate is not NULL, call it to
confirm that the endpoint is available.
* src/piesctl.c: New subcommand "telinit".
* src/sysvinit.c (sysvinit_set_runlevel): New function.
(sysvinit_fifo_handler): Implement on-demaind components.
Diffstat (limited to 'src/pies.h')
-rw-r--r-- | src/pies.h | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -56,6 +56,7 @@ #include "identity.h" #include "acl.h" #include "libpies.h" +#include "json.h" #define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0])) @@ -515,6 +516,9 @@ void sysvinit_runlevel_setup (int mask, int *wait); void sysvinit_sysdep_begin (void); void sysvinit_power (void); +void sysvinit_report (struct json_value *obj); +int sysvinit_set_runlevel (int newlevel); + extern char *sysvinit_environ_hint[]; extern char *init_fifo; @@ -578,3 +582,8 @@ struct control extern struct control control; int ctl_open(void); + +void json_object_set_string (struct json_value *obj, + char const *name, char const *fmt, ...); +void json_object_set_number (struct json_value *obj, + char const *name, double val); |