curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
}
-response* kds_s2000w_client_response_init()
-{
- debug_printf(ALL, "kds_s2000w_client_response_init");
-
- response* resp = malloc(sizeof(response));
- resp->data = NULL;
- resp->size = 0;
- resp->code = 0L;
-
- return resp;
-}
-
-void kds_s2000w_client_response_free(response* resp)
-{
- debug_printf(ALL, "kds_s2000w_client_response_free");
-
- if (resp == NULL)
- return;
-
- free(resp->data);
- resp->data = NULL;
- free(resp);
- resp = NULL;
-}
-
void kds_s2000w_client_init()
{
debug_printf(ALL, "kds_s2000w_client_init");
curl_global_cleanup();
}
+response* kds_s2000w_client_response_init()
+{
+ debug_printf(ALL, "kds_s2000w_client_response_init");
+
+ response* resp = malloc(sizeof(response));
+ resp->data = NULL;
+ resp->size = 0;
+ resp->code = 0L;
+
+ return resp;
+}
+
+void kds_s2000w_client_response_free(response* resp)
+{
+ debug_printf(ALL, "kds_s2000w_client_response_free");
+
+ if (resp == NULL)
+ return;
+
+ free(resp->data);
+ resp->data = NULL;
+ free(resp);
+ resp = NULL;
+}
+
int kds_s2000w_client_open_session(response* resp)
{
debug_printf(ALL, "kds_s2000w_client_open_session");
header_str = NULL;
}
-int kds_s2000w_client_status_session(int64_t sessionid, response* resp)
+int kds_s2000w_client_get_capabilities(response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_status_session");
-
- join_thread();
- wait_seconds(&config->heartbeat);
+ debug_printf(ALL, "kds_s2000w_client_get_capabilities");
curl_easy_reset(curl);
char* url = NULL;
CURLU* url_handler = curl_url();
curl_url_set(url_handler, CURLUPART_URL, config->scanner_url, 0);
- curl_url_set(url_handler, CURLUPART_PATH, STATUS_PATH, 0);
+ curl_url_set(url_handler, CURLUPART_PATH, CAPABILITIES_PATH, 0);
curl_url_get(url_handler, CURLUPART_URL, &url, 0);
curl_easy_setopt(curl, CURLOPT_URL, url);
struct curl_slist* headers = NULL;
- char* header_str = malloc(sizeof(char) * MAX_STR_BUFFER_LENGTH);
- memset(header_str, 0, MAX_STR_BUFFER_LENGTH);
- sprintf(header_str, "SessionId: %li", sessionid);
- headers = curl_slist_append(headers, header_str);
headers = curl_slist_append(headers, CONTENT_TYPE_HEADER);
headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
mem = NULL;
free(sizeloc);
sizeloc = NULL;
- free(header_str);
- header_str = NULL;
return result;
}
-int kds_s2000w_client_start_scan(int64_t sessionid, response* resp)
+int kds_s2000w_client_status_session(int64_t sessionid, response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_start_scan");
+ debug_printf(ALL, "kds_s2000w_client_status_session");
+
+ join_thread();
+ wait_seconds(&config->heartbeat);
curl_easy_reset(curl);
char* url = NULL;
CURLU* url_handler = curl_url();
curl_url_set(url_handler, CURLUPART_URL, config->scanner_url, 0);
- curl_url_set(url_handler, CURLUPART_PATH, STARTSCAN_PATH, 0);
+ curl_url_set(url_handler, CURLUPART_PATH, STATUS_PATH, 0);
curl_url_get(url_handler, CURLUPART_URL, &url, 0);
curl_easy_setopt(curl, CURLOPT_URL, url);
FILE* stream = open_memstream(mem, sizeloc);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
- curl_easy_setopt(curl, CURLOPT_POST, 1L);
- curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 0L);
+ curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
_kds_s2000w_client_set_ssl_verification_off(curl);
curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
return result;
}
-int kds_s2000w_client_stop_scan(int64_t sessionid, response* resp)
+int kds_s2000w_client_start_scan(int64_t sessionid, response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_stop_scan");
+ debug_printf(ALL, "kds_s2000w_client_start_scan");
curl_easy_reset(curl);
char* url = NULL;
CURLU* url_handler = curl_url();
curl_url_set(url_handler, CURLUPART_URL, config->scanner_url, 0);
- curl_url_set(url_handler, CURLUPART_PATH, STOPSCAN_PATH, 0);
+ curl_url_set(url_handler, CURLUPART_PATH, STARTSCAN_PATH, 0);
curl_url_get(url_handler, CURLUPART_URL, &url, 0);
curl_easy_setopt(curl, CURLOPT_URL, url);
return result;
}
-int kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* resp)
+int kds_s2000w_client_stop_scan(int64_t sessionid, response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_get_image");
+ debug_printf(ALL, "kds_s2000w_client_stop_scan");
curl_easy_reset(curl);
char* url = NULL;
CURLU* url_handler = curl_url();
- char* url_path = malloc(sizeof(char) * MAX_STR_BUFFER_LENGTH);
- memset(url_path, 0, MAX_STR_BUFFER_LENGTH);
- sprintf(url_path, "%s/%i", IMAGE_PATH, img_number);
curl_url_set(url_handler, CURLUPART_URL, config->scanner_url, 0);
- curl_url_set(url_handler, CURLUPART_PATH, url_path, 0);
+ curl_url_set(url_handler, CURLUPART_PATH, STOPSCAN_PATH, 0);
curl_url_get(url_handler, CURLUPART_URL, &url, 0);
curl_easy_setopt(curl, CURLOPT_URL, url);
sprintf(header_str, "SessionId: %li", sessionid);
headers = curl_slist_append(headers, header_str);
headers = curl_slist_append(headers, CONTENT_TYPE_HEADER);
- headers = curl_slist_append(headers, ACCEPT_IMAGE_HEADER);
+ headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
char** mem = malloc(sizeof(char*));
FILE* stream = open_memstream(mem, sizeloc);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
- curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
+ curl_easy_setopt(curl, CURLOPT_POST, 1L);
+ curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 0L);
_kds_s2000w_client_set_ssl_verification_off(curl);
curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
mem = NULL;
free(sizeloc);
sizeloc = NULL;
- free(url_path);
- url_path = NULL;
free(header_str);
header_str = NULL;
return result;
}
-int kds_s2000w_client_delete_image(int64_t sessionid, int img_number, response* resp)
+int kds_s2000w_client_get_image(int64_t sessionid, int img_number, response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_delete_image");
+ debug_printf(ALL, "kds_s2000w_client_get_image");
curl_easy_reset(curl);
sprintf(header_str, "SessionId: %li", sessionid);
headers = curl_slist_append(headers, header_str);
headers = curl_slist_append(headers, CONTENT_TYPE_HEADER);
- headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
+ headers = curl_slist_append(headers, ACCEPT_IMAGE_HEADER);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
char** mem = malloc(sizeof(char*));
FILE* stream = open_memstream(mem, sizeloc);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
- curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");
+ curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
_kds_s2000w_client_set_ssl_verification_off(curl);
curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
curl_url_cleanup(url_handler);
url_handler = NULL;
- free(url_path);
- url_path = NULL;
curl_slist_free_all(headers);
headers = NULL;
curl_free(url);
mem = NULL;
free(sizeloc);
sizeloc = NULL;
+ free(url_path);
+ url_path = NULL;
free(header_str);
header_str = NULL;
return result;
}
-int kds_s2000w_client_get_capabilities(response* resp)
+int kds_s2000w_client_delete_image(int64_t sessionid, int img_number, response* resp)
{
- debug_printf(ALL, "kds_s2000w_client_get_capabilities");
+ debug_printf(ALL, "kds_s2000w_client_delete_image");
curl_easy_reset(curl);
char* url = NULL;
CURLU* url_handler = curl_url();
+ char* url_path = malloc(sizeof(char) * MAX_STR_BUFFER_LENGTH);
+ memset(url_path, 0, MAX_STR_BUFFER_LENGTH);
+ sprintf(url_path, "%s/%i", IMAGE_PATH, img_number);
curl_url_set(url_handler, CURLUPART_URL, config->scanner_url, 0);
- curl_url_set(url_handler, CURLUPART_PATH, CAPABILITIES_PATH, 0);
+ curl_url_set(url_handler, CURLUPART_PATH, url_path, 0);
curl_url_get(url_handler, CURLUPART_URL, &url, 0);
curl_easy_setopt(curl, CURLOPT_URL, url);
struct curl_slist* headers = NULL;
+ char* header_str = malloc(sizeof(char) * MAX_STR_BUFFER_LENGTH);
+ memset(header_str, 0, MAX_STR_BUFFER_LENGTH);
+ sprintf(header_str, "SessionId: %li", sessionid);
+ headers = curl_slist_append(headers, header_str);
headers = curl_slist_append(headers, CONTENT_TYPE_HEADER);
headers = curl_slist_append(headers, ACCEPT_JSON_HEADER);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
FILE* stream = open_memstream(mem, sizeloc);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, stream);
- curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
+ curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");
_kds_s2000w_client_set_ssl_verification_off(curl);
curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
curl_url_cleanup(url_handler);
url_handler = NULL;
+ free(url_path);
+ url_path = NULL;
curl_slist_free_all(headers);
headers = NULL;
curl_free(url);
mem = NULL;
free(sizeloc);
sizeloc = NULL;
+ free(header_str);
+ header_str = NULL;
return result;
}