diff options
| -rw-r--r-- | src/client.c | 7 | ||||
| -rw-r--r-- | src/mqtt.h | 4 | ||||
| -rw-r--r-- | tools/pub.c | 4 | ||||
| -rw-r--r-- | tools/sub.c | 4 |
4 files changed, 9 insertions, 10 deletions
diff --git a/src/client.c b/src/client.c index 34062ed..3aba76c 100644 --- a/src/client.c +++ b/src/client.c @@ -116,7 +116,7 @@ static MQTT_INLINE int MqttClientInflightMessageCount(MqttClient *client) return inMessagesCount + outMessagesCount - queued; } -MqttClient *MqttClientNew(const char *clientId, int cleanSession) +MqttClient *MqttClientNew(const char *clientId) { MqttClient *client; @@ -129,8 +129,6 @@ MqttClient *MqttClientNew(const char *clientId, int cleanSession) client->clientId = bfromcstr(clientId); - client->cleanSession = cleanSession; - client->stream.sock = -1; client->retryTimeout = 20; @@ -216,7 +214,7 @@ void MqttClientSetOnPublish(MqttClient *client, } int MqttClientConnect(MqttClient *client, const char *host, short port, - int keepAlive) + int keepAlive, int cleanSession) { int sock; MqttPacketConnect *packet; @@ -227,6 +225,7 @@ int MqttClientConnect(MqttClient *client, const char *host, short port, client->host = bfromcstr(host); client->port = port; client->keepAlive = keepAlive; + client->cleanSession = cleanSession; if (keepAlive < 0) { @@ -46,7 +46,7 @@ typedef void (*MqttClientOnMessageCallback)(MqttClient *client, typedef void (*MqttClientOnPublishCallback)(MqttClient *client, int id); -MqttClient *MqttClientNew(const char *clientId, int cleanSession); +MqttClient *MqttClientNew(const char *clientId); void MqttClientFree(MqttClient *client); @@ -69,7 +69,7 @@ void MqttClientSetOnPublish(MqttClient *client, MqttClientOnPublishCallback cb); int MqttClientConnect(MqttClient *client, const char *host, short port, - int keepAlive); + int keepAlive, int cleanSession); int MqttClientDisconnect(MqttClient *client); diff --git a/tools/pub.c b/tools/pub.c index f2107ae..6044ec3 100644 --- a/tools/pub.c +++ b/tools/pub.c @@ -111,13 +111,13 @@ int main(int argc, char **argv) parse_args(&options, argc, argv); - client = MqttClientNew(options.client_id, 1); + client = MqttClientNew(options.client_id); MqttClientSetOnConnect(client, onConnect); MqttClientSetOnPublish(client, onPublish); MqttClientSetUserData(client, &options); - MqttClientConnect(client, "test.mosquitto.org", 1883, 60); + MqttClientConnect(client, "test.mosquitto.org", 1883, 60, 1); MqttClientRun(client); diff --git a/tools/sub.c b/tools/sub.c index ffaf2a2..b556a27 100644 --- a/tools/sub.c +++ b/tools/sub.c @@ -110,14 +110,14 @@ int main(int argc, char **argv) parse_args(&options, argc, argv); - client = MqttClientNew(options.client_id, options.clean); + client = MqttClientNew(options.client_id); MqttClientSetOnConnect(client, onConnect); MqttClientSetOnSubscribe(client, onSubscribe); MqttClientSetOnMessage(client, onMessage); MqttClientSetUserData(client, &options); - MqttClientConnect(client, "test.mosquitto.org", 1883, 60); + MqttClientConnect(client, "test.mosquitto.org", 1883, 60, options.clean); MqttClientRun(client); |
