X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fsysevent.c;h=7f9aa9f65460a77badf9cdca69a64048375c2fa9;hb=0976eb7abb1c17134ad82ed7ac8d07f4000ce174;hp=83924c8daa83630f79bd87fdbb03d03848ec6e9d;hpb=7c720c86e5bb329d78ba46133f818010d5ab5fee;p=collectd.git diff --git a/src/sysevent.c b/src/sysevent.c index 83924c8d..7f9aa9f6 100644 --- a/src/sysevent.c +++ b/src/sysevent.c @@ -26,10 +26,10 @@ #include "collectd.h" -#include "common.h" #include "plugin.h" +#include "utils/common/common.h" +#include "utils/ignorelist/ignorelist.h" #include "utils_complain.h" -#include "utils_ignorelist.h" #include #include @@ -472,7 +472,7 @@ static int read_socket() { } else { DEBUG("sysevent plugin: writing %s", buffer); - strncpy(ring.buffer[ring.head], buffer, sizeof(buffer)); + sstrncpy(ring.buffer[ring.head], buffer, sizeof(buffer)); ring.timestamp[ring.head] = cdtime(); ring.head = next; } @@ -924,16 +924,26 @@ static int sysevent_init(void) /* {{{ */ ring.buffer = (char **)calloc(buffer_length, sizeof(char *)); if (ring.buffer == NULL) { - ERROR("sysevent plugin: sysevent_init calloc failed"); + ERROR("sysevent plugin: sysevent_init ring buffer calloc failed"); return -1; } for (int i = 0; i < buffer_length; i++) { ring.buffer[i] = calloc(1, listen_buffer_size); + + if (ring.buffer[i] == NULL) { + ERROR("sysevent plugin: sysevent_init ring buffer entry calloc failed"); + return -1; + } } ring.timestamp = (cdtime_t *)calloc(buffer_length, sizeof(cdtime_t)); + if (ring.timestamp == NULL) { + ERROR("sysevent plugin: sysevent_init ring buffer timestamp calloc failed"); + return -1; + } + if (sock == -1) { struct addrinfo hints = { .ai_family = AF_UNSPEC, @@ -1085,7 +1095,7 @@ static int sysevent_read(void) /* {{{ */ "Restarting it.", sysevent_socket_thread_error); - stop_threads(0); + stop_threads(); start_threads(); @@ -1101,7 +1111,7 @@ static int sysevent_shutdown(void) /* {{{ */ { DEBUG("sysevent plugin: Shutting down thread."); - int status = stop_threads(1); + int status = stop_threads(); int status2 = 0; if (sock != -1) {