diff --git a/otherbackends/raw.c b/otherbackends/raw.c index c9a32e05..c95db970 100644 --- a/otherbackends/raw.c +++ b/otherbackends/raw.c @@ -285,7 +285,8 @@ static void raw_special(Backend *be, SessionSpecialCode code, int arg) { Raw *raw = container_of(be, Raw, backend); if (code == SS_EOF && raw->s) { - sk_write_eof(raw->s); + if (!raw->sent_socket_eof) + sk_write_eof(raw->s); raw->sent_socket_eof= true; raw_check_close(raw); }