Merge branch 'collectd-5.7' into collectd-5.8
authorFlorian Forster <octo@collectd.org>
Thu, 7 Dec 2017 16:10:05 +0000 (17:10 +0100)
committerFlorian Forster <octo@collectd.org>
Thu, 7 Dec 2017 16:10:05 +0000 (17:10 +0100)
1  2 
src/email.c

diff --combined src/email.c
@@@ -159,18 -159,18 +159,18 @@@ static type_list_t list_check_copy
   * Private functions
   */
  static int email_config(const char *key, const char *value) {
 -  if (0 == strcasecmp(key, "SocketFile")) {
 -    if (NULL != sock_file)
 +  if (strcasecmp(key, "SocketFile") == 0) {
 +    if (sock_file != NULL)
        free(sock_file);
      sock_file = sstrdup(value);
 -  } else if (0 == strcasecmp(key, "SocketGroup")) {
 -    if (NULL != sock_group)
 +  } else if (strcasecmp(key, "SocketGroup") == 0) {
 +    if (sock_group != NULL)
        free(sock_group);
      sock_group = sstrdup(value);
 -  } else if (0 == strcasecmp(key, "SocketPerms")) {
 +  } else if (strcasecmp(key, "SocketPerms") == 0) {
      /* the user is responsible for providing reasonable values */
      sock_perms = (int)strtol(value, NULL, 8);
 -  } else if (0 == strcasecmp(key, "MaxConns")) {
 +  } else if (strcasecmp(key, "MaxConns") == 0) {
      long int tmp = strtol(value, NULL, 0);
  
      if (tmp < 1) {
  
  /* Increment the value of the given name in the given list by incr. */
  static void type_list_incr(type_list_t *list, char *name, int incr) {
 -  if (NULL == list->head) {
 +  if (list->head == NULL) {
      list->head = smalloc(sizeof(*list->head));
  
      list->head->name = sstrdup(name);
      type_t *ptr;
  
      for (ptr = list->head; NULL != ptr; ptr = ptr->next) {
 -      if (0 == strcmp(name, ptr->name))
 +      if (strcmp(name, ptr->name) == 0)
          break;
      }
  
 -    if (NULL == ptr) {
 +    if (ptr == NULL) {
        list->tail->next = smalloc(sizeof(*list->tail->next));
        list->tail = list->tail->next;
  
@@@ -238,14 -238,14 +238,14 @@@ static void *collect(void *arg) 
  
      pthread_mutex_lock(&conns_mutex);
  
 -    while (NULL == conns.head) {
 +    while (conns.head == NULL) {
        pthread_cond_wait(&conn_available, &conns_mutex);
      }
  
      connection = conns.head;
      conns.head = conns.head->next;
  
 -    if (NULL == conns.head) {
 +    if (conns.head == NULL) {
        conns.tail = NULL;
      }
  
        int len = 0;
  
        errno = 0;
 -      if (NULL == fgets(line, sizeof(line), this->socket)) {
 -        if (0 != errno) {
 +      if (fgets(line, sizeof(line), this->socket) == NULL) {
 +        if (errno != 0) {
            char errbuf[1024];
            log_err("collect: reading from socket (fd #%i) "
                    "failed: %s",
        }
  
        len = strlen(line);
 -      if (('\n' != line[len - 1]) && ('\r' != line[len - 1])) {
 +      if ((line[len - 1] != '\n') && (line[len - 1] != '\r')) {
          log_warn("collect: line too long (> %zu characters): "
                   "'%s' (truncated)",
                   sizeof(line) - 1, line);
  
 -        while (NULL != fgets(line, sizeof(line), this->socket))
 -          if (('\n' == line[len - 1]) || ('\r' == line[len - 1]))
 +        while (fgets(line, sizeof(line), this->socket) != NULL)
 +          if ((line[len - 1] == '\n') || (line[len - 1] == '\r'))
              break;
          continue;
        }
  
        log_debug("collect: line = '%s'", line);
  
 -      if (':' != line[1]) {
 +      if (line[1] != ':') {
          log_err("collect: syntax error in line '%s'", line);
          continue;
        }
  
 -      if ('e' == line[0]) { /* e:<type>:<bytes> */
 +      if (line[0] == 'e') { /* e:<type>:<bytes> */
-         char *ptr = NULL;
-         char *type = strtok_r(line + 2, ":", &ptr);
-         char *tmp = strtok_r(NULL, ":", &ptr);
-         int bytes = 0;
-         if (tmp == NULL) {
+         char *type = line + 2;
+         char *bytes_str = strchr(type, ':');
+         if (bytes_str == NULL) {
            log_err("collect: syntax error in line '%s'", line);
            continue;
          }
  
-         bytes = atoi(tmp);
+         *bytes_str = 0;
+         bytes_str++;
  
          pthread_mutex_lock(&count_mutex);
          type_list_incr(&list_count, type, /* increment = */ 1);
          pthread_mutex_unlock(&count_mutex);
  
+         int bytes = atoi(bytes_str);
          if (bytes > 0) {
            pthread_mutex_lock(&size_mutex);
            type_list_incr(&list_size, type, /* increment = */ bytes);
            pthread_mutex_unlock(&size_mutex);
          }
 -      } else if ('s' == line[0]) { /* s:<value> */
 +      } else if (line[0] == 's') { /* s:<value> */
          pthread_mutex_lock(&score_mutex);
          score = (score * (double)score_count + atof(line + 2)) /
                  (double)(score_count + 1);
          ++score_count;
          pthread_mutex_unlock(&score_mutex);
 -      } else if ('c' == line[0]) { /* c:<type1>[,<type2>,...] */
 +      } else if (line[0] == 'c') { /* c:<type1>[,<type2>,...] */
          char *dummy = line + 2;
          char *endptr = NULL;
          char *type;
    } /* while (1) */
  
    pthread_exit((void *)0);
 -  return ((void *)0);
 +  return (void *)0;
  } /* static void *collect (void *) */
  
  static void *open_connection(void __attribute__((unused)) * arg) {
  
    /* create UNIX socket */
    errno = 0;
 -  if (-1 == (connector_socket = socket(PF_UNIX, SOCK_STREAM, 0))) {
 +  if ((connector_socket = socket(PF_UNIX, SOCK_STREAM, 0)) == -1) {
      char errbuf[1024];
      disabled = 1;
      log_err("socket() failed: %s", sstrerror(errno, errbuf, sizeof(errbuf)));
    }
  
    struct sockaddr_un addr = {
-     .sun_family = AF_UNIX
+       .sun_family = AF_UNIX,
    };
    sstrncpy(addr.sun_path, path, (size_t)(UNIX_PATH_MAX - 1));
  
    errno = 0;
 -  if (-1 ==
 -      bind(connector_socket, (struct sockaddr *)&addr,
 -           offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path))) {
 +  if (bind(connector_socket, (struct sockaddr *)&addr,
-            offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path)) == -1) {
++           offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path)) ==
++      -1) {
      char errbuf[1024];
      disabled = 1;
      close(connector_socket);
    }
  
    errno = 0;
 -  if (-1 == listen(connector_socket, 5)) {
 +  if (listen(connector_socket, 5) == -1) {
      char errbuf[1024];
      disabled = 1;
      close(connector_socket);
    }
  
    errno = 0;
 -  if (0 != chmod(path, sock_perms)) {
 +  if (chmod(path, sock_perms) != 0) {
      char errbuf[1024];
      log_warn("chmod() failed: %s", sstrerror(errno, errbuf, sizeof(errbuf)));
    }
  
      pthread_mutex_lock(&available_mutex);
  
 -    while (0 == available_collectors) {
 +    while (available_collectors == 0) {
        pthread_cond_wait(&collector_available, &available_mutex);
      }
  
      connection->socket = fdopen(remote, "r");
      connection->next = NULL;
  
 -    if (NULL == connection->socket) {
 +    if (connection->socket == NULL) {
        close(remote);
        sfree(connection);
        continue;
  
      pthread_mutex_lock(&conns_mutex);
  
 -    if (NULL == conns.head) {
 +    if (conns.head == NULL) {
        conns.head = connection;
        conns.tail = connection;
      } else {
    }
  
    pthread_exit((void *)0);
 -  return ((void *)0);
 +  return (void *)0;
  } /* static void *open_connection (void *) */
  
  static int email_init(void) {
      disabled = 1;
      log_err("plugin_thread_create() failed: %s",
              sstrerror(errno, errbuf, sizeof(errbuf)));
 -    return (-1);
 +    return -1;
    }
  
 -  return (0);
 +  return 0;
  } /* int email_init */
  
  static void type_list_free(type_list_t *t) {
@@@ -610,11 -610,11 +610,11 @@@ static int email_shutdown(void) 
    type_list_free(&list_check);
    type_list_free(&list_check_copy);
  
 -  unlink((NULL == sock_file) ? SOCK_PATH : sock_file);
 +  unlink((sock_file == NULL) ? SOCK_PATH : sock_file);
  
    sfree(sock_file);
    sfree(sock_group);
 -  return (0);
 +  return 0;
  } /* static void email_shutdown (void) */
  
  static void email_submit(const char *type, const char *type_instance,
  static void copy_type_list(type_list_t *l1, type_list_t *l2) {
    type_t *last = NULL;
  
 -  for (type_t *ptr1 = l1->head, *ptr2 = l2->head; NULL != ptr1;
 +  for (type_t *ptr1 = l1->head, *ptr2 = l2->head; ptr1 != NULL;
         ptr1 = ptr1->next, last = ptr2, ptr2 = ptr2->next) {
 -    if (NULL == ptr2) {
 +    if (ptr2 == NULL) {
        ptr2 = smalloc(sizeof(*ptr2));
        ptr2->name = NULL;
        ptr2->next = NULL;
  
 -      if (NULL == last) {
 +      if (last == NULL) {
          l2->head = ptr2;
        } else {
          last->next = ptr2;
        l2->tail = ptr2;
      }
  
 -    if (NULL == ptr2->name) {
 +    if (ptr2->name == NULL) {
        ptr2->name = sstrdup(ptr1->name);
      }
  
@@@ -668,7 -668,7 +668,7 @@@ static int email_read(void) 
    int score_count_old;
  
    if (disabled)
 -    return (-1);
 +    return -1;
  
    /* email count */
    pthread_mutex_lock(&count_mutex);
  
    pthread_mutex_unlock(&count_mutex);
  
 -  for (type_t *ptr = list_count_copy.head; NULL != ptr; ptr = ptr->next) {
 +  for (type_t *ptr = list_count_copy.head; ptr != NULL; ptr = ptr->next) {
      email_submit("email_count", ptr->name, ptr->value);
    }
  
  
    pthread_mutex_unlock(&size_mutex);
  
 -  for (type_t *ptr = list_size_copy.head; NULL != ptr; ptr = ptr->next) {
 +  for (type_t *ptr = list_size_copy.head; ptr != NULL; ptr = ptr->next) {
      email_submit("email_size", ptr->name, ptr->value);
    }
  
  
    pthread_mutex_unlock(&check_mutex);
  
 -  for (type_t *ptr = list_check_copy.head; NULL != ptr; ptr = ptr->next)
 +  for (type_t *ptr = list_check_copy.head; ptr != NULL; ptr = ptr->next)
      email_submit("spam_check", ptr->name, ptr->value);
  
 -  return (0);
 +  return 0;
  } /* int email_read */
  
  void module_register(void) {
    plugin_register_read("email", email_read);
    plugin_register_shutdown("email", email_shutdown);
  } /* void module_register */
 -
 -/* vim: set sw=4 ts=4 tw=78 noexpandtab : */