diff options
| author | Drew DeVault <sir@cmpwn.com> | 2020-09-26 13:58:51 -0400 |
|---|---|---|
| committer | Drew DeVault <sir@cmpwn.com> | 2020-09-26 13:58:51 -0400 |
| commit | 0d6eca2c7922a14f1b9d0b46cf42816c6097743a (patch) | |
| tree | d81a59ec91945ee158086802fcb1e2a67c2624a4 /src | |
| parent | 264c3b4602bb79fea511e4effcb3da1c78c4593d (diff) | |
| download | gmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.tar.gz gmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.tar.xz gmnisrv-0d6eca2c7922a14f1b9d0b46cf42816c6097743a.zip | |
disconnect_client: clean up bios
Diffstat (limited to 'src')
| -rw-r--r-- | src/server.c | 5 |
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) { |
