diff options
Diffstat (limited to 'src/tls/s6tls_exec_tlsdio.c')
-rw-r--r-- | src/tls/s6tls_exec_tlsdio.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/tls/s6tls_exec_tlsdio.c b/src/tls/s6tls_exec_tlsdio.c index 3007cf0..f3bc999 100644 --- a/src/tls/s6tls_exec_tlsdio.c +++ b/src/tls/s6tls_exec_tlsdio.c @@ -6,15 +6,16 @@ #include <s6-networking/config.h> #include "s6tls-internal.h" -void s6tls_exec_tlsdio (int const *fds, uint32_t options, unsigned int verbosity, unsigned int kimeout) +void s6tls_exec_tlsdio (int const *fds, uint32_t options, unsigned int verbosity, unsigned int kimeout, unsigned int snilevel) { - char const *newargv[13] ; + char const *newargv[15] ; unsigned int m = 0 ; char fmtv[UINT_FMT] ; char fmtd[UINT_FMT] ; char fmtk[UINT_FMT] ; char fmtr[UINT_FMT] ; char fmtw[UINT_FMT] ; + char fmti[UINT_FMT] ; newargv[m++] = S6_NETWORKING_BINPREFIX "s6-tlsd-io" ; if (verbosity != 1) @@ -38,6 +39,12 @@ void s6tls_exec_tlsdio (int const *fds, uint32_t options, unsigned int verbosity newargv[m++] = fmtk ; fmtk[uint_fmt(fmtk, kimeout)] = 0 ; } + if (snilevel) + { + newargv[m++] = "-k" ; + newargv[m++] = fmti ; + fmti[uint_fmt(fmti, snilevel)] = 0 ; + } newargv[m++] = "--" ; newargv[m++] = fmtr ; fmtr[uint_fmt(fmtr, fds[0])] = 0 ; |