projects
/
collectd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'collectd-5.5'
[collectd.git]
/
src
/
ascent.c
diff --git
a/src/ascent.c
b/src/ascent.c
index
ca0fac7
..
9124c26
100644
(file)
--- a/
src/ascent.c
+++ b/
src/ascent.c
@@
-32,7
+32,7
@@
#include <curl/curl.h>
#include <libxml/parser.h>
#include <curl/curl.h>
#include <libxml/parser.h>
-static char *races_list[] = /* {{{ */
+static c
onst c
har *races_list[] = /* {{{ */
{
NULL,
"Human", /* 1 */
{
NULL,
"Human", /* 1 */
@@
-49,7
+49,7
@@
static char *races_list[] = /* {{{ */
}; /* }}} */
#define RACES_LIST_LENGTH STATIC_ARRAY_SIZE (races_list)
}; /* }}} */
#define RACES_LIST_LENGTH STATIC_ARRAY_SIZE (races_list)
-static char *classes_list[] = /* {{{ */
+static c
onst c
har *classes_list[] = /* {{{ */
{
NULL,
"Warrior", /* 1 */
{
NULL,
"Warrior", /* 1 */
@@
-66,7
+66,7
@@
static char *classes_list[] = /* {{{ */
}; /* }}} */
#define CLASSES_LIST_LENGTH STATIC_ARRAY_SIZE (classes_list)
}; /* }}} */
#define CLASSES_LIST_LENGTH STATIC_ARRAY_SIZE (classes_list)
-static char *genders_list[] = /* {{{ */
+static c
onst c
har *genders_list[] = /* {{{ */
{
"Male",
"Female"
{
"Male",
"Female"
@@
-102,6
+102,7
@@
static char *pass = NULL;
static char *verify_peer = NULL;
static char *verify_host = NULL;
static char *cacert = NULL;
static char *verify_peer = NULL;
static char *verify_host = NULL;
static char *cacert = NULL;
+static char *timeout = NULL;
static CURL *curl = NULL;
static CURL *curl = NULL;
@@
-117,7
+118,8
@@
static const char *config_keys[] =
"Password",
"VerifyPeer",
"VerifyHost",
"Password",
"VerifyPeer",
"VerifyHost",
- "CACert"
+ "CACert",
+ "Timeout",
};
static int config_keys_num = STATIC_ARRAY_SIZE (config_keys);
};
static int config_keys_num = STATIC_ARRAY_SIZE (config_keys);
@@
-152,14
+154,14
@@
static size_t ascent_curl_callback (void *buf, size_t size, size_t nmemb, /* {{{
{
size_t len = size * nmemb;
{
size_t len = size * nmemb;
- if (len
<
= 0)
+ if (len
=
= 0)
return (len);
if ((ascent_buffer_fill + len) >= ascent_buffer_size)
{
char *temp;
return (len);
if ((ascent_buffer_fill + len) >= ascent_buffer_size)
{
char *temp;
- temp =
(char *)
realloc (ascent_buffer,
+ temp = realloc (ascent_buffer,
ascent_buffer_fill + len + 1);
if (temp == NULL)
{
ascent_buffer_fill + len + 1);
if (temp == NULL)
{
@@
-518,14
+520,14
@@
static int ascent_config (const char *key, const char *value) /* {{{ */
return (config_set (&verify_host, value));
else if (strcasecmp (key, "CACert") == 0)
return (config_set (&cacert, value));
return (config_set (&verify_host, value));
else if (strcasecmp (key, "CACert") == 0)
return (config_set (&cacert, value));
+ else if (strcasecmp (key, "Timeout") == 0)
+ return (config_set (&timeout, value));
else
return (-1);
} /* }}} int ascent_config */
static int ascent_init (void) /* {{{ */
{
else
return (-1);
} /* }}} int ascent_config */
static int ascent_init (void) /* {{{ */
{
- static char credentials[1024];
-
if (url == NULL)
{
WARNING ("ascent plugin: ascent_init: No URL configured, "
if (url == NULL)
{
WARNING ("ascent plugin: ascent_init: No URL configured, "
@@
-551,6
+553,11
@@
static int ascent_init (void) /* {{{ */
if (user != NULL)
{
if (user != NULL)
{
+#ifdef HAVE_CURLOPT_USERNAME
+ curl_easy_setopt (curl, CURLOPT_USERNAME, user);
+ curl_easy_setopt (curl, CURLOPT_PASSWORD, (pass == NULL) ? "" : pass);
+#else
+ static char credentials[1024];
int status;
status = ssnprintf (credentials, sizeof (credentials), "%s:%s",
int status;
status = ssnprintf (credentials, sizeof (credentials), "%s:%s",
@@
-563,6
+570,7
@@
static int ascent_init (void) /* {{{ */
}
curl_easy_setopt (curl, CURLOPT_USERPWD, credentials);
}
curl_easy_setopt (curl, CURLOPT_USERPWD, credentials);
+#endif
}
curl_easy_setopt (curl, CURLOPT_URL, url);
}
curl_easy_setopt (curl, CURLOPT_URL, url);
@@
-582,6
+590,13
@@
static int ascent_init (void) /* {{{ */
if (cacert != NULL)
curl_easy_setopt (curl, CURLOPT_CAINFO, cacert);
if (cacert != NULL)
curl_easy_setopt (curl, CURLOPT_CAINFO, cacert);
+#ifdef HAVE_CURLOPT_TIMEOUT_MS
+ if (timeout != NULL)
+ curl_easy_setopt (curl, CURLOPT_TIMEOUT_MS, atol(timeout));
+ else
+ curl_easy_setopt (curl, CURLOPT_TIMEOUT_MS, (long) CDTIME_T_TO_MS(plugin_get_interval()));
+#endif
+
return (0);
} /* }}} int ascent_init */
return (0);
} /* }}} int ascent_init */