if (--loop == 0) { errno = ELOOP; return FALSE; }
filename = buf[0] == '/'
? string_copyn(buf, (unsigned)len) /* mem released by tls_set_watch */
- : string_sprintf("%.*s/%.*s", (int)(s - filename), (int)len);
+ : string_sprintf("%.*s/%.*s", (int)(s - filename), filename, (int)len, buf);
s = Ustrrchr(filename, '/');
}
if (errno != EINVAL)
#endif
tls_server_creds_invalidate();
+
+/* _expire is for a time-limited selfsign server cert */
tls_creds_expire = (lifetime = tls_server_creds_init())
? time(NULL) + lifetime : 0;