diff options
| author | Drew DeVault <sir@cmpwn.com> | 2020-11-08 16:37:53 -0500 |
|---|---|---|
| committer | Drew DeVault <sir@cmpwn.com> | 2020-11-08 16:37:53 -0500 |
| commit | 74077b6f951865420a78345d5e793bba08fc0edc (patch) | |
| tree | d83f69fc29eacaf2b4731a545e71eced46a226db /src | |
| parent | ea2914efff52d69d073149f75e19ca0586dad3c4 (diff) | |
| download | gmnisrv-74077b6f951865420a78345d5e793bba08fc0edc.tar.gz gmnisrv-74077b6f951865420a78345d5e793bba08fc0edc.tar.xz gmnisrv-74077b6f951865420a78345d5e793bba08fc0edc.zip | |
Prevent double free of client resources
Diffstat (limited to 'src')
| -rw-r--r-- | src/server.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/server.c b/src/server.c index f43bb54..7fad522 100644 --- a/src/server.c +++ b/src/server.c @@ -188,13 +188,17 @@ disconnect_client(struct gmnisrv_server *server, struct gmnisrv_client *client) } if (client->ssl) { SSL_free(client->ssl); + client->ssl = NULL; } if (client->body) { fclose(client->body); + client->body = NULL; } close(client->sockfd); free(client->meta); + client->meta = NULL; free(client->path); + client->path = NULL; size_t index = (client - server->clients) / sizeof(struct gmnisrv_client); memmove(&server->clients[index], |
