From e6a0e505b3eeb60fc7ca5de0a34e01f0a092f6a6 Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Sat, 21 Aug 2021 01:07:59 +0300 Subject: [PATCH] mqtt: payload is not const Even if std::function compiles with the wrong (but compatible) signature --- code/espurna/curtain_kingart.cpp | 2 +- code/espurna/garland.cpp | 2 +- code/espurna/ifan.cpp | 2 +- code/espurna/ir.cpp | 2 +- code/espurna/led.cpp | 2 +- code/espurna/light.cpp | 2 +- code/espurna/mqtt.cpp | 4 ++-- code/espurna/mqtt.h | 2 +- code/espurna/ota_asynctcp.cpp | 2 +- code/espurna/ota_httpupdate.cpp | 2 +- code/espurna/relay.cpp | 2 +- code/espurna/rfbridge.cpp | 2 +- code/espurna/telnet.cpp | 2 +- code/espurna/terminal.cpp | 2 +- code/espurna/thermostat.cpp | 2 +- code/espurna/uartmqtt.cpp | 2 +- 16 files changed, 17 insertions(+), 17 deletions(-) diff --git a/code/espurna/curtain_kingart.cpp b/code/espurna/curtain_kingart.cpp index a841db34..93447d2f 100644 --- a/code/espurna/curtain_kingart.cpp +++ b/code/espurna/curtain_kingart.cpp @@ -357,7 +357,7 @@ void _KACurtainResult() { #if MQTT_SUPPORT //------------------------------------------------------------------------------ -void _curtainMQTTCallback(unsigned int type, const char * topic, char * payload) { +void _curtainMQTTCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_CURTAIN); } else if (type == MQTT_MESSAGE_EVENT) { diff --git a/code/espurna/garland.cpp b/code/espurna/garland.cpp index f51401dd..98613e04 100644 --- a/code/espurna/garland.cpp +++ b/code/espurna/garland.cpp @@ -406,7 +406,7 @@ void garlandLoop(void) { } //------------------------------------------------------------------------------ -void garlandMqttCallback(unsigned int type, const char * topic, const char * payload) { +void garlandMqttCallback(unsigned int type, const char * topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_GARLAND); } diff --git a/code/espurna/ifan.cpp b/code/espurna/ifan.cpp index ed8a0ba0..02e21033 100644 --- a/code/espurna/ifan.cpp +++ b/code/espurna/ifan.cpp @@ -247,7 +247,7 @@ void updateSpeedFromPayload(const String& payload) { #if MQTT_SUPPORT -void onMqttEvent(unsigned int type, const char* topic, const char* payload) { +void onMqttEvent(unsigned int type, const char* topic, char* payload) { switch (type) { case MQTT_CONNECT_EVENT: diff --git a/code/espurna/ir.cpp b/code/espurna/ir.cpp index 1b4a693e..b5bba866 100644 --- a/code/espurna/ir.cpp +++ b/code/espurna/ir.cpp @@ -86,7 +86,7 @@ Raw messages: // MQTT to IR #if MQTT_SUPPORT && defined(IR_TX_PIN) -void _irMqttCallback(unsigned int type, const char * topic, const char * payload) { +void _irMqttCallback(unsigned int type, const char * topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_IROUT); diff --git a/code/espurna/led.cpp b/code/espurna/led.cpp index 23c2de20..ecab1dd7 100644 --- a/code/espurna/led.cpp +++ b/code/espurna/led.cpp @@ -877,7 +877,7 @@ void loop() { #if MQTT_SUPPORT namespace mqtt { -void callback(unsigned int type, const char* topic, const char* payload) { +void callback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { char buffer[strlen(MQTT_TOPIC_LED) + 3]; snprintf_P(buffer, sizeof(buffer), PSTR("%s/+"), MQTT_TOPIC_LED); diff --git a/code/espurna/light.cpp b/code/espurna/light.cpp index cbaba4ab..59501cb0 100644 --- a/code/espurna/light.cpp +++ b/code/espurna/light.cpp @@ -1657,7 +1657,7 @@ bool _lightMqttHeartbeat(heartbeat::Mask mask) { return mqttConnected(); } -void _lightMqttCallback(unsigned int type, const char * topic, const char * payload) { +void _lightMqttCallback(unsigned int type, const char* topic, char* payload) { String mqtt_group_color = Light::settings::mqttGroup(); if (type == MQTT_CONNECT_EVENT) { diff --git a/code/espurna/mqtt.cpp b/code/espurna/mqtt.cpp index f2a987d2..8a351687 100644 --- a/code/espurna/mqtt.cpp +++ b/code/espurna/mqtt.cpp @@ -813,7 +813,7 @@ void _mqttInitCommands() { namespace { -void _mqttCallback(unsigned int type, const char * topic, const char * payload) { +void _mqttCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_ACTION); } @@ -1561,7 +1561,7 @@ void mqttSetup() { .onConnected(_mqttWebSocketOnConnected) .onKeyCheck(_mqttWebSocketOnKeyCheck); - mqttRegister([](unsigned int type, const char*, const char*) { + mqttRegister([](unsigned int type, const char*, char*) { if ((type == MQTT_CONNECT_EVENT) || (type == MQTT_DISCONNECT_EVENT)) { wsPost(_mqttWebSocketOnData); } diff --git a/code/espurna/mqtt.h b/code/espurna/mqtt.h index 102f168f..b621cc68 100644 --- a/code/espurna/mqtt.h +++ b/code/espurna/mqtt.h @@ -56,7 +56,7 @@ Updated secure client support by Niek van der Maas < mail at niekvandermaas dot #define MQTT_TOPIC_CMD "cmd" #define MQTT_TOPIC_SCHEDULE "schedule" -using mqtt_callback_f = std::function; +using mqtt_callback_f = std::function; using mqtt_pid_callback_f = std::function; void mqttHeartbeat(heartbeat::Callback); diff --git a/code/espurna/ota_asynctcp.cpp b/code/espurna/ota_asynctcp.cpp index c9830e2d..b3a9846f 100644 --- a/code/espurna/ota_asynctcp.cpp +++ b/code/espurna/ota_asynctcp.cpp @@ -258,7 +258,7 @@ void terminalCommands() { #if OTA_MQTT_SUPPORT -void mqttCallback(unsigned int type, const char * topic, const char * payload) { +void mqttCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_OTA); return; diff --git a/code/espurna/ota_httpupdate.cpp b/code/espurna/ota_httpupdate.cpp index 83175e62..c7061abb 100644 --- a/code/espurna/ota_httpupdate.cpp +++ b/code/espurna/ota_httpupdate.cpp @@ -160,7 +160,7 @@ void terminalCommands() { #if (MQTT_SUPPORT && OTA_MQTT_SUPPORT) -void mqttCallback(unsigned int type, const char * topic, const char * payload) { +void mqttCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_OTA); return; diff --git a/code/espurna/relay.cpp b/code/espurna/relay.cpp index d949e79e..b8539909 100644 --- a/code/espurna/relay.cpp +++ b/code/espurna/relay.cpp @@ -2042,7 +2042,7 @@ void _relayMqttHandleDisconnect() { } // namespace -void relayMQTTCallback(unsigned int type, const char * topic, const char * payload) { +void relayMQTTCallback(unsigned int type, const char* topic, char* payload) { static bool connected { false }; diff --git a/code/espurna/rfbridge.cpp b/code/espurna/rfbridge.cpp index 47bff5bf..faa8a3be 100644 --- a/code/espurna/rfbridge.cpp +++ b/code/espurna/rfbridge.cpp @@ -964,7 +964,7 @@ void rfbSend(const String& code) { #if MQTT_SUPPORT -void _rfbMqttCallback(unsigned int type, const char * topic, char * payload) { +void _rfbMqttCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { diff --git a/code/espurna/telnet.cpp b/code/espurna/telnet.cpp index b22805b5..4b1b5c3f 100644 --- a/code/espurna/telnet.cpp +++ b/code/espurna/telnet.cpp @@ -139,7 +139,7 @@ void _telnetReverse(const char * host, uint16_t port) { #if MQTT_SUPPORT -void _telnetReverseMQTTCallback(unsigned int type, const char * topic, const char * payload) { +void _telnetReverseMQTTCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_TELNET_REVERSE); } else if (type == MQTT_MESSAGE_EVENT) { diff --git a/code/espurna/terminal.cpp b/code/espurna/terminal.cpp index 70f6b170..71a0b72b 100644 --- a/code/espurna/terminal.cpp +++ b/code/espurna/terminal.cpp @@ -614,7 +614,7 @@ void _terminalLoop() { void _terminalMqttSetup() { - mqttRegister([](unsigned int type, const char * topic, const char * payload) { + mqttRegister([](unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_CMD); return; diff --git a/code/espurna/thermostat.cpp b/code/espurna/thermostat.cpp index de5fc52c..67c16693 100644 --- a/code/espurna/thermostat.cpp +++ b/code/espurna/thermostat.cpp @@ -172,7 +172,7 @@ bool _thermostatMqttHeartbeat(heartbeat::Mask mask) { return mqttConnected(); } -void thermostatMqttCallback(unsigned int type, const char * topic, const char * payload) { +void thermostatMqttCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribeRaw(thermostat_remote_sensor_topic.c_str()); diff --git a/code/espurna/uartmqtt.cpp b/code/espurna/uartmqtt.cpp index 9bdf2dab..1a07e8ab 100644 --- a/code/espurna/uartmqtt.cpp +++ b/code/espurna/uartmqtt.cpp @@ -68,7 +68,7 @@ void _uartmqttSendUART(const char * message) { UART_MQTT_PORT.println(message); } -void _uartmqttMQTTCallback(unsigned int type, const char * topic, const char * payload) { +void _uartmqttMQTTCallback(unsigned int type, const char* topic, char* payload) { if (type == MQTT_CONNECT_EVENT) { mqttSubscribe(MQTT_TOPIC_UARTOUT);