MQTTProtocolClient.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright (c) 2009, 2020 IBM Corp.
3  *
4  * All rights reserved. This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License v2.0
6  * and Eclipse Distribution License v1.0 which accompany this distribution.
7  *
8  * The Eclipse Public License is available at
9  * https://www.eclipse.org/legal/epl-2.0/
10  * and the Eclipse Distribution License is available at
11  * http://www.eclipse.org/org/documents/edl-v10.php.
12  *
13  * Contributors:
14  * Ian Craggs - initial API and implementation and/or initial documentation
15  * Ian Craggs, Allan Stockdill-Mander - SSL updates
16  * Ian Craggs - MQTT 3.1.1 updates
17  * Rong Xiang, Ian Craggs - C++ compatibility
18  * Ian Craggs - add debug definition of MQTTStrdup for when needed
19  *******************************************************************************/
20 
21 #if !defined(MQTTPROTOCOLCLIENT_H)
22 #define MQTTPROTOCOLCLIENT_H
23 
24 #include "LinkedList.h"
25 #include "MQTTPacket.h"
26 #include "Log.h"
27 #include "MQTTProtocol.h"
28 #include "Messages.h"
29 #include "MQTTProperties.h"
30 
31 #define MAX_MSG_ID 65535
32 #define MAX_CLIENTID_LEN 65535
33 
34 int MQTTProtocol_startPublish(Clients* pubclient, Publish* publish, int qos, int retained, Messages** m);
35 Messages* MQTTProtocol_createMessage(Publish* publish, Messages** mm, int qos, int retained, int allocatePayload);
37 int messageIDCompare(void* a, void* b);
40 void Protocol_processPublication(Publish* publish, Clients* client, int allocatePayload);
41 
42 int MQTTProtocol_handlePublishes(void* pack, int sock);
43 int MQTTProtocol_handlePubacks(void* pack, int sock);
44 int MQTTProtocol_handlePubrecs(void* pack, int sock);
45 int MQTTProtocol_handlePubrels(void* pack, int sock);
46 int MQTTProtocol_handlePubcomps(void* pack, int sock);
47 
48 void MQTTProtocol_closeSession(Clients* c, int sendwill);
50 void MQTTProtocol_retry(START_TIME_TYPE, int, int);
52 void MQTTProtocol_emptyMessageList(List* msgList);
53 void MQTTProtocol_freeMessageList(List* msgList);
54 
55 char* MQTTStrncpy(char *dest, const char* src, size_t num);
56 char* MQTTStrdup(const char* src);
57 
58 //#define MQTTStrdup(src) MQTTStrncpy(malloc(strlen(src)+1), src, strlen(src)+1)
59 
60 #endif
char * MQTTStrdup(const char *src)
int messageIDCompare(void *a, void *b)
void MQTTProtocol_removePublication(Publications *p)
void MQTTProtocol_emptyMessageList(List *msgList)
int MQTTProtocol_handlePubrels(void *pack, int sock)
int MQTTProtocol_assignMsgId(Clients *client)
void MQTTProtocol_closeSession(Clients *c, int sendwill)
Definition: MQTTAsync.c:3917
Messages * MQTTProtocol_createMessage(Publish *publish, Messages **mm, int qos, int retained, int allocatePayload)
void Protocol_processPublication(Publish *publish, Clients *client, int allocatePayload)
Definition: MQTTAsync.c:3396
int qos
Definition: test6.c:56
void MQTTProtocol_freeMessageList(List *msgList)
#define START_TIME_TYPE
Definition: MQTTTime.h:36
int MQTTProtocol_handlePubrecs(void *pack, int sock)
int MQTTProtocol_startPublish(Clients *pubclient, Publish *publish, int qos, int retained, Messages **m)
MQTTAsync client
Definition: test6.c:276
void MQTTProtocol_freeClient(Clients *client)
Publications * MQTTProtocol_storePublication(Publish *publish, int *len)
char * MQTTStrncpy(char *dest, const char *src, size_t num)
MQTTClient c
Definition: test10.c:1656
int retained
Definition: test6.c:57
int MQTTProtocol_handlePubacks(void *pack, int sock)
void MQTTProtocol_keepalive(START_TIME_TYPE)
int MQTTProtocol_handlePubcomps(void *pack, int sock)
int MQTTProtocol_handlePublishes(void *pack, int sock)
int len
Definition: utf-8.c:46
void MQTTProtocol_retry(START_TIME_TYPE, int, int)


plotjuggler
Author(s): Davide Faconti
autogenerated on Sun Dec 6 2020 03:48:09