*/
#include "collectd.h"
+
#include "common.h"
#include "plugin.h"
-#include "configfile.h"
-
#include <stddef.h>
-#if HAVE_LIBPTHREAD
-# include <pthread.h>
-#endif
-
#include <sys/un.h>
#include <sys/select.h>
}
{ /* initialize collector threads */
- int i = 0;
- int err = 0;
-
pthread_attr_t ptattr;
conns.head = NULL;
collectors =
smalloc (max_conns * sizeof (*collectors));
- for (i = 0; i < max_conns; ++i) {
+ for (int i = 0; i < max_conns; ++i) {
collectors[i] = smalloc (sizeof (*collectors[i]));
collectors[i]->socket = NULL;
- if (0 != (err = plugin_thread_create (&collectors[i]->thread,
- &ptattr, collect, collectors[i]))) {
+ if (plugin_thread_create (&collectors[i]->thread,
+ &ptattr, collect, collectors[i],
+ "email collector") != 0) {
char errbuf[1024];
- log_err ("pthread_create() failed: %s",
+ log_err ("plugin_thread_create() failed: %s",
sstrerror (errno, errbuf, sizeof (errbuf)));
collectors[i]->thread = (pthread_t) 0;
}
static int email_init (void)
{
- int err = 0;
-
- if (0 != (err = plugin_thread_create (&connector, NULL,
- open_connection, NULL))) {
+ if (plugin_thread_create (&connector, NULL,
+ open_connection, NULL, "email listener") != 0) {
char errbuf[1024];
disabled = 1;
- log_err ("pthread_create() failed: %s",
+ log_err ("plugin_thread_create() failed: %s",
sstrerror (errno, errbuf, sizeof (errbuf)));
return (-1);
}
static int email_shutdown (void)
{
- int i = 0;
-
if (connector != ((pthread_t) 0)) {
pthread_kill (connector, SIGTERM);
connector = (pthread_t) 0;
available_collectors = 0;
if (collectors != NULL) {
- for (i = 0; i < max_conns; ++i) {
+ for (int i = 0; i < max_conns; ++i) {
if (collectors[i] == NULL)
continue;
static void email_submit (const char *type, const char *type_instance, gauge_t value)
{
- value_t values[1];
value_list_t vl = VALUE_LIST_INIT;
- values[0].gauge = value;
-
- vl.values = values;
+ vl.values = &(value_t) { .gauge = value };
vl.values_len = 1;
- sstrncpy (vl.host, hostname_g, sizeof (vl.host));
sstrncpy (vl.plugin, "email", sizeof (vl.plugin));
sstrncpy (vl.type, type, sizeof (vl.type));
sstrncpy (vl.type_instance, type_instance, sizeof (vl.type_instance));
* after they have been copied to l2. */
static void copy_type_list (type_list_t *l1, type_list_t *l2)
{
- type_t *ptr1;
- type_t *ptr2;
-
type_t *last = NULL;
- for (ptr1 = l1->head, ptr2 = l2->head; NULL != ptr1;
+ for (type_t *ptr1 = l1->head, *ptr2 = l2->head; NULL != ptr1;
ptr1 = ptr1->next, last = ptr2, ptr2 = ptr2->next) {
if (NULL == ptr2) {
ptr2 = smalloc (sizeof (*ptr2));
static int email_read (void)
{
- type_t *ptr;
-
double score_old;
int score_count_old;
pthread_mutex_unlock (&count_mutex);
- for (ptr = list_count_copy.head; NULL != ptr; ptr = ptr->next) {
+ for (type_t *ptr = list_count_copy.head; NULL != ptr; ptr = ptr->next) {
email_submit ("email_count", ptr->name, ptr->value);
}
pthread_mutex_unlock (&size_mutex);
- for (ptr = list_size_copy.head; NULL != ptr; ptr = ptr->next) {
+ for (type_t *ptr = list_size_copy.head; NULL != ptr; ptr = ptr->next) {
email_submit ("email_size", ptr->name, ptr->value);
}
pthread_mutex_unlock (&check_mutex);
- for (ptr = list_check_copy.head; NULL != ptr; ptr = ptr->next)
+ for (type_t *ptr = list_check_copy.head; NULL != ptr; ptr = ptr->next)
email_submit ("spam_check", ptr->name, ptr->value);
return (0);