From 5691bc64df8444cfbebe7a97480f49f79497b19b Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Mon, 28 Aug 2017 21:10:03 +0000 Subject: Moderately big hammer: force kill on s6-tlsd when it has nothing to write to the network --- src/sbearssl/sbearssl_run.c | 6 +++++- src/stls/stls_run.c | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/sbearssl/sbearssl_run.c b/src/sbearssl/sbearssl_run.c index 26a8bd3..177a252 100644 --- a/src/sbearssl/sbearssl_run.c +++ b/src/sbearssl/sbearssl_run.c @@ -112,7 +112,11 @@ int sbearssl_run (br_ssl_engine_context *ctx, int *fds, pid_t pid, unsigned int /* Signal */ - if (x[0].revents & IOPAUSE_READ) handle_signals(pid, &e) ; + if (x[0].revents & IOPAUSE_READ) + { + handle_signals(pid, &e) ; + if (e >= 0 && xindex[0] == 5 && xindex[3] == 5) break ; + } /* Flush to local */ diff --git a/src/stls/stls_run.c b/src/stls/stls_run.c index 3f2742d..11a7234 100644 --- a/src/stls/stls_run.c +++ b/src/stls/stls_run.c @@ -214,7 +214,11 @@ int stls_run (struct tls *ctx, int *fds, pid_t pid, unsigned int verbosity, uint /* Signal */ - if (x[0].revents & IOPAUSE_READ) handle_signals(pid, &e) ; + if (x[0].revents & IOPAUSE_READ) + { + handle_signals(pid, &e) ; + if (e >= 0 && xindex[0] == 5 && xindex[3] == 5) break ; + } /* Flush to local */ -- cgit v1.2.3