X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fiptables.c;h=ea2d24045de9a23c04522d0e7837a1bfa3a02876;hp=8969cf74a60d88ed09774f2e9e6057586c39b02b;hb=54619dc85fd308b21ed09a0271e5c7383c7921b9;hpb=be126043c2be20399d7670fe194645292018bde0 diff --git a/src/iptables.c b/src/iptables.c index 8969cf74..ea2d2404 100644 --- a/src/iptables.c +++ b/src/iptables.c @@ -26,8 +26,8 @@ #include "collectd.h" -#include "common.h" #include "plugin.h" +#include "utils/common/common.h" #include #include @@ -86,8 +86,8 @@ typedef struct { char name[64]; } ip_chain_t; -static ip_chain_t **chain_list = NULL; -static int chain_num = 0; +static ip_chain_t **chain_list; +static int chain_num; static int iptables_config(const char *key, const char *value) { /* int ip_value; */ @@ -101,11 +101,9 @@ static int iptables_config(const char *key, const char *value) { return 1; ip_chain_t temp = {0}; - ip_chain_t * final, **list; + ip_chain_t *final, **list; char *table; - int table_len; char *chain; - int chain_len; char *value_copy; char *fields[4]; @@ -113,8 +111,7 @@ static int iptables_config(const char *key, const char *value) { value_copy = strdup(value); if (value_copy == NULL) { - char errbuf[1024]; - ERROR("strdup failed: %s", sstrerror(errno, errbuf, sizeof(errbuf))); + ERROR("strdup failed: %s", STRERRNO); return 1; } @@ -137,16 +134,16 @@ static int iptables_config(const char *key, const char *value) { table = fields[0]; chain = fields[1]; - table_len = strlen(table) + 1; - if ((unsigned int)table_len > sizeof(temp.table)) { + size_t table_len = strlen(table) + 1; + if (table_len > sizeof(temp.table)) { ERROR("Table `%s' too long.", table); free(value_copy); return 1; } sstrncpy(temp.table, table, table_len); - chain_len = strlen(chain) + 1; - if ((unsigned int)chain_len > sizeof(temp.chain)) { + size_t chain_len = strlen(chain) + 1; + if (chain_len > sizeof(temp.chain)) { ERROR("Chain `%s' too long.", chain); free(value_copy); return 1; @@ -182,17 +179,15 @@ static int iptables_config(const char *key, const char *value) { list = realloc(chain_list, (chain_num + 1) * sizeof(ip_chain_t *)); if (list == NULL) { - char errbuf[1024]; - ERROR("realloc failed: %s", sstrerror(errno, errbuf, sizeof(errbuf))); + ERROR("realloc failed: %s", STRERRNO); sfree(temp.rule.comment); return 1; } chain_list = list; - final = malloc(sizeof(* final)); + final = malloc(sizeof(*final)); if (final == NULL) { - char errbuf[1024]; - ERROR("malloc failed: %s", sstrerror(errno, errbuf, sizeof(errbuf))); + ERROR("malloc failed: %s", STRERRNO); sfree(temp.rule.comment); return 1; } @@ -226,7 +221,7 @@ static int submit6_match(const struct ip6t_entry_match *match, sstrncpy(vl.plugin, "ip6tables", sizeof(vl.plugin)); - status = snprintf(vl.plugin_instance, sizeof(vl.plugin_instance), "%s-%s", + status = ssnprintf(vl.plugin_instance, sizeof(vl.plugin_instance), "%s-%s", chain->table, chain->chain); if ((status < 1) || ((unsigned int)status >= sizeof(vl.plugin_instance))) return 0; @@ -235,7 +230,7 @@ static int submit6_match(const struct ip6t_entry_match *match, sstrncpy(vl.type_instance, chain->name, sizeof(vl.type_instance)); } else { if (chain->rule_type == RTYPE_NUM) - snprintf(vl.type_instance, sizeof(vl.type_instance), "%i", + ssnprintf(vl.type_instance, sizeof(vl.type_instance), "%i", chain->rule.num); else sstrncpy(vl.type_instance, (char *)match->data, sizeof(vl.type_instance)); @@ -274,7 +269,7 @@ static int submit_match(const struct ipt_entry_match *match, sstrncpy(vl.plugin, "iptables", sizeof(vl.plugin)); - status = snprintf(vl.plugin_instance, sizeof(vl.plugin_instance), "%s-%s", + status = ssnprintf(vl.plugin_instance, sizeof(vl.plugin_instance), "%s-%s", chain->table, chain->chain); if ((status < 1) || ((unsigned int)status >= sizeof(vl.plugin_instance))) return 0; @@ -283,7 +278,7 @@ static int submit_match(const struct ipt_entry_match *match, sstrncpy(vl.type_instance, chain->name, sizeof(vl.type_instance)); } else { if (chain->rule_type == RTYPE_NUM) - snprintf(vl.type_instance, sizeof(vl.type_instance), "%i", + ssnprintf(vl.type_instance, sizeof(vl.type_instance), "%i", chain->rule.num); else sstrncpy(vl.type_instance, (char *)match->data, sizeof(vl.type_instance));