X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fmodbus.c;h=db7d033d3f1c0be05cb0f5d08623a369390f0d8e;hb=43954e07f30d05b2da8319749400c9bf4d01c23c;hp=51447b162e0e2240386a8b01c7d94702d3e83af6;hpb=10b10a6718dbb87c6890d4bc821a6e21c8b7b527;p=collectd.git diff --git a/src/modbus.c b/src/modbus.c index 51447b16..db7d033d 100644 --- a/src/modbus.c +++ b/src/modbus.c @@ -21,6 +21,7 @@ **/ #include "collectd.h" + #include "common.h" #include "plugin.h" #include "configfile.h" @@ -161,12 +162,10 @@ static mb_data_t *data_definitions = NULL; static mb_data_t *data_get_by_name (mb_data_t *src, /* {{{ */ const char *name) { - mb_data_t *ptr; - if (name == NULL) return (NULL); - for (ptr = src; ptr != NULL; ptr = ptr->next) + for (mb_data_t *ptr = src; ptr != NULL; ptr = ptr->next) if (strcasecmp (ptr->name, name) == 0) return (ptr); @@ -257,7 +256,7 @@ static int mb_submit (mb_host_t *host, mb_slave_t *slave, /* {{{ */ if ((host == NULL) || (slave == NULL) || (data == NULL)) return (EINVAL); - if (host->interval <= 0) + if (host->interval == 0) host->interval = plugin_get_interval (); if (slave->instance[0] == 0) @@ -427,7 +426,7 @@ static int mb_init_connection (mb_host_t *host) /* {{{ */ static int mb_read_data (mb_host_t *host, mb_slave_t *slave, /* {{{ */ mb_data_t *data) { - uint16_t values[2]; + uint16_t values[2] = { 0 }; int values_num; const data_set_t *ds; int status = 0; @@ -459,7 +458,6 @@ static int mb_read_data (mb_host_t *host, mb_slave_t *slave, /* {{{ */ "is not UINT32.", data->type, DS_TYPE_TO_STRING (ds->ds[0].type)); } - memset (values, 0, sizeof (values)); if ((data->register_type == REG_TYPE_INT32) || (data->register_type == REG_TYPE_UINT32) || (data->register_type == REG_TYPE_FLOAT)) @@ -622,7 +620,6 @@ static int mb_read_data (mb_host_t *host, mb_slave_t *slave, /* {{{ */ static int mb_read_slave (mb_host_t *host, mb_slave_t *slave) /* {{{ */ { - mb_data_t *data; int success; int status; @@ -630,7 +627,7 @@ static int mb_read_slave (mb_host_t *host, mb_slave_t *slave) /* {{{ */ return (EINVAL); success = 0; - for (data = slave->collect; data != NULL; data = data->next) + for (mb_data_t *data = slave->collect; data != NULL; data = data->next) { status = mb_read_data (host, slave, data); if (status == 0) @@ -646,7 +643,6 @@ static int mb_read_slave (mb_host_t *host, mb_slave_t *slave) /* {{{ */ static int mb_read (user_data_t *user_data) /* {{{ */ { mb_host_t *host; - size_t i; int success; int status; @@ -656,7 +652,7 @@ static int mb_read (user_data_t *user_data) /* {{{ */ host = user_data->data; success = 0; - for (i = 0; i < host->slaves_num; i++) + for (size_t i = 0; i < host->slaves_num; i++) { status = mb_read_slave (host, host->slaves + i); if (status == 0) @@ -695,12 +691,10 @@ static void data_free_all (mb_data_t *data) /* {{{ */ static void slaves_free_all (mb_slave_t *slaves, size_t slaves_num) /* {{{ */ { - size_t i; - if (slaves == NULL) return; - for (i = 0; i < slaves_num; i++) + for (size_t i = 0; i < slaves_num; i++) data_free_all (slaves[i].collect); sfree (slaves); } /* }}} void slaves_free_all */ @@ -720,11 +714,9 @@ static void host_free (void *void_host) /* {{{ */ static int mb_config_add_data (oconfig_item_t *ci) /* {{{ */ { - mb_data_t data; + mb_data_t data = { 0 }; int status; - int i; - memset (&data, 0, sizeof (data)); data.name = NULL; data.register_type = REG_TYPE_UINT16; data.next = NULL; @@ -733,7 +725,7 @@ static int mb_config_add_data (oconfig_item_t *ci) /* {{{ */ if (status != 0) return (status); - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i; @@ -819,24 +811,17 @@ static int mb_config_set_host_address (mb_host_t *host, /* {{{ */ const char *address) { struct addrinfo *ai_list; - struct addrinfo *ai_ptr; - struct addrinfo ai_hints; int status; if ((host == NULL) || (address == NULL)) return (EINVAL); - memset (&ai_hints, 0, sizeof (ai_hints)); -#if AI_ADDRCONFIG - ai_hints.ai_flags |= AI_ADDRCONFIG; -#endif - /* XXX: libmodbus can only handle IPv4 addresses. */ - ai_hints.ai_family = AF_INET; - ai_hints.ai_addr = NULL; - ai_hints.ai_canonname = NULL; - ai_hints.ai_next = NULL; + struct addrinfo ai_hints = { + /* XXX: libmodbus can only handle IPv4 addresses. */ + .ai_family = AF_INET, + .ai_flags = AI_ADDRCONFIG + }; - ai_list = NULL; status = getaddrinfo (address, /* service = */ NULL, &ai_hints, &ai_list); if (status != 0) @@ -849,7 +834,7 @@ static int mb_config_set_host_address (mb_host_t *host, /* {{{ */ return (status); } - for (ai_ptr = ai_list; ai_ptr != NULL; ai_ptr = ai_ptr->ai_next) + for (struct addrinfo *ai_ptr = ai_list; ai_ptr != NULL; ai_ptr = ai_ptr->ai_next) { status = getnameinfo (ai_ptr->ai_addr, ai_ptr->ai_addrlen, host->node, sizeof (host->node), @@ -876,7 +861,6 @@ static int mb_config_add_slave (mb_host_t *host, oconfig_item_t *ci) /* {{{ */ { mb_slave_t *slave; int status; - int i; if ((host == NULL) || (ci == NULL)) return (EINVAL); @@ -893,7 +877,7 @@ static int mb_config_add_slave (mb_host_t *host, oconfig_item_t *ci) /* {{{ */ if (status != 0) return (status); - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i; @@ -936,7 +920,6 @@ static int mb_config_add_host (oconfig_item_t *ci) /* {{{ */ { mb_host_t *host; int status; - int i; host = calloc (1, sizeof (*host)); if (host == NULL) @@ -955,7 +938,7 @@ static int mb_config_add_host (oconfig_item_t *ci) /* {{{ */ return (EINVAL); } - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i; status = 0; @@ -1044,12 +1027,10 @@ static int mb_config_add_host (oconfig_item_t *ci) /* {{{ */ static int mb_config (oconfig_item_t *ci) /* {{{ */ { - int i; - if (ci == NULL) return (EINVAL); - for (i = 0; i < ci->children_num; i++) + for (int i = 0; i < ci->children_num; i++) { oconfig_item_t *child = ci->children + i;