From 53c1ebff35dc81263d4491753a6dd9676f5b9120 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Thu, 2 Sep 2021 22:04:57 -0400 Subject: Be nice and call tls_close(3) on the server --- bounce.c | 2 ++ bounce.h | 1 + server.c | 5 +++++ 3 files changed, 8 insertions(+) diff --git a/bounce.c b/bounce.c index 71433ee..416c228 100644 --- a/bounce.c +++ b/bounce.c @@ -349,6 +349,7 @@ int main(int argc, char *argv[]) { serverConfig(true, NULL, NULL, NULL); serverConnect(serverBindHost, host, port); serverPrintCert(); + serverClose(); return EX_OK; } @@ -564,6 +565,7 @@ int main(int argc, char *argv[]) { } serverFormat("QUIT :%s\r\n", quit); + serverClose(); for (size_t i = clientIndex; i < event.len; ++i) { struct Client *client = event.clients[i]; if (!client->need) { diff --git a/bounce.h b/bounce.h index 434e443..4144324 100644 --- a/bounce.h +++ b/bounce.h @@ -198,6 +198,7 @@ void serverFormat(const char *format, ...) void serverEnqueue(const char *format, ...) __attribute__((format(printf, 1, 2))); void serverDequeue(void); +void serverClose(void); enum Need { BIT(NeedHandshake), diff --git a/server.c b/server.c index aa17cde..6640f8f 100644 --- a/server.c +++ b/server.c @@ -155,6 +155,11 @@ int serverConnect(const char *bindHost, const char *host, const char *port) { return sock; } +void serverClose(void) { + tls_close(client); + tls_free(client); +} + void serverPrintCert(void) { size_t len; const byte *pem = tls_peer_cert_chain_pem(client, &len); -- cgit 1.4.1