#include "collectd/lcc_features.h"
#include "collectd/network_parse.h"
+#include "globals.h"
#include <errno.h>
#include <math.h>
#include <pthread.h>
+#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
#elif HAVE_SYS_ENDIAN_H
#include <sys/endian.h>
#else /* fallback */
-__attribute__((const)) static uint16_t be16toh(uint16_t n) {
- uint8_t tmp[2];
- memmove(tmp, &n, sizeof(tmp));
-
- return ((uint16_t)tmp[0] << 8) | ((uint16_t)tmp[1] << 0);
-}
-
-__attribute__((const)) static uint64_t be64toh(uint64_t n) {
- uint8_t tmp[8];
- memmove(tmp, &n, sizeof(tmp));
-
- return ((uint64_t)tmp[0] << 56) | ((uint64_t)tmp[1] << 48) |
- ((uint64_t)tmp[2] << 40) | ((uint64_t)tmp[3] << 32) |
- ((uint64_t)tmp[4] << 24) | ((uint64_t)tmp[5] << 16) |
- ((uint64_t)tmp[6] << 8) | ((uint64_t)tmp[7] << 0);
-}
+#include "collectd/stdendian.h"
#endif
#if HAVE_GCRYPT_H
lcc_network_parse_options_t const *opts);
#if HAVE_GCRYPT_H
-static int init_gcrypt() {
+static int init_gcrypt(void) {
/* http://lists.gnupg.org/pipermail/gcrypt-devel/2003-August/000458.html
* Because you can't know in a library whether another library has
* already initialized the library */
size_t out_size) {
char *in = payload;
- if ((payload_size < 1) || (in[payload_size - 1] != 0) ||
+ if ((payload_size < 1) || (in[payload_size - 1] != '\0') ||
(payload_size > out_size))
return EINVAL;
- strncpy(out, in, out_size);
+ strncpy(out, in, out_size - 1);
+ out[out_size - 1] = '\0';
return 0;
}
static double ntohd(double val) /* {{{ */
{
- static int config = 0;
+ static int config;
union {
uint8_t byte[8];
return EINVAL;
state->values_len = (size_t)n;
- state->values = calloc(sizeof(*state->values), state->values_len);
- state->values_types = calloc(sizeof(*state->values_types), state->values_len);
+ state->values = calloc(state->values_len, sizeof(*state->values));
+ state->values_types = calloc(state->values_len, sizeof(*state->values_types));
if ((state->values == NULL) || (state->values_types == NULL)) {
return ENOMEM;
}
uint8_t pwhash[32] = {0};
gcry_md_hash_buffer(GCRY_MD_SHA256, pwhash, password, strlen(password));
- fprintf(stderr, "sizeof(iv) = %zu\n", sizeof(iv));
+ fprintf(stderr, "sizeof(iv) = %" PRIsz "\n", sizeof(iv));
if (gcry_cipher_setkey(cipher, pwhash, sizeof(pwhash)) ||
gcry_cipher_setiv(cipher, iv, iv_size) ||
gcry_cipher_decrypt(cipher, b->data, b->len, /* in = */ NULL,
if ((sz < 5) || (((size_t)sz - 4) > b->len)) {
DEBUG("lcc_network_parse(): invalid 'sz' field: sz = %" PRIu16
- ", b->len = %zu\n",
+ ", b->len = %" PRIsz "\n",
sz, b->len);
return EINVAL;
}