X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fprocd.git;a=blobdiff_plain;f=service.h;h=6448e5ecbaa54cf6eb48154839de895bc27c01ec;hp=9d3c30894da30a10cb9d9b7146648c0f5cd24246;hb=f9d31edb8938341b9217ee4c14eb58111414eb97;hpb=11a65fae34ee7900453c079eb80755f135395258 diff --git a/service.h b/service.h index 9d3c308..6448e5e 100644 --- a/service.h +++ b/service.h @@ -17,15 +17,40 @@ #include #include +#include extern struct avl_tree services; +struct vrule { + struct avl_node avl; + char *option; + char *rule; +}; + +struct validate { + struct avl_node avl; + struct list_head list; + + char *package; + char *type; + + struct avl_tree rules; +}; + struct service { struct avl_node avl; const char *name; struct blob_attr *trigger; struct vlist_tree instances; + struct list_head validators; }; +void service_validate_add(struct service *s, struct blob_attr *attr); +void service_validate_dump(struct blob_buf *b, struct service *s); +void service_validate_dump_all(struct blob_buf *b, char *p, char *s); +void service_validate_del(struct service *s); +void service_validate_init(void); +void service_init(void); + #endif