From cca41d176d94ba2480d5b5322a24ac358b45f24f Mon Sep 17 00:00:00 2001 From: Roger Light Date: Sat, 20 Mar 2021 19:16:13 +0000 Subject: [PATCH] Fix inconsistent sign in log__printf declaration. --- lib/logging_mosq.c | 5 +++-- lib/logging_mosq.h | 6 +++++- src/logging.c | 1 + src/mosquitto_broker_internal.h | 2 +- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/logging_mosq.c b/lib/logging_mosq.c index 16e9e949..24d56867 100644 --- a/lib/logging_mosq.c +++ b/lib/logging_mosq.c @@ -23,11 +23,12 @@ Contributors: #include #include +#include "logging_mosq.h" #include "mosquitto_internal.h" #include "mosquitto.h" #include "memory_mosq.h" -int log__printf(struct mosquitto *mosq, int priority, const char *fmt, ...) +int log__printf(struct mosquitto *mosq, unsigned int priority, const char *fmt, ...) { va_list va; char *s; @@ -50,7 +51,7 @@ int log__printf(struct mosquitto *mosq, int priority, const char *fmt, ...) va_end(va); s[len-1] = '\0'; /* Ensure string is null terminated. */ - mosq->on_log(mosq, mosq->userdata, priority, s); + mosq->on_log(mosq, mosq->userdata, (int)priority, s); mosquitto__free(s); } diff --git a/lib/logging_mosq.h b/lib/logging_mosq.h index 580edb8b..bc94f5f5 100644 --- a/lib/logging_mosq.h +++ b/lib/logging_mosq.h @@ -20,6 +20,10 @@ Contributors: #include "mosquitto.h" -int log__printf(struct mosquitto *mosq, unsigned int priority, const char *fmt, ...); +#ifndef __GNUC__ +#define __attribute__(attrib) +#endif + +int log__printf(struct mosquitto *mosq, unsigned int level, const char *fmt, ...) __attribute__((format(printf, 3, 4))); #endif diff --git a/src/logging.c b/src/logging.c index ff1a5b4d..915ede23 100644 --- a/src/logging.c +++ b/src/logging.c @@ -34,6 +34,7 @@ Contributors: #include #endif +#include "logging_mosq.h" #include "mosquitto_broker_internal.h" #include "memory_mosq.h" #include "misc_mosq.h" diff --git a/src/mosquitto_broker_internal.h b/src/mosquitto_broker_internal.h index 58c26bfe..6f6d48d2 100644 --- a/src/mosquitto_broker_internal.h +++ b/src/mosquitto_broker_internal.h @@ -34,6 +34,7 @@ Contributors: #include "mosquitto_broker.h" #include "mosquitto_plugin.h" #include "mosquitto.h" +#include "logging_mosq.h" #include "password_mosq.h" #include "tls_mosq.h" #include "uthash.h" @@ -709,7 +710,6 @@ int control__unregister_callback(struct mosquitto__security_options *opts, MOSQ_ * ============================================================ */ int log__init(struct mosquitto__config *config); int log__close(struct mosquitto__config *config); -int log__printf(struct mosquitto *mosq, unsigned int level, const char *fmt, ...) __attribute__((format(printf, 3, 4))); void log__internal(const char *fmt, ...) __attribute__((format(printf, 1, 2))); /* ============================================================