summaryrefslogtreecommitdiffstats
path: root/daemon/tls.c
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/tls.c')
-rw-r--r--daemon/tls.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/daemon/tls.c b/daemon/tls.c
index 231bff2d..6b3436f7 100644
--- a/daemon/tls.c
+++ b/daemon/tls.c
@@ -1325,6 +1325,12 @@ static enum protolayer_event_cb_result pl_tls_event_unwrap(
return PROTOLAYER_EVENT_PROPAGATE;
}
+ if (event == PROTOLAYER_EVENT_EOF) {
+ // TCP half-closed state not allowed
+ session2_force_close(s);
+ return PROTOLAYER_EVENT_CONSUME;
+ }
+
if (tls->client_side) {
if (event == PROTOLAYER_EVENT_CONNECT)
return pl_tls_client_connect_start(tls, s);