From f50aa6d3fb7b4fd776bf0052d16fbc37ce2439e1 Mon Sep 17 00:00:00 2001 From: Robert Lubos Date: Fri, 21 Sep 2018 10:59:18 +0200 Subject: [PATCH] net: mqtt: Mark existing implementation as legacy Rename existing headers and sybols to mqtt_legacy, to allow new implementation to keep old config and header names. Signed-off-by: Robert Lubos --- include/net/{mqtt.h => mqtt_legacy.h} | 4 +-- .../net/{mqtt_types.h => mqtt_legacy_types.h} | 0 .../net/mqtt_publisher/prj_96b_nitrogen.conf | 2 +- samples/net/mqtt_publisher/prj_frdm_k64f.conf | 2 +- samples/net/mqtt_publisher/prj_qemu_x86.conf | 2 +- samples/net/mqtt_publisher/src/config.h | 2 +- samples/net/mqtt_publisher/src/main.c | 6 ++--- subsys/net/lib/CMakeLists.txt | 2 +- subsys/net/lib/mqtt/Kconfig | 20 +++++++-------- subsys/net/lib/mqtt/mqtt.c | 25 ++++++++++--------- subsys/net/lib/mqtt/mqtt_pkt.h | 2 +- tests/net/lib/mqtt_packet/prj.conf | 2 +- tests/net/lib/mqtt_publisher/prj.conf | 2 +- tests/net/lib/mqtt_publisher/prj_tls.conf | 4 +-- .../mqtt_publisher/src/test_mqtt_publish.c | 2 +- tests/net/lib/mqtt_subscriber/prj.conf | 2 +- .../mqtt_subscriber/src/test_mqtt_subscribe.c | 2 +- 17 files changed, 41 insertions(+), 40 deletions(-) rename include/net/{mqtt.h => mqtt_legacy.h} (99%) rename include/net/{mqtt_types.h => mqtt_legacy_types.h} (100%) diff --git a/include/net/mqtt.h b/include/net/mqtt_legacy.h similarity index 99% rename from include/net/mqtt.h rename to include/net/mqtt_legacy.h index 65752a58372..88e738bd30f 100644 --- a/include/net/mqtt.h +++ b/include/net/mqtt_legacy.h @@ -7,7 +7,7 @@ #ifndef ZEPHYR_INCLUDE_NET_MQTT_H_ #define ZEPHYR_INCLUDE_NET_MQTT_H_ -#include +#include #include #include @@ -72,7 +72,7 @@ struct mqtt_ctx { char *peer_addr_str; u16_t peer_port; -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) /** TLS parameters */ u8_t *request_buf; size_t request_buf_len; diff --git a/include/net/mqtt_types.h b/include/net/mqtt_legacy_types.h similarity index 100% rename from include/net/mqtt_types.h rename to include/net/mqtt_legacy_types.h diff --git a/samples/net/mqtt_publisher/prj_96b_nitrogen.conf b/samples/net/mqtt_publisher/prj_96b_nitrogen.conf index ecd7c244acd..c90372a9f12 100644 --- a/samples/net/mqtt_publisher/prj_96b_nitrogen.conf +++ b/samples/net/mqtt_publisher/prj_96b_nitrogen.conf @@ -33,7 +33,7 @@ CONFIG_NET_IF_MCAST_IPV6_ADDR_COUNT=3 CONFIG_PRINTK=y -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_MAIN_STACK_SIZE=2048 diff --git a/samples/net/mqtt_publisher/prj_frdm_k64f.conf b/samples/net/mqtt_publisher/prj_frdm_k64f.conf index f902596aebb..f6e5e912b57 100644 --- a/samples/net/mqtt_publisher/prj_frdm_k64f.conf +++ b/samples/net/mqtt_publisher/prj_frdm_k64f.conf @@ -22,7 +22,7 @@ CONFIG_NET_IPV4=n CONFIG_NET_IPV6=y # Enable the MQTT Lib -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1" diff --git a/samples/net/mqtt_publisher/prj_qemu_x86.conf b/samples/net/mqtt_publisher/prj_qemu_x86.conf index 817caebf6e8..0d370d2b763 100644 --- a/samples/net/mqtt_publisher/prj_qemu_x86.conf +++ b/samples/net/mqtt_publisher/prj_qemu_x86.conf @@ -22,7 +22,7 @@ CONFIG_NET_IPV6=n CONFIG_NET_IPV4=y # Enable the MQTT Lib -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1" diff --git a/samples/net/mqtt_publisher/src/config.h b/samples/net/mqtt_publisher/src/config.h index 1271c3f691a..22d54466524 100644 --- a/samples/net/mqtt_publisher/src/config.h +++ b/samples/net/mqtt_publisher/src/config.h @@ -25,7 +25,7 @@ #endif #endif -#ifdef CONFIG_MQTT_LIB_TLS +#ifdef CONFIG_MQTT_LEGACY_LIB_TLS #define SERVER_PORT 8883 #else #define SERVER_PORT 1883 diff --git a/samples/net/mqtt_publisher/src/main.c b/samples/net/mqtt_publisher/src/main.c index 665f88ed552..dc3c5a44c06 100644 --- a/samples/net/mqtt_publisher/src/main.c +++ b/samples/net/mqtt_publisher/src/main.c @@ -5,7 +5,7 @@ */ #include -#include +#include #include @@ -66,7 +66,7 @@ static struct mqtt_client_ctx client_ctx; /* This routine sets some basic properties for the network context variable */ static int network_setup(void); -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) #include "test_certs.h" @@ -311,7 +311,7 @@ static void publisher(void) client_ctx.mqtt_ctx.peer_addr_str = SERVER_ADDR; client_ctx.mqtt_ctx.peer_port = SERVER_PORT; -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) /** TLS setup */ client_ctx.mqtt_ctx.request_buf = tls_request_buf; client_ctx.mqtt_ctx.request_buf_len = TLS_REQUEST_BUF_SIZE; diff --git a/subsys/net/lib/CMakeLists.txt b/subsys/net/lib/CMakeLists.txt index 77e214761ea..c5522492a3c 100644 --- a/subsys/net/lib/CMakeLists.txt +++ b/subsys/net/lib/CMakeLists.txt @@ -3,7 +3,7 @@ add_subdirectory_if_kconfig(coap_sock) add_subdirectory_if_kconfig(lwm2m) add_subdirectory_if_kconfig(sntp) add_subdirectory_ifdef(CONFIG_DNS_RESOLVER dns) -add_subdirectory_ifdef(CONFIG_MQTT_LIB mqtt) +add_subdirectory_ifdef(CONFIG_MQTT_LEGACY_LIB mqtt) add_subdirectory_ifdef(CONFIG_NET_APP app) add_subdirectory_ifdef(CONFIG_NET_CONFIG_SETTINGS config) add_subdirectory_ifdef(CONFIG_NET_SOCKETS sockets) diff --git a/subsys/net/lib/mqtt/Kconfig b/subsys/net/lib/mqtt/Kconfig index 481342e3e3e..7efad12e4e8 100644 --- a/subsys/net/lib/mqtt/Kconfig +++ b/subsys/net/lib/mqtt/Kconfig @@ -6,42 +6,42 @@ # SPDX-License-Identifier: Apache-2.0 # -config MQTT_LIB - bool "MQTT Library Support" +config MQTT_LEGACY_LIB + bool "Legacy MQTT Library Support" select NET_APP_CLIENT help Enable the Zephyr MQTT Library -config MQTT_MSG_MAX_SIZE +config MQTT_LEGACY_MSG_MAX_SIZE int "Max size of a MQTT message" - depends on MQTT_LIB + depends on MQTT_LEGACY_LIB default 128 range 128 1024 help Set the maximum size of the MQTT message. So, no messages longer than CONFIG_MQTT_MSG_SIZE will be processed. -config MQTT_ADDITIONAL_BUFFER_CTR +config MQTT_LEGACY_ADDITIONAL_BUFFER_CTR int "Additional buffers available for the MQTT application" - depends on MQTT_LIB + depends on MQTT_LEGACY_LIB default 0 help Set some additional buffers. When two or more concurrent contexts are used in the same application, additional buffers may help to have a 1:1 relation between application contexts and internal buffers. -config MQTT_SUBSCRIBE_MAX_TOPICS +config MQTT_LEGACY_SUBSCRIBE_MAX_TOPICS int "Max number of topics to subscribe to" - depends on MQTT_LIB + depends on MQTT_LEGACY_LIB default 1 range 1 8 help Set the maximum number of topics handled by the SUBSCRIBE/SUBACK messages during reception. -config MQTT_LIB_TLS +config MQTT_LEGACY_LIB_TLS bool "Enable TLS support for the MQTT application" - depends on MQTT_LIB + depends on MQTT_LEGACY_LIB select NET_APP_TLS help Enables MQTT library with TLS support diff --git a/subsys/net/lib/mqtt/mqtt.c b/subsys/net/lib/mqtt/mqtt.c index 48619349e0a..a316d4d8bab 100644 --- a/subsys/net/lib/mqtt/mqtt.c +++ b/subsys/net/lib/mqtt/mqtt.c @@ -7,7 +7,7 @@ #define LOG_MODULE_NAME net_mqtt #define NET_LOG_LEVEL LOG_LEVEL_ERR -#include +#include #include "mqtt_pkt.h" #include @@ -16,8 +16,8 @@ #include #include -#define MSG_SIZE CONFIG_MQTT_MSG_MAX_SIZE -#define MQTT_BUF_CTR (1 + CONFIG_MQTT_ADDITIONAL_BUFFER_CTR) +#define MSG_SIZE CONFIG_MQTT_LEGACY_MSG_MAX_SIZE +#define MQTT_BUF_CTR (1 + CONFIG_MQTT_LEGACY_ADDITIONAL_BUFFER_CTR) /* Memory pool internally used to handle messages that may exceed the size of * system defined network buffer. By using this memory pool, routines don't deal @@ -27,7 +27,7 @@ NET_BUF_POOL_DEFINE(mqtt_msg_pool, MQTT_BUF_CTR, MSG_SIZE, 0, NULL); #define MQTT_PUBLISHER_MIN_MSG_SIZE 2 -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) #define TLS_HS_DEFAULT_TIMEOUT 3000 #endif @@ -556,7 +556,7 @@ int mqtt_rx_pingresp(struct mqtt_ctx *ctx, struct net_buf *rx) int mqtt_rx_suback(struct mqtt_ctx *ctx, struct net_buf *rx) { - enum mqtt_qos suback_qos[CONFIG_MQTT_SUBSCRIBE_MAX_TOPICS]; + enum mqtt_qos suback_qos[CONFIG_MQTT_LEGACY_SUBSCRIBE_MAX_TOPICS]; u16_t pkt_id; u16_t len; u8_t items; @@ -567,7 +567,8 @@ int mqtt_rx_suback(struct mqtt_ctx *ctx, struct net_buf *rx) len = rx->len; rc = mqtt_unpack_suback(data, len, &pkt_id, &items, - CONFIG_MQTT_SUBSCRIBE_MAX_TOPICS, suback_qos); + CONFIG_MQTT_LEGACY_SUBSCRIBE_MAX_TOPICS, + suback_qos); if (rc != 0) { return -EINVAL; } @@ -663,12 +664,12 @@ struct net_buf *mqtt_linearize_packet(struct mqtt_ctx *ctx, struct net_pkt *rx, u16_t offset; int rc; - /* CONFIG_MQTT_MSG_MAX_SIZE is defined via Kconfig. So here it's + /* CONFIG_MQTT_LEGACY_MSG_MAX_SIZE is defined via Kconfig. So here it's * determined if the input packet could fit our data buffer or if * it has the expected size. */ data_len = net_pkt_appdatalen(rx); - if (data_len < min_size || data_len > CONFIG_MQTT_MSG_MAX_SIZE) { + if (data_len < min_size || data_len > CONFIG_MQTT_LEGACY_MSG_MAX_SIZE) { return NULL; } @@ -779,7 +780,7 @@ void app_connected(struct net_app_ctx *ctx, int status, void *data) return; } -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) k_sem_give(&mqtt->tls_hs_wait); #endif } @@ -835,7 +836,7 @@ int mqtt_connect(struct mqtt_ctx *ctx) goto error_connect; } -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) rc = net_app_client_tls(&ctx->net_app_ctx, ctx->request_buf, ctx->request_buf_len, @@ -857,7 +858,7 @@ int mqtt_connect(struct mqtt_ctx *ctx) goto error_connect; } -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) /* TLS handshake is not finished until app_connected is called */ rc = k_sem_take(&ctx->tls_hs_wait, ctx->tls_hs_timeout); if (rc < 0) { @@ -884,7 +885,7 @@ int mqtt_init(struct mqtt_ctx *ctx, enum mqtt_app app_type) ctx->app_type = app_type; ctx->rcv = mqtt_parser; -#if defined(CONFIG_MQTT_LIB_TLS) +#if defined(CONFIG_MQTT_LEGACY_LIB_TLS) if (ctx->tls_hs_timeout == 0) { ctx->tls_hs_timeout = TLS_HS_DEFAULT_TIMEOUT; } diff --git a/subsys/net/lib/mqtt/mqtt_pkt.h b/subsys/net/lib/mqtt/mqtt_pkt.h index 25305bf9497..ba6fa719aff 100644 --- a/subsys/net/lib/mqtt/mqtt_pkt.h +++ b/subsys/net/lib/mqtt/mqtt_pkt.h @@ -20,7 +20,7 @@ #include #include -#include +#include #define MQTT_PACKET_TYPE(first_byte) (((first_byte) & 0xF0) >> 4) diff --git a/tests/net/lib/mqtt_packet/prj.conf b/tests/net/lib/mqtt_packet/prj.conf index c8e75648481..3486d77cfb8 100644 --- a/tests/net/lib/mqtt_packet/prj.conf +++ b/tests/net/lib/mqtt_packet/prj.conf @@ -7,7 +7,7 @@ CONFIG_ENTROPY_GENERATOR=y CONFIG_TEST_RANDOM_GENERATOR=y # enable the MQTT lib -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_ZTEST=y CONFIG_MAIN_STACK_SIZE=1280 diff --git a/tests/net/lib/mqtt_publisher/prj.conf b/tests/net/lib/mqtt_publisher/prj.conf index c9342459893..21a0e6237e7 100644 --- a/tests/net/lib/mqtt_publisher/prj.conf +++ b/tests/net/lib/mqtt_publisher/prj.conf @@ -17,7 +17,7 @@ CONFIG_NET_IPV6=n CONFIG_NET_IPV4=y # Enable the MQTT Lib -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1" diff --git a/tests/net/lib/mqtt_publisher/prj_tls.conf b/tests/net/lib/mqtt_publisher/prj_tls.conf index ab5aa470efa..bc2457cbf02 100644 --- a/tests/net/lib/mqtt_publisher/prj_tls.conf +++ b/tests/net/lib/mqtt_publisher/prj_tls.conf @@ -22,8 +22,8 @@ CONFIG_NET_IPV4=n CONFIG_NET_IPV6=y # Enable the MQTT Lib -CONFIG_MQTT_LIB=y -CONFIG_MQTT_LIB_TLS=y +CONFIG_MQTT_LEGACY_LIB=y +CONFIG_MQTT_LEGACY_LIB_TLS=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1" diff --git a/tests/net/lib/mqtt_publisher/src/test_mqtt_publish.c b/tests/net/lib/mqtt_publisher/src/test_mqtt_publish.c index 7631eaf2b1d..68b0867a705 100644 --- a/tests/net/lib/mqtt_publisher/src/test_mqtt_publish.c +++ b/tests/net/lib/mqtt_publisher/src/test_mqtt_publish.c @@ -7,7 +7,7 @@ #define LOG_MODULE_NAME net_test #define NET_LOG_LEVEL LOG_LEVEL_WRN -#include +#include #include #include diff --git a/tests/net/lib/mqtt_subscriber/prj.conf b/tests/net/lib/mqtt_subscriber/prj.conf index 368a9c283dd..4fc24aa8958 100644 --- a/tests/net/lib/mqtt_subscriber/prj.conf +++ b/tests/net/lib/mqtt_subscriber/prj.conf @@ -17,7 +17,7 @@ CONFIG_NET_IPV6=n CONFIG_NET_IPV4=y # Enable the MQTT Lib -CONFIG_MQTT_LIB=y +CONFIG_MQTT_LEGACY_LIB=y CONFIG_NET_CONFIG_SETTINGS=y CONFIG_NET_CONFIG_MY_IPV6_ADDR="2001:db8::1" diff --git a/tests/net/lib/mqtt_subscriber/src/test_mqtt_subscribe.c b/tests/net/lib/mqtt_subscriber/src/test_mqtt_subscribe.c index fcecd25cd0f..20533c8e180 100644 --- a/tests/net/lib/mqtt_subscriber/src/test_mqtt_subscribe.c +++ b/tests/net/lib/mqtt_subscriber/src/test_mqtt_subscribe.c @@ -8,7 +8,7 @@ #define NET_LOG_LEVEL LOG_LEVEL_WRN #include -#include +#include #include #include