Fix compile time issues
[collectd.git] / src / conntrack.c
index 69170d7..7b61eef 100644 (file)
@@ -23,8 +23,8 @@
 
 #include "collectd.h"
 
-#include "common.h"
 #include "plugin.h"
+#include "utils/common/common.h"
 
 #if !KERNEL_LINUX
 #error "No applicable input method."
@@ -41,7 +41,7 @@ static int config_keys_num = STATIC_ARRAY_SIZE(config_keys);
     Each table/chain combo that will be queried goes into this list
 */
 
-static int old_files = 0;
+static int old_files;
 
 static int conntrack_config(const char *key, const char *value) {
   if (strcmp(key, "OldFiles") == 0)
@@ -56,7 +56,6 @@ static void conntrack_submit(const char *type, const char *type_instance,
 
   vl.values = &conntrack;
   vl.values_len = 1;
-  sstrncpy(vl.host, hostname_g, sizeof(vl.host));
   sstrncpy(vl.plugin, "conntrack", sizeof(vl.plugin));
   sstrncpy(vl.type, type, sizeof(vl.type));
   if (type_instance != NULL)
@@ -67,58 +66,26 @@ static void conntrack_submit(const char *type, const char *type_instance,
 
 static int conntrack_read(void) {
   value_t conntrack, conntrack_max, conntrack_pct;
-  FILE *fh;
-  char buffer[64] = {0};
-  size_t buffer_len;
 
-  fh = fopen(old_files ? CONNTRACK_FILE_OLD : CONNTRACK_FILE, "r");
-  if (fh == NULL)
-    return (-1);
-
-  if (fgets(buffer, sizeof(buffer), fh) == NULL) {
-    fclose(fh);
-    return (-1);
+  char const *path = old_files ? CONNTRACK_FILE_OLD : CONNTRACK_FILE;
+  if (parse_value_file(path, &conntrack, DS_TYPE_GAUGE) != 0) {
+    ERROR("conntrack plugin: Reading \"%s\" failed.", path);
+    return -1;
   }
-  fclose(fh);
 
-  /* strip trailing newline. */
-  buffer_len = strlen(buffer);
-  while ((buffer_len > 0) && isspace((int)buffer[buffer_len - 1])) {
-    buffer[buffer_len - 1] = 0;
-    buffer_len--;
+  path = old_files ? CONNTRACK_MAX_FILE_OLD : CONNTRACK_MAX_FILE;
+  if (parse_value_file(path, &conntrack_max, DS_TYPE_GAUGE) != 0) {
+    ERROR("conntrack plugin: Reading \"%s\" failed.", path);
+    return -1;
   }
 
-  if (parse_value(buffer, &conntrack, DS_TYPE_GAUGE) != 0)
-    return (-1);
+  conntrack_pct.gauge = (conntrack.gauge / conntrack_max.gauge) * 100;
 
   conntrack_submit("conntrack", NULL, conntrack);
-
-  fh = fopen(old_files ? CONNTRACK_MAX_FILE_OLD : CONNTRACK_MAX_FILE, "r");
-  if (fh == NULL)
-    return (-1);
-
-  memset(buffer, 0, sizeof(buffer));
-  if (fgets(buffer, sizeof(buffer), fh) == NULL) {
-    fclose(fh);
-    return (-1);
-  }
-  fclose(fh);
-
-  /* strip trailing newline. */
-  buffer_len = strlen(buffer);
-  while ((buffer_len > 0) && isspace((int)buffer[buffer_len - 1])) {
-    buffer[buffer_len - 1] = 0;
-    buffer_len--;
-  }
-
-  if (parse_value(buffer, &conntrack_max, DS_TYPE_GAUGE) != 0)
-    return (-1);
-
   conntrack_submit("conntrack", "max", conntrack_max);
-  conntrack_pct.gauge = (conntrack.gauge / conntrack_max.gauge) * 100;
   conntrack_submit("percent", "used", conntrack_pct);
 
-  return (0);
+  return 0;
 } /* static int conntrack_read */
 
 void module_register(void) {