X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fapache.c;h=40d0efe2bc3d22e093e0a2652e9fd1bd09963083;hb=4511e92b464cb3451297872fd00e039d59984573;hp=38035caa22e94cfdeeaac8ef1047ddf443a40fdd;hpb=4ea7aebc3f05d082f64a62c679f414cf7cb0e631;p=collectd.git diff --git a/src/apache.c b/src/apache.c index 38035caa..40d0efe2 100644 --- a/src/apache.c +++ b/src/apache.c @@ -63,8 +63,10 @@ typedef struct apache_s apache_t; /* TODO: Remove this prototype */ static int apache_read_host (user_data_t *user_data); -static void apache_free (apache_t *st) +static void apache_free (void *arg) { + apache_t *st = arg; + if (st == NULL) return; @@ -98,14 +100,14 @@ static size_t apache_curl_callback (void *buf, size_t size, size_t nmemb, return (0); } - if (len <= 0) + if (len == 0) return (len); if ((st->apache_buffer_fill + len) >= st->apache_buffer_size) { char *temp; - temp = (char *) realloc (st->apache_buffer, + temp = realloc (st->apache_buffer, st->apache_buffer_fill + len + 1); if (temp == NULL) { @@ -137,7 +139,7 @@ static size_t apache_header_callback (void *buf, size_t size, size_t nmemb, return (0); } - if (len <= 0) + if (len == 0) return (len); /* look for the Server header */ @@ -175,13 +177,12 @@ static int config_add (oconfig_item_t *ci) int i; int status; - st = malloc (sizeof (*st)); + st = calloc (1, sizeof (*st)); if (st == NULL) { - ERROR ("apache plugin: malloc failed."); + ERROR ("apache plugin: calloc failed."); return (-1); } - memset (st, 0, sizeof (*st)); st->timeout = -1; @@ -244,7 +245,7 @@ static int config_add (oconfig_item_t *ci) memset (&ud, 0, sizeof (ud)); ud.data = st; - ud.free_func = (void *) apache_free; + ud.free_func = apache_free; memset (callback_name, 0, sizeof (callback_name)); ssnprintf (callback_name, sizeof (callback_name),