summaryrefslogtreecommitdiff
path: root/src/sbearssl
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2017-05-11 16:29:01 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2017-05-11 16:29:01 +0000
commit4b632a08e4b58140b9946b644c7884d3f0294c09 (patch)
tree2fa9508eecd9aec56dab6284a35f801e5f7b4924 /src/sbearssl
parent846e279c25cecde21087b50bda4ad2f3ed9d0321 (diff)
downloads6-networking-4b632a08e4b58140b9946b644c7884d3f0294c09.tar.xz
Explicitly make s6-tls[cd] die when the app dies
I have no explanation for the fact that they sometimes survive their app, and I'm fed up with it, so it's time to use the big hammer.
Diffstat (limited to 'src/sbearssl')
-rw-r--r--src/sbearssl/sbearssl_run.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sbearssl/sbearssl_run.c b/src/sbearssl/sbearssl_run.c
index 26a8bd3..dd2f49b 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) break ;
+ }
/* Flush to local */