service: optimize relaying stdio output of daemons a bit.
[project/procd.git] / service / instance.h
index 56ce797..3fb33e9 100644 (file)
 
 #define RESPAWN_ERROR  (5 * 60)
 
 
 #define RESPAWN_ERROR  (5 * 60)
 
+struct jail {
+       bool procfs;
+       bool sysfs;
+       bool ubus;
+       bool log;
+       char *name;
+       char *root;
+       struct blobmsg_list mount;
+       int argc;
+};
+
 struct service_instance {
        struct vlist_node node;
        struct service *srv;
 struct service_instance {
        struct vlist_node node;
        struct service *srv;
@@ -39,6 +50,11 @@ struct service_instance {
        int respawn_count;
        struct timespec start;
 
        int respawn_count;
        struct timespec start;
 
+       bool trace;
+       bool has_jail;
+       struct jail jail;
+       char *seccomp;
+
        uint32_t respawn_timeout;
        uint32_t respawn_threshold;
        uint32_t respawn_retry;
        uint32_t respawn_timeout;
        uint32_t respawn_threshold;
        uint32_t respawn_retry;
@@ -46,8 +62,8 @@ struct service_instance {
        struct blob_attr *config;
        struct uloop_process proc;
        struct uloop_timeout timeout;
        struct blob_attr *config;
        struct uloop_process proc;
        struct uloop_timeout timeout;
-       struct ustream_fd stdout;
-       struct ustream_fd stderr;
+       struct ustream_fd _stdout;
+       struct ustream_fd _stderr;
 
        struct blob_attr *command;
        struct blob_attr *trigger;
 
        struct blob_attr *command;
        struct blob_attr *trigger;