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