diff --git a/src/include/66/svc.h b/src/include/66/svc.h index 6b0ee94d1ed91b5dc95757ef7e69182cd5dc3621..722007e9864bb2b122eb2a9df30827b651ab87a8 100644 --- a/src/include/66/svc.h +++ b/src/include/66/svc.h @@ -20,6 +20,7 @@ #include <skalibs/genalloc.h> #include <s6/ftrigr.h> +#include <66/resolve.h> #include <66/ssexec.h> typedef struct svstat_s svstat_t, *svstat_t_ref ; @@ -47,15 +48,10 @@ struct svstat_s .remove = 0 \ } -typedef struct svc_sig_s svc_sig, *svc_sig_t_ref ; -struct svc_sig_s +typedef struct ss_resolve_sig_s ss_resolve_sig_t, *ss_resovle_sig_t_ref ; +struct ss_resolve_sig_s { - unsigned int scan ; //pos in sv - size_t scanlen ; - unsigned int name ; //pos in sv - size_t namelen ; - unsigned int src ; //pos in sv - size_t srclen ; + ss_resolve_t res ; unsigned int notify ; unsigned int ndeath; tain_t deadline ; @@ -65,13 +61,9 @@ struct svc_sig_s int state ; } ; -#define SVC_SIG_ZERO \ +#define RESOLVE_SIG_ZERO \ { \ - .scan = 0 , \ - .name = 0 , \ - .namelen = 0 , \ - .src = 0 , \ - .srclen = 0, \ + .res = RESOLVE_ZERO, \ .notify = 0, \ .ndeath = 3, \ .deadline = TAIN_ZERO, \ @@ -107,7 +99,8 @@ enum sigactions_e extern int svc_switch_to(ssexec_t *info,unsigned int where) ; -extern int svc_init(char const *scandir,char const *src, genalloc *ga) ; -extern int svc_init_pipe(ftrigr_t *fifo,genalloc *gasv,stralloc *sasv) ; +extern int svc_init(ssexec_t *info,char const *src, genalloc *ga) ; +extern int svc_init_pipe(ftrigr_t *fifo,genalloc *gasv) ; +extern int svc_shutnremove(ssexec_t *info, genalloc *ga,char const *sig, char const *const *envp) ; #endif