summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client.c4
-rw-r--r--icclient/client.h2
-rw-r--r--main.c2
3 files changed, 5 insertions, 3 deletions
diff --git a/client.c b/client.c
index 2d315ab..608b7e5 100644
--- a/client.c
+++ b/client.c
@@ -6,13 +6,15 @@
CURL *curl = NULL;
char *server_url = NULL;
-bool icclient_init(const char *url)
+bool icclient_init(const char *url, const char *certificate)
{
curl_global_init(CURL_GLOBAL_SSL);
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "");
+ if (certificate)
+ curl_easy_setopt(curl, CURLOPT_CAINFO, certificate);
#ifdef DEBUG
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
#endif
diff --git a/icclient/client.h b/icclient/client.h
index bea8b51..53d5d77 100644
--- a/icclient/client.h
+++ b/icclient/client.h
@@ -5,7 +5,7 @@
extern "C" {
#endif
- bool icclient_init(const char *url);
+ bool icclient_init(const char *url, const char *certificate);
void icclient_login(const char *username, const char *password
, const char *successpage, const char *nextpage
, const char *failpage);
diff --git a/main.c b/main.c
index 1a26c95..2cad4f3 100644
--- a/main.c
+++ b/main.c
@@ -24,7 +24,7 @@ int main(void)
strncpy(pass, pass_line, pass_nread);
free(pass_line);
- icclient_init(url);
+ icclient_init(url, NULL);
free(url);
icclient_admin_login(name, pass, NULL, NULL, NULL);