When dealing with HTTP keep-alive connections in practice, terminating a httpserver.h based application via a SIGTERM handler similar to the one in test/main.c will leak memory as free(http_server) isn't enough to get rid of whatever is allocated per connection.
To reproduce:
valgrind ./http-server &
pid=$!
firefox http://localhost:8080/ # or any other typical browser
kill $pid
I haven't looked into it yet, it'd probably be possible to provide a cleanup function to free everything related to keep-alive connections as well?
When dealing with HTTP keep-alive connections in practice, terminating a
httpserver.h
based application via aSIGTERM
handler similar to the one intest/main.c
will leak memory asfree(http_server)
isn't enough to get rid of whatever is allocated per connection.To reproduce:
I haven't looked into it yet, it'd probably be possible to provide a cleanup function to free everything related to keep-alive connections as well?