instance: add support for customizable syslog facilities
[project/procd.git] / service / instance.h
index 5a768418fc5cd38abcabedb808648f1682f6dd87..9300d324c13c8cb55c3e3b9b986e4cc052138c59 100644 (file)
@@ -27,7 +27,9 @@ struct jail {
        bool sysfs;
        bool ubus;
        bool log;
+       bool ronly;
        char *name;
+       char *hostname;
        struct blobmsg_list mount;
        int argc;
 };
@@ -40,6 +42,7 @@ struct service_instance {
        int8_t nice;
        bool valid;
 
+       char *user;
        uid_t uid;
        gid_t gid;
 
@@ -47,13 +50,18 @@ struct service_instance {
        bool restart;
        bool respawn;
        int respawn_count;
+       int reload_signal;
        struct timespec start;
 
        bool trace;
        bool has_jail;
+       bool no_new_privs;
        struct jail jail;
        char *seccomp;
+       char *pidfile;
+       int syslog_facility;
 
+       uint32_t term_timeout;
        uint32_t respawn_timeout;
        uint32_t respawn_threshold;
        uint32_t respawn_retry;
@@ -75,8 +83,8 @@ struct service_instance {
 };
 
 void instance_start(struct service_instance *in);
-void instance_stop(struct service_instance *in);
-bool instance_update(struct service_instance *in, struct service_instance *in_new);
+void instance_stop(struct service_instance *in, bool halt);
+void instance_update(struct service_instance *in, struct service_instance *in_new);
 void instance_init(struct service_instance *in, struct service *s, struct blob_attr *config);
 void instance_free(struct service_instance *in);
 void instance_dump(struct blob_buf *b, struct service_instance *in, int debug);