X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=service%2Finstance.h;h=42cc4be1899383ee01a6aa8e470cef1f38c860d5;hb=44dd9419812b6dc8fa164833fb274e33e5e284fa;hp=5a768418fc5cd38abcabedb808648f1682f6dd87;hpb=fda5f9c30bdb440c41fcfa3fa6445b7b0fa998ce;p=project%2Fprocd.git diff --git a/service/instance.h b/service/instance.h index 5a76841..42cc4be 100644 --- a/service/instance.h +++ b/service/instance.h @@ -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,20 +42,28 @@ struct service_instance { int8_t nice; bool valid; + char *user; uid_t uid; - gid_t gid; + gid_t pw_gid; + char *group; + gid_t gr_gid; bool halt; 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 +85,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);