Merge pull request #2624 from buschulte/fix-some-compiler-warinngs

Add missing callback set calls for MQTTv5 in C++ lib wrapper
pull/2558/merge
Roger Light 3 years ago committed by GitHub
commit 1f559f1a71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -257,18 +257,30 @@ mosqpp_EXPORT int subscribe_callback(
will, tls);
}
namespace {
void mosquitto_callbacks_set(struct mosquitto *mosq) {
mosquitto_pre_connect_callback_set(mosq, on_pre_connect_wrapper);
mosquitto_connect_callback_set(mosq, on_connect_wrapper);
mosquitto_connect_with_flags_callback_set(mosq, on_connect_with_flags_wrapper);
mosquitto_connect_v5_callback_set(mosq, on_connect_v5_wrapper);
mosquitto_disconnect_callback_set(mosq, on_disconnect_wrapper);
mosquitto_disconnect_v5_callback_set(mosq, on_disconnect_v5_wrapper);
mosquitto_publish_callback_set(mosq, on_publish_wrapper);
mosquitto_publish_v5_callback_set(mosq, on_publish_v5_wrapper);
mosquitto_message_callback_set(mosq, on_message_wrapper);
mosquitto_message_v5_callback_set(mosq, on_message_v5_wrapper);
mosquitto_subscribe_callback_set(mosq, on_subscribe_wrapper);
mosquitto_subscribe_v5_callback_set(mosq, on_subscribe_v5_wrapper);
mosquitto_unsubscribe_callback_set(mosq, on_unsubscribe_wrapper);
mosquitto_unsubscribe_v5_callback_set(mosq, on_unsubscribe_v5_wrapper);
mosquitto_log_callback_set(mosq, on_log_wrapper);
}
}
mosquittopp::mosquittopp(const char *id, bool clean_session)
{
m_mosq = mosquitto_new(id, clean_session, this);
mosquitto_connect_callback_set(m_mosq, on_connect_wrapper);
mosquitto_connect_with_flags_callback_set(m_mosq, on_connect_with_flags_wrapper);
mosquitto_disconnect_callback_set(m_mosq, on_disconnect_wrapper);
mosquitto_publish_callback_set(m_mosq, on_publish_wrapper);
mosquitto_message_callback_set(m_mosq, on_message_wrapper);
mosquitto_subscribe_callback_set(m_mosq, on_subscribe_wrapper);
mosquitto_unsubscribe_callback_set(m_mosq, on_unsubscribe_wrapper);
mosquitto_log_callback_set(m_mosq, on_log_wrapper);
mosquitto_callbacks_set(m_mosq);
}
mosquittopp::~mosquittopp()
@ -281,14 +293,7 @@ int mosquittopp::reinitialise(const char *id, bool clean_session)
int rc;
rc = mosquitto_reinitialise(m_mosq, id, clean_session, this);
if(rc == MOSQ_ERR_SUCCESS){
mosquitto_connect_callback_set(m_mosq, on_connect_wrapper);
mosquitto_connect_with_flags_callback_set(m_mosq, on_connect_with_flags_wrapper);
mosquitto_disconnect_callback_set(m_mosq, on_disconnect_wrapper);
mosquitto_publish_callback_set(m_mosq, on_publish_wrapper);
mosquitto_message_callback_set(m_mosq, on_message_wrapper);
mosquitto_subscribe_callback_set(m_mosq, on_subscribe_wrapper);
mosquitto_unsubscribe_callback_set(m_mosq, on_unsubscribe_wrapper);
mosquitto_log_callback_set(m_mosq, on_log_wrapper);
mosquitto_callbacks_set(m_mosq);
}
return rc;
}

@ -28,6 +28,7 @@ Contributors:
#include "utlist.h"
#include "lib_load.h"
#include "will_mosq.h"
#include <stdint.h>
void plugin_persist__handle_restore(void)
@ -204,8 +205,8 @@ void plugin_persist__handle_client_msg_add(struct mosquitto *context, const stru
event_data.qos = cmsg->qos;
event_data.retain = cmsg->retain;
event_data.dup = cmsg->dup;
event_data.direction = cmsg->direction;
event_data.state = cmsg->state;
event_data.direction = (uint8_t)cmsg->direction;
event_data.state = (uint8_t)cmsg->state;
DL_FOREACH(opts->plugin_callbacks.persist_client_msg_add, cb_base){
cb_base->cb(MOSQ_EVT_PERSIST_CLIENT_MSG_ADD, &event_data, cb_base->userdata);
@ -232,10 +233,10 @@ void plugin_persist__handle_client_msg_delete(struct mosquitto *context, const s
event_data.client_id = context->id;
event_data.cmsg_id = cmsg->cmsg_id;
event_data.mid = cmsg->mid;
event_data.state = cmsg->state;
event_data.state = (uint8_t)cmsg->state;
event_data.qos = cmsg->qos;
event_data.store_id = cmsg->base_msg->db_id;
event_data.direction = cmsg->direction;
event_data.direction = (uint8_t)cmsg->direction;
DL_FOREACH(opts->plugin_callbacks.persist_client_msg_delete, cb_base){
cb_base->cb(MOSQ_EVT_PERSIST_CLIENT_MSG_DELETE, &event_data, cb_base->userdata);
@ -263,9 +264,9 @@ void plugin_persist__handle_client_msg_update(struct mosquitto *context, const s
event_data.cmsg_id = cmsg->cmsg_id;
event_data.mid = cmsg->mid;
event_data.store_id = cmsg->base_msg->db_id;
event_data.state = cmsg->state;
event_data.state = (uint8_t)cmsg->state;
event_data.dup = cmsg->dup;
event_data.direction = cmsg->direction;
event_data.direction = (uint8_t)cmsg->direction;
event_data.qos = cmsg->qos;
DL_FOREACH(opts->plugin_callbacks.persist_client_msg_update, cb_base){

Loading…
Cancel
Save