]> gitweb.hhaalo.de Git - sane-kds-s2000w-net.git/commitdiff
move curl call close session to client
authorBastian Dehn <hhaalo@arcor.de>
Mon, 22 Jan 2024 19:14:34 +0000 (20:14 +0100)
committerBastian Dehn <hhaalo@arcor.de>
Mon, 22 Jan 2024 19:14:34 +0000 (20:14 +0100)
src/kds_s2000w_client.c
src/kds_s2000w_client.h
src/kds_s2000w_handler.c

index e072f83f223fb021cad2fd8fab5c03f2a60b66ce..d3b88283418ba4ae27e4882a134f52a0f404df56 100644 (file)
@@ -66,4 +66,25 @@ int kds_s2000w_client_open_session(const char* username, response* response)
        url = NULL;
 
        return result;
+}
+
+void kds_s2000w_client_close_session(int64_t sessionid)
+{
+       CURL *curl = curl_easy_init();
+       if(!curl)
+               return;
+
+       struct curl_slist* headers = NULL;
+       char header_str[80];
+       sprintf(header_str, "SessionId: %li", sessionid);
+       headers = curl_slist_append(headers, header_str);
+       curl_easy_setopt(curl, CURLOPT_URL, "http://scanner.lan.hhaalo.de/api/session");
+       curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");
+       curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
+       curl_easy_perform(curl);
+
+       curl_slist_free_all(headers);
+       headers = NULL;
+       curl_easy_cleanup(curl);
+       curl = NULL;
 }
\ No newline at end of file
index 22e816a9c9bc250013d06ce5bff37cacd612f4b6..ceac714bf65494863c31050d74ec5d63686ef8de 100644 (file)
@@ -11,4 +11,5 @@ size_t write_callback(char *ptr, size_t size, size_t nmemb, void *userdata);
 response* kds_s2000w_client_response_init();
 void kds_s2000w_client_response_free(response* response);
 int kds_s2000w_client_open_session(const char* username, response* response);
+void kds_s2000w_client_close_session(int64_t session_id);
 #endif
\ No newline at end of file
index a70ce326fd23cd0309a98b1d34c92b5260a124bb..d0d3d28b37062d60e6c87ed60d54f02bfd469ff0 100644 (file)
@@ -103,18 +103,6 @@ void kds_s2000w_handler_close()
        if(!curl)
                return;
 
-       struct curl_slist* headers = NULL;
-       char header_str[80];
-       sprintf(header_str, "SessionId: %li", sessionid);
-       headers = curl_slist_append(headers, header_str);
-       curl_easy_setopt(curl, CURLOPT_URL, "http://scanner.lan.hhaalo.de/api/session");
-       curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "DELETE");
-       curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
-       curl_easy_perform(curl);
-
+       kds_s2000w_client_close_session(sessionid);
        sessionid = 0;
-       curl_slist_free_all(headers);
-       headers = NULL;
-       curl_easy_cleanup(curl);
-       curl = NULL;
 }
\ No newline at end of file