kds_s2000w_debug_printf(ERROR, curl_easy_strerror(result));
}
+void _kds_s2000w_client_stream_to_response(char* mem, response* resp, size_t* size)
+{
+ kds_s2000w_debug_printf(ALL, "kds_s2000w_client_stream_to_response");
+
+ size_t incl_null_term = *size + 1;
+ resp->data = malloc(sizeof(char) * incl_null_term);
+ resp->size = incl_null_term;
+ memcpy(resp->data, mem, incl_null_term);
+}
+
void _kds_s2000w_client_set_ssl_verification_off(CURL* curl)
{
if (config->ssl_verify)
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
body = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);
fclose(stream);
stream = NULL;
- resp->data = *mem;
+ _kds_s2000w_client_stream_to_response(*mem, resp, sizeloc);
curl_url_cleanup(url_handler);
url_handler = NULL;
headers = NULL;
curl_free(url);
url = NULL;
+ free(*mem);
+ *mem = NULL;
free(mem);
mem = NULL;
free(sizeloc);