X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fcurl_json.c;h=b9394c273b213d2f27f35ffbfb630ca37dbf9e30;hp=a589cd658eb990adce119a378e9ef6c403c81353;hb=6026e3162e522b133d10596710527d24c2921b55;hpb=b7ff429c9f1440bac83eaa26c75945742ea70c0b diff --git a/src/curl_json.c b/src/curl_json.c index a589cd65..b9394c27 100644 --- a/src/curl_json.c +++ b/src/curl_json.c @@ -121,18 +121,18 @@ static size_t cj_curl_callback(void *buf, /* {{{ */ len = size * nmemb; if (len == 0) - return (len); + return len; db = user_data; if (db == NULL) - return (0); + return 0; status = yajl_parse(db->yajl, (unsigned char *)buf, len); if (status == yajl_status_ok) - return (len); + return len; #if !HAVE_YAJL_V2 else if (status == yajl_status_insufficient_data) - return (len); + return len; #endif unsigned char *msg = @@ -140,7 +140,7 @@ static size_t cj_curl_callback(void *buf, /* {{{ */ /* jsonText = */ (unsigned char *)buf, (unsigned int)len); ERROR("curl_json plugin: yajl_parse failed: %s", msg); yajl_free_error(db->yajl, msg); - return (0); /* abort write callback */ + return 0; /* abort write callback */ } /* }}} size_t cj_curl_callback */ static int cj_get_type(cj_key_t *key) { @@ -229,12 +229,12 @@ static void cj_advance_array(cj_t *db) { static int cj_cb_boolean(void *ctx, int boolVal) { cj_advance_array(ctx); - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } static int cj_cb_null(void *ctx) { cj_advance_array(ctx); - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } static int cj_cb_number(void *ctx, const char *number, yajl_len_t number_len) { @@ -247,8 +247,6 @@ static int cj_cb_number(void *ctx, const char *number, yajl_len_t number_len) { memcpy(buffer, number, number_len); buffer[sizeof(buffer) - 1] = 0; - - if (key == NULL) { /* no config for this element. */ cj_advance_array(ctx); @@ -268,12 +266,12 @@ static int cj_cb_number(void *ctx, const char *number, yajl_len_t number_len) { if (status != 0) { NOTICE("curl_json plugin: Unable to parse number: \"%s\"", buffer); cj_advance_array(ctx); - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } cj_submit(db, key, &vt); cj_advance_array(ctx); - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } /* int cj_cb_number */ /* Queries the key-tree of the parent context for "in_name" and, if found, @@ -294,7 +292,7 @@ static int cj_cb_map_key(void *ctx, unsigned char const *in_name, static int cj_cb_string(void *ctx, const unsigned char *val, yajl_len_t len) { /* Handle the string as if it was a number. */ - return (cj_cb_number(ctx, (const char *)val, len)); + return cj_cb_number(ctx, (const char *)val, len); } /* int cj_cb_string */ static int cj_cb_end(void *ctx) { @@ -302,7 +300,7 @@ static int cj_cb_end(void *ctx) { db->state[db->depth].tree = NULL; db->depth--; cj_advance_array(ctx); - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } static int cj_cb_start_map(void *ctx) { @@ -311,10 +309,10 @@ static int cj_cb_start_map(void *ctx) { if ((db->depth + 1) >= YAJL_MAX_DEPTH) { ERROR("curl_json plugin: %s depth exceeds max, aborting.", db->url ? db->url : db->sock); - return (CJ_CB_ABORT); + return CJ_CB_ABORT; } db->depth++; - return (CJ_CB_CONTINUE); + return CJ_CB_CONTINUE; } static int cj_cb_end_map(void *ctx) { return cj_cb_end(ctx); } @@ -431,16 +429,16 @@ static int cj_config_append_string(const char *name, struct curl_slist *temp = NULL; if ((ci->values_num != 1) || (ci->values[0].type != OCONFIG_TYPE_STRING)) { WARNING("curl_json plugin: `%s' needs exactly one string argument.", name); - return (-1); + return -1; } temp = curl_slist_append(*dest, ci->values[0].value.string); if (temp == NULL) - return (-1); + return -1; *dest = temp; - return (0); + return 0; } /* }}} int cj_config_append_string */ /* cj_append_key adds key to the configuration stored in db. @@ -498,13 +496,13 @@ static int cj_config_add_key(cj_t *db, /* {{{ */ if ((ci->values_num != 1) || (ci->values[0].type != OCONFIG_TYPE_STRING)) { WARNING("curl_json plugin: The `Key' block " "needs exactly one string argument."); - return (-1); + return -1; } key = calloc(1, sizeof(*key)); if (key == NULL) { ERROR("curl_json plugin: calloc failed."); - return (-1); + return -1; } key->magic = CJ_KEY_MAGIC; @@ -512,14 +510,14 @@ static int cj_config_add_key(cj_t *db, /* {{{ */ status = cf_util_get_string(ci, &key->path); if (status != 0) { sfree(key); - return (status); + return status; } } else { ERROR("curl_json plugin: cj_config: " "Invalid key: %s", ci->key); cj_key_free(key); - return (-1); + return -1; } status = 0; @@ -541,13 +539,13 @@ static int cj_config_add_key(cj_t *db, /* {{{ */ if (status != 0) { cj_key_free(key); - return (-1); + return -1; } if (key->type == NULL) { WARNING("curl_json plugin: `Type' missing in `Key' block."); cj_key_free(key); - return (-1); + return -1; } status = cj_append_key(db, key); @@ -564,7 +562,7 @@ static int cj_init_curl(cj_t *db) /* {{{ */ db->curl = curl_easy_init(); if (db->curl == NULL) { ERROR("curl_json plugin: curl_easy_init failed."); - return (-1); + return -1; } curl_easy_setopt(db->curl, CURLOPT_NOSIGNAL, 1L); @@ -591,7 +589,7 @@ static int cj_init_curl(cj_t *db) /* {{{ */ db->credentials = malloc(credentials_size); if (db->credentials == NULL) { ERROR("curl_json plugin: malloc failed."); - return (-1); + return -1; } ssnprintf(db->credentials, credentials_size, "%s:%s", db->user, @@ -623,7 +621,7 @@ static int cj_init_curl(cj_t *db) /* {{{ */ (long)CDTIME_T_TO_MS(plugin_get_interval())); #endif - return (0); + return 0; } /* }}} int cj_init_curl */ static int cj_config_add_url(oconfig_item_t *ci) /* {{{ */ @@ -634,13 +632,13 @@ static int cj_config_add_url(oconfig_item_t *ci) /* {{{ */ if ((ci->values_num != 1) || (ci->values[0].type != OCONFIG_TYPE_STRING)) { WARNING("curl_json plugin: The `URL' block " "needs exactly one string argument."); - return (-1); + return -1; } db = calloc(1, sizeof(*db)); if (db == NULL) { ERROR("curl_json plugin: calloc failed."); - return (-1); + return -1; } db->timeout = -1; @@ -654,11 +652,11 @@ static int cj_config_add_url(oconfig_item_t *ci) /* {{{ */ "Invalid key: %s", ci->key); cj_free(db); - return (-1); + return -1; } if (status != 0) { sfree(db); - return (status); + return status; } /* Fill the `cj_t' structure.. */ @@ -734,10 +732,10 @@ static int cj_config_add_url(oconfig_item_t *ci) /* {{{ */ sfree(cb_name); } else { cj_free(db); - return (-1); + return -1; } - return (0); + return 0; } /* }}} int cj_config_add_database */ @@ -768,10 +766,10 @@ static int cj_config(oconfig_item_t *ci) /* {{{ */ if ((success == 0) && (errors > 0)) { ERROR("curl_json plugin: All statements failed."); - return (-1); + return -1; } - return (0); + return 0; } /* }}} int cj_config */ /* }}} End of configuration handling functions */ @@ -820,13 +818,13 @@ static int cj_sock_perform(cj_t *db) /* {{{ */ int fd = socket(AF_UNIX, SOCK_STREAM, 0); if (fd < 0) - return (-1); + return -1; if (connect(fd, (struct sockaddr *)&sa_unix, sizeof(sa_unix)) < 0) { ERROR("curl_json plugin: connect(%s) failed: %s", (db->sock != NULL) ? db->sock : "", sstrerror(errno, errbuf, sizeof(errbuf))); close(fd); - return (-1); + return -1; } ssize_t red; @@ -838,13 +836,13 @@ static int cj_sock_perform(cj_t *db) /* {{{ */ (db->sock != NULL) ? db->sock : "", sstrerror(errno, errbuf, sizeof(errbuf))); close(fd); - return (-1); + return -1; } if (!cj_curl_callback(buffer, red, 1, db)) break; } while (red > 0); close(fd); - return (0); + return 0; } /* }}} int cj_sock_perform */ static int cj_curl_perform(cj_t *db) /* {{{ */ @@ -858,7 +856,7 @@ static int cj_curl_perform(cj_t *db) /* {{{ */ if (status != CURLE_OK) { ERROR("curl_json plugin: curl_easy_perform failed with status %i: %s (%s)", status, db->curl_errbuf, url); - return (-1); + return -1; } if (db->stats != NULL) curl_stats_dispatch(db->stats, db->curl, cj_host(db), "curl_json", @@ -872,9 +870,9 @@ static int cj_curl_perform(cj_t *db) /* {{{ */ ERROR("curl_json plugin: curl_easy_perform failed with " "response code %ld (%s)", rc, url); - return (-1); + return -1; } - return (0); + return 0; } /* }}} int cj_curl_perform */ static int cj_perform(cj_t *db) /* {{{ */ @@ -892,7 +890,7 @@ static int cj_perform(cj_t *db) /* {{{ */ if (db->yajl == NULL) { ERROR("curl_json plugin: yajl_alloc failed."); db->yajl = yprev; - return (-1); + return -1; } if (db->url) @@ -902,7 +900,7 @@ static int cj_perform(cj_t *db) /* {{{ */ if (status < 0) { yajl_free(db->yajl); db->yajl = yprev; - return (-1); + return -1; } #if HAVE_YAJL_V2 @@ -919,12 +917,12 @@ static int cj_perform(cj_t *db) /* {{{ */ yajl_free_error(db->yajl, errmsg); yajl_free(db->yajl); db->yajl = yprev; - return (-1); + return -1; } yajl_free(db->yajl); db->yajl = yprev; - return (0); + return 0; } /* }}} int cj_perform */ static int cj_read(user_data_t *ud) /* {{{ */ @@ -933,7 +931,7 @@ static int cj_read(user_data_t *ud) /* {{{ */ if ((ud == NULL) || (ud->data == NULL)) { ERROR("curl_json plugin: cj_read: Invalid user data."); - return (-1); + return -1; } db = (cj_t *)ud->data; @@ -950,7 +948,7 @@ static int cj_init(void) /* {{{ */ /* Call this while collectd is still single-threaded to avoid * initialization issues in libgcrypt. */ curl_global_init(CURL_GLOBAL_SSL); - return (0); + return 0; } /* }}} int cj_init */ void module_register(void) {