MQTT and MQTTS with wolfSSL TSL library
Fork of MQTT by
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ライブラリ
MQTTSocket.h
- Committer:
- icraggs
- Date:
- 2014-08-01
- Revision:
- 36:2f1ada427e56
- Parent:
- 31:a51dd239b78e
- Child:
- 43:21da1f744243
File content as of revision 36:2f1ada427e56:
#if !defined(MQTTSOCKET_H) #define MQTTSOCKET_H #include "MQTT_mbed.h" #include "TCPSocketConnection.h" class MQTTSocket { public: int connect(char* hostname, int port, int timeout=1000) { mysock.set_blocking(false, timeout); // 1 second Timeout return mysock.connect(hostname, port); } int read(unsigned char* buffer, int len, int timeout) { mysock.set_blocking(false, timeout); return mysock.receive((char*)buffer, len); } int write(unsigned char* buffer, int len, int timeout) { mysock.set_blocking(false, timeout); return mysock.send((char*)buffer, len); } int disconnect() { return mysock.close(); } private: TCPSocketConnection mysock; }; #endif