mirror of
https://github.com/cesanta/mongoose.git
synced 2026-11-09 16:21:45 +00:00
Add TLS support to MQTT
This commit is contained in:
1 parent
c7b9ca68c2
commit
e9ec2c5304
3 files changed
+16
-1
No files matched your search
@@ -7,6 +7,14 @@ DOCKER ?= docker run --rm -e Tmp=. -e WINEDEBUG=-all -v $(ROOT):$(ROOT) -w $(CUR
|
|||||||
VC98 ?= $(DOCKER) mdashnet/vc98 wine
|
VC98 ?= $(DOCKER) mdashnet/vc98 wine
|
||||||
MINGW ?= $(DOCKER) mdashnet/mingw
|
MINGW ?= $(DOCKER) mdashnet/mingw
|
||||||
|
|
||||||
|
ifeq "$(SSL)" "MBEDTLS"
|
||||||
|
CFLAGS += -DMG_ENABLE_MBEDTLS=1 -I$(MBEDTLS)/include -L$(MBEDTLS)/lib -lmbedtls -lmbedcrypto -lmbedx509
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq "$(SSL)" "OPENSSL"
|
||||||
|
CFLAGS += -DMG_ENABLE_OPENSSL=1 -I$(OPENSSL)/include -L$(OPENSSL)/lib -lssl -lcrypto
|
||||||
|
endif
|
||||||
|
|
||||||
all: $(PROG)
|
all: $(PROG)
|
||||||
$(RUN) ./$(PROG)
|
$(RUN) ./$(PROG)
|
||||||
|
|
||||||
|
|||||||
Symlink
+1
@@ -0,0 +1 @@
|
|||||||
|
../../test/data/ca.pem
|
||||||
@@ -94,7 +94,11 @@ static void timer_metrics_fn(void *param) {
|
|||||||
|
|
||||||
// MQTT event handler function
|
// MQTT event handler function
|
||||||
static void mqtt_fn(struct mg_connection *c, int ev, void *ev_data, void *fnd) {
|
static void mqtt_fn(struct mg_connection *c, int ev, void *ev_data, void *fnd) {
|
||||||
if (ev == MG_EV_MQTT_OPEN) {
|
if (ev == MG_EV_CONNECT && mg_url_is_ssl(s_config.url)) {
|
||||||
|
struct mg_tls_opts opts = {.ca = "ca.pem",
|
||||||
|
.srvname = mg_url_host(s_config.url)};
|
||||||
|
mg_tls_init(c, &opts);
|
||||||
|
} else if (ev == MG_EV_MQTT_OPEN) {
|
||||||
s_connected = true;
|
s_connected = true;
|
||||||
c->is_hexdumping = 1;
|
c->is_hexdumping = 1;
|
||||||
mg_mqtt_sub(s_mqtt, mg_str(s_config.sub), 2);
|
mg_mqtt_sub(s_mqtt, mg_str(s_config.sub), 2);
|
||||||
@@ -207,5 +211,7 @@ void device_dashboard_fn(struct mg_connection *c, int ev, void *ev_data,
|
|||||||
#endif
|
#endif
|
||||||
mg_http_serve_dir(c, ev_data, &opts);
|
mg_http_serve_dir(c, ev_data, &opts);
|
||||||
}
|
}
|
||||||
|
MG_INFO(("%.*s %.*s -> %.*s", (int) hm->method.len, hm->method.ptr,
|
||||||
|
(int) hm->uri.len, hm->uri.ptr, (int) 3, &c->send.buf[9]));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user