hermes

HTTP GET/HEAD-only web server for static content.
git clone git://git.francescosaccone.com/hermes
Log | Files | Refs | README | LICENSE

commit b69eadbf1c65871565b26d85b14c766ad5bcd7cb
parent 3d0b9713076dff4799bb6e7dfdb7feb741e7965d
Author: Francesco Saccone <francesco@francescosaccone.com>
Date:   Mon, 31 Mar 2025 14:42:29 +0200

fix: check if client_socket_fd returns error code

Signed-off-by: Francesco Saccone <francesco@francescosaccone.com>

Diffstat:
Mhermes.c | 8+++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/hermes.c b/hermes.c @@ -109,10 +109,16 @@ main(int argc, char *argv[]) { /* child process */ while (1) { - int client_socket_fd = accept_client(server_socket_fd), + int client_socket_fd, buffer_size = 104857600 * sizeof(char); /* i.e. 100 MiB */ char *buffer = malloc(buffer_size); + client_socket_fd = accept_client(server_socket_fd); + + if (client_socket_fd == -1) { + continue; + } + read_client_request(client_socket_fd, buffer, buffer_size); close_socket(client_socket_fd);