diff --git a/src/lib66/state/state_check.c b/src/lib66/state/state_check.c
index 7f8336f387e06a1cea0b0721ec920a707c924197..9ce829b0237a60b0b2d58d5c48ef432daca0f480 100644
--- a/src/lib66/state/state_check.c
+++ b/src/lib66/state/state_check.c
@@ -26,13 +26,7 @@ int state_check(resolve_service_t *res)
 {
     log_flow() ;
 
-    size_t len = strlen(res->sa.s + res->path.servicedir) ;
-
-    char target[len + SS_STATE_LEN + 1 + SS_STATUS_LEN + 1] ;
-
-    auto_strings(target, res->sa.s + res->path.servicedir, SS_STATE, "/", SS_STATUS) ;
-
-    if (access(target, F_OK) < 0)
+    if (access(res->sa.s + res->path.status, F_OK) < 0)
         return 0 ;
 
     return 1 ;
diff --git a/src/lib66/state/state_read.c b/src/lib66/state/state_read.c
index 0d696a111af1a5a8931be3f7ebe4cdb7349f1020..29c64765001c367573397bcc9ec11ec9d305fee6 100644
--- a/src/lib66/state/state_read.c
+++ b/src/lib66/state/state_read.c
@@ -27,14 +27,11 @@ int state_read(ss_state_t *sta, resolve_service_t *res)
 {
     log_flow() ;
 
-    size_t len = strlen(res->sa.s + res->path.servicedir) ;
-
+    int r ;
     char pack[STATE_STATE_SIZE] ;
-    char target[len + SS_STATE_LEN + 1 + SS_STATUS_LEN + 1] ;
-
-    auto_strings(target, res->sa.s + res->path.servicedir, SS_STATE, "/", SS_STATUS) ;
 
-    if (openreadnclose(target, pack, STATE_STATE_SIZE) < STATE_STATE_SIZE)
+    r = openreadnclose(res->sa.s + res->path.status, pack, STATE_STATE_SIZE) ;
+    if (r < STATE_STATE_SIZE || r < 0)
         return 0 ;
 
     state_unpack(pack, sta) ;
diff --git a/src/lib66/state/state_rmfile.c b/src/lib66/state/state_rmfile.c
index a0e0aa09e2b89e26ba1fa36f5a51fb05a4c60767..db6ac989ae2df288e0e3d9c48eac8c128310fd90 100644
--- a/src/lib66/state/state_rmfile.c
+++ b/src/lib66/state/state_rmfile.c
@@ -27,11 +27,5 @@ void state_rmfile(resolve_service_t *res)
 {
     log_flow() ;
 
-    size_t len = strlen(res->sa.s + res->path.servicedir) ;
-
-    char target[len + SS_STATE_LEN + 1 + SS_STATUS_LEN + 1] ;
-
-    auto_strings(target, res->sa.s + res->path.servicedir, SS_STATE, "/", SS_STATUS) ;
-
-    unlink_void(target) ;
+    unlink_void(res->sa.s + res->path.status) ;
 }