MQTT and MQTTS with wolfSSL TSL library

Dependencies:   FP MQTTPacket

Dependents:   YoPlegma

Fork of MQTT by MQTT

MQTT is light weight publish/subscribe based messaging protocol for M2M, IoT. This library was forked from MQTT https://developer.mbed.org/teams/mqtt for adding MQTTS security layer on the protocol. TLS(SSL) part of the library is by wolfSSL.https://developer.mbed.org/users/wolfSSL/code/wolfSSL/

"connect" method was extended for TLS. Rest of API's stay compatible with MQTT.

connect methode

 int connect(char* hostname, int port,  const char *certName = NULL, int timeout=1000)

The 3rd argument certName can be following values.

  • NULL: connecting with MQTT
  • pointer to certificate file: connecting with MQTTS. PEM or DER for server verification.
  • pointer to NULL string: connecting with MQTTS without server verification. This option is for prototyping only, not recommended in security perspective.

日本語:https://developer.mbed.org/users/wolfSSL/code/MQTTS/wiki/MQTTSライブラリ

Revision:
42:f5beda831651
Parent:
41:b7e86fa6dbb8
Child:
43:21da1f744243
--- a/MQTTClient.h	Fri Aug 15 10:23:56 2014 +0000
+++ b/MQTTClient.h	Thu Aug 21 12:40:43 2014 +0000
@@ -123,6 +123,12 @@
         defaultMessageHandler.attach(mh);
     }
     
+    void setLogHandler()
+    {
+        logHandler.attach(lh);
+    }
+
+    
     /** MQTT Connect - send an MQTT connect packet down the network and wait for a Connack
      *  The nework object must be connected to the network endpoint before calling this 
      *  @param options - connect options
@@ -241,6 +247,8 @@
     {
         ping_timer.countdown(this->keepAliveInterval); // record the fact that we have successfully sent the packet    
         rc = SUCCESS;
+        //if (debug)
+        // Log (packet)
     }
     else
         rc = FAILURE;