void mk_cache_worker_exit() { char *cache_error; /* Cache header request -> last modified */ mk_ptr_free(MK_TLS_GET(mk_tls_cache_header_lm)); mk_mem_free(MK_TLS_GET(mk_tls_cache_header_lm)); /* Cache header request -> content length */ mk_ptr_free(MK_TLS_GET(mk_tls_cache_header_cl)); mk_mem_free(MK_TLS_GET(mk_tls_cache_header_cl)); /* Cache iov header struct */ mk_iov_free(MK_TLS_GET(mk_tls_cache_iov_header)); /* Cache gmtime buffer */ mk_mem_free(MK_TLS_GET(mk_tls_cache_gmtime)); /* Cache the most used text representations of utime2gmt */ mk_mem_free(MK_TLS_GET(mk_tls_cache_gmtext)); /* Cache buffer for strerror_r(2) */ cache_error = pthread_getspecific(mk_utils_error_key); mk_mem_free(cache_error); }
void mk_request_free(struct session_request *sr) { if (sr->fd_file > 0) { mk_vhost_close(sr); } if (sr->headers.location) { mk_mem_free(sr->headers.location); } if (sr->uri_processed.data != sr->uri.data) { mk_ptr_free(&sr->uri_processed); } if (sr->real_path.data != sr->real_path_static) { mk_ptr_free(&sr->real_path); } }