static void free_response_info(ResponseInfo *resp_info) { TSHandleMLocRelease(resp_info->buf, TS_NULL_MLOC, resp_info->http_hdr_loc); TSMBufferDestroy(resp_info->buf); TSHttpParserDestroy(resp_info->parser); TSfree(resp_info); }
void ts_http_fetcher_release(http_fetcher *fch) { if (fch->http_vc) { TSVConnClose(fch->http_vc); fch->http_vc = NULL; } if (fch->http_parser) TSHttpParserDestroy(fch->http_parser); if (fch->hdr_loc) { TSMimeHdrDestroy(fch->hdr_bufp, fch->hdr_loc); TSHandleMLocRelease(fch->hdr_bufp, TS_NULL_MLOC, fch->hdr_loc); } if (fch->hdr_bufp) TSMBufferDestroy(fch->hdr_bufp); if (fch->hdr_reader) TSIOBufferReaderFree(fch->hdr_reader); if (fch->hdr_buffer) TSIOBufferDestroy(fch->hdr_buffer); if (fch->resp_reader) TSIOBufferReaderFree(fch->resp_reader); if (fch->resp_buffer) TSIOBufferDestroy(fch->resp_buffer); if (fch->body_reader) TSIOBufferReaderFree(fch->body_reader); if (fch->body_buffer) TSIOBufferDestroy(fch->body_buffer); if (fch->flow_reader) TSIOBufferReaderFree(fch->flow_reader); if (fch->flow_buffer) TSIOBufferDestroy(fch->flow_buffer); if (fch->req_reader) TSIOBufferReaderFree(fch->req_reader); if (fch->req_buffer) TSIOBufferDestroy(fch->req_buffer); TSContDestroy(fch->fetch_contp); TSfree(fch); fch = NULL; }