summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2020-09-26 13:58:51 -0400
committerDrew DeVault <sir@cmpwn.com>2020-09-26 13:58:51 -0400
commit0d6eca2c7922a14f1b9d0b46cf42816c6097743a (patch)
treed81a59ec91945ee158086802fcb1e2a67c2624a4
parent264c3b4602bb79fea511e4effcb3da1c78c4593d (diff)
downloadgmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.tar.gz
gmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.tar.xz
gmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.zip
disconnect_client: clean up bios
-rw-r--r--src/server.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/server.c b/src/server.c
index 9e612e6..f163e73 100644
--- a/src/server.c
+++ b/src/server.c
@@ -185,9 +185,11 @@ disconnect_client(struct gmnisrv_server *server, struct gmnisrv_client *client)
client->path ? client->path : "(none)",
(int)client->status, client->meta);
}
+ if (client->bio) {
+ BIO_free_all(client->bio);
+ }
close(client->sockfd);
free(client->meta);
- // TODO: Close bios, body, etc
size_t index = (client - server->clients) / sizeof(struct gmnisrv_client);
memmove(client, &client[1], &server->clients[server->clientsz] - client);
@@ -426,7 +428,6 @@ sni_callback(SSL *ssl, int *al, void *arg)
}
bool *run;
-
static void
handle_sigint(int s, siginfo_t *i, void *c)
{