#include "collectd.h"
-#include "common.h"
#include "plugin.h"
+#include "utils/common/common.h"
#if HAVE_MACH_MACH_TYPES_H
#include <mach/mach_types.h>
int battery_read_statefs(
void); /* defined in battery_statefs; used by StateFS backend */
-static _Bool report_percent = 0;
-static _Bool report_degraded = 0;
-static _Bool query_statefs = 0;
+static bool report_percent;
+static bool report_degraded;
+static bool query_statefs;
static void battery_submit2(char const *plugin_instance, /* {{{ */
char const *type, char const *type_instance,
kCFStringEncodingASCII);
if (key_obj == NULL) {
DEBUG("CFStringCreateWithCString (%s) failed.\n", key_string);
- return (NAN);
+ return NAN;
}
if ((val_obj = CFDictionaryGetValue(dict, key_obj)) == NULL) {
DEBUG("CFDictionaryGetValue (%s) failed.", key_string);
CFRelease(key_obj);
- return (NAN);
+ return NAN;
}
CFRelease(key_obj);
}
} else {
DEBUG("CFGetTypeID (val_obj) = %i", (int)CFGetTypeID(val_obj));
- return (NAN);
+ return NAN;
}
- return (val_double);
+ return val_double;
} /* }}} double dict_get_double */
#if HAVE_IOKIT_PS_IOPOWERSOURCES_H
if (!isnan(voltage))
battery_submit("0", "voltage", voltage);
- return (0);
+ return 0;
} /* }}} int battery_read */
/* #endif HAVE_IOKIT_IOKITLIB_H || HAVE_IOKIT_PS_IOPOWERSOURCES_H */
char filename[PATH_MAX];
int status;
- ssnprintf(filename, sizeof(filename), "%s/%s/%s", dir, power_supply,
- basename);
+ snprintf(filename, sizeof(filename), "%s/%s/%s", dir, power_supply, basename);
status = (int)read_file_contents(filename, buffer, buffer_size - 1);
if (status < 0)
status =
sysfs_file_to_buffer(dir, power_supply, basename, buffer, sizeof(buffer));
if (status != 0)
- return (status);
+ return status;
- return (strtogauge(buffer, ret_value));
+ return strtogauge(buffer, ret_value);
} /* }}} sysfs_file_to_gauge */
static int read_sysfs_capacity(char const *dir, /* {{{ */
status =
sysfs_file_to_gauge(dir, power_supply, "energy_now", &capacity_charged);
if (status != 0)
- return (status);
+ return status;
status =
sysfs_file_to_gauge(dir, power_supply, "energy_full", &capacity_full);
if (status != 0)
- return (status);
+ return status;
status = sysfs_file_to_gauge(dir, power_supply, "energy_full_design",
&capacity_design);
if (status != 0)
- return (status);
+ return status;
submit_capacity(plugin_instance, capacity_charged * SYSFS_FACTOR,
capacity_full * SYSFS_FACTOR, capacity_design * SYSFS_FACTOR);
- return (0);
+ return 0;
} /* }}} int read_sysfs_capacity */
static int read_sysfs_callback(char const *dir, /* {{{ */
char const *plugin_instance;
char buffer[32];
gauge_t v = NAN;
- _Bool discharging = 0;
+ bool discharging = false;
int status;
/* Ignore non-battery directories, such as AC power. */
status =
sysfs_file_to_buffer(dir, power_supply, "type", buffer, sizeof(buffer));
if (status != 0)
- return (0);
+ return 0;
if (strcasecmp("Battery", buffer) != 0)
- return (0);
+ return 0;
(void)sysfs_file_to_buffer(dir, power_supply, "status", buffer,
sizeof(buffer));
if (strcasecmp("Discharging", buffer) == 0)
- discharging = 1;
+ discharging = true;
/* FIXME: This is a dirty hack for backwards compatibility: The battery
* plugin, for a very long time, has had the plugin_instance
if (sysfs_file_to_gauge(dir, power_supply, "voltage_now", &v) == 0)
battery_submit(plugin_instance, "voltage", v * SYSFS_FACTOR);
- return (0);
+ return 0;
} /* }}} int read_sysfs_callback */
static int read_sysfs(void) /* {{{ */
int battery_counter = 0;
if (access(SYSFS_PATH, R_OK) != 0)
- return (ENOENT);
+ return ENOENT;
status = walk_directory(SYSFS_PATH, read_sysfs_callback,
/* user_data = */ &battery_counter,
/* include hidden */ 0);
- return (status);
+ return status;
} /* }}} int read_sysfs */
static int read_acpi_full_capacity(char const *dir, /* {{{ */
FILE *fh;
- ssnprintf(filename, sizeof(filename), "%s/%s/info", dir, power_supply);
+ snprintf(filename, sizeof(filename), "%s/%s/info", dir, power_supply);
fh = fopen(filename, "r");
if (fh == NULL)
- return (errno);
+ return errno;
/* last full capacity: 40090 mWh */
while (fgets(buffer, sizeof(buffer), fh) != NULL) {
}
fclose(fh);
- return (0);
+ return 0;
} /* }}} int read_acpi_full_capacity */
static int read_acpi_callback(char const *dir, /* {{{ */
gauge_t capacity_charged = NAN;
gauge_t capacity_full = NAN;
gauge_t capacity_design = NAN;
- _Bool charging = 0;
- _Bool is_current = 0;
+ bool charging = false;
+ bool is_current = false;
char const *plugin_instance;
char filename[PATH_MAX];
FILE *fh;
- ssnprintf(filename, sizeof(filename), "%s/%s/state", dir, power_supply);
+ snprintf(filename, sizeof(filename), "%s/%s/state", dir, power_supply);
fh = fopen(filename, "r");
if (fh == NULL) {
if ((errno == EAGAIN) || (errno == EINTR) || (errno == ENOENT))
- return (0);
+ return 0;
else
- return (errno);
+ return errno;
}
/*
if ((strcmp(fields[0], "charging") == 0) &&
(strcmp(fields[1], "state:") == 0)) {
if (strcmp(fields[2], "charging") == 0)
- charging = 1;
+ charging = true;
else
- charging = 0;
+ charging = false;
continue;
}
strtogauge(fields[2], &power);
if ((numfields >= 4) && (strcmp("mA", fields[3]) == 0))
- is_current = 1;
+ is_current = true;
} else if ((strcmp(fields[0], "remaining") == 0) &&
(strcmp(fields[1], "capacity:") == 0))
strtogauge(fields[2], &capacity_charged);
int battery_counter = 0;
if (access(PROC_ACPI_PATH, R_OK) != 0)
- return (ENOENT);
+ return ENOENT;
status = walk_directory(PROC_ACPI_PATH, read_acpi_callback,
/* user_data = */ &battery_counter,
/* include hidden */ 0);
- return (status);
+ return status;
} /* }}} int read_acpi */
static int read_pmu(void) /* {{{ */
gauge_t voltage = NAN;
gauge_t charge = NAN;
- ssnprintf(filename, sizeof(filename), PROC_PMU_PATH_FORMAT, i);
+ snprintf(filename, sizeof(filename), PROC_PMU_PATH_FORMAT, i);
if (access(filename, R_OK) != 0)
break;
- ssnprintf(plugin_instance, sizeof(plugin_instance), "%i", i);
+ snprintf(plugin_instance, sizeof(plugin_instance), "%i", i);
fh = fopen(filename, "r");
if (fh == NULL) {
else if ((errno == EAGAIN) || (errno == EINTR))
continue;
else
- return (errno);
+ return errno;
}
while (fgets(buffer, sizeof(buffer), fh) != NULL) {
}
if (i == 0)
- return (ENOENT);
- return (0);
+ return ENOENT;
+ return 0;
} /* }}} int read_pmu */
static int battery_read(void) /* {{{ */
DEBUG("battery plugin: Trying sysfs ...");
status = read_sysfs();
if (status == 0)
- return (0);
+ return 0;
DEBUG("battery plugin: Trying acpi ...");
status = read_acpi();
if (status == 0)
- return (0);
+ return 0;
DEBUG("battery plugin: Trying pmu ...");
status = read_pmu();
if (status == 0)
- return (0);
+ return 0;
ERROR("battery plugin: All available input methods failed.");
- return (-1);
+ return -1;
} /* }}} int battery_read */
#endif /* KERNEL_LINUX */
child->key);
}
- return (0);
+ return 0;
} /* }}} int battery_config */
void module_register(void) {