Clients_8c.html 276 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.17"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>MQTT C Client Libraries Internals: Clients.c File Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  13. <script type="text/javascript" src="search/searchdata.js"></script>
  14. <script type="text/javascript" src="search/search.js"></script>
  15. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  16. </head>
  17. <body>
  18. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  19. <div id="titlearea">
  20. <table cellspacing="0" cellpadding="0">
  21. <tbody>
  22. <tr style="height: 56px;">
  23. <td id="projectlogo"><img alt="Logo" src="pahologo.png"/></td>
  24. <td id="projectalign" style="padding-left: 0.5em;">
  25. <div id="projectname">MQTT C Client Libraries Internals
  26. </div>
  27. </td>
  28. </tr>
  29. </tbody>
  30. </table>
  31. </div>
  32. <!-- end header part -->
  33. <!-- Generated by Doxygen 1.8.17 -->
  34. <script type="text/javascript">
  35. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  36. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  37. /* @license-end */
  38. </script>
  39. <script type="text/javascript" src="menudata.js"></script>
  40. <script type="text/javascript" src="menu.js"></script>
  41. <script type="text/javascript">
  42. /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  43. $(function() {
  44. initMenu('',true,false,'search.php','Search');
  45. $(document).ready(function() { init_search(); });
  46. });
  47. /* @license-end */</script>
  48. <div id="main-nav"></div>
  49. <!-- window showing the filter options -->
  50. <div id="MSearchSelectWindow"
  51. onmouseover="return searchBox.OnSearchSelectShow()"
  52. onmouseout="return searchBox.OnSearchSelectHide()"
  53. onkeydown="return searchBox.OnSearchSelectKey(event)">
  54. </div>
  55. <!-- iframe showing the search results (closed by default) -->
  56. <div id="MSearchResultsWindow">
  57. <iframe src="javascript:void(0)" frameborder="0"
  58. name="MSearchResults" id="MSearchResults">
  59. </iframe>
  60. </div>
  61. </div><!-- top -->
  62. <div class="header">
  63. <div class="summary">
  64. <a href="#func-members">Functions</a> </div>
  65. <div class="headertitle">
  66. <div class="title">Clients.c File Reference</div> </div>
  67. </div><!--header-->
  68. <div class="contents">
  69. <p>functions which apply to client structures
  70. <a href="#details">More...</a></p>
  71. <div class="textblock"><code>#include &quot;Clients.h&quot;</code><br />
  72. <code>#include &lt;string.h&gt;</code><br />
  73. <code>#include &lt;stdio.h&gt;</code><br />
  74. </div><div class="textblock"><div class="dynheader">
  75. Include dependency graph for Clients.c:</div>
  76. <div class="dyncontent">
  77. <div class="center"><img src="Clients_8c__incl.png" border="0" usemap="#Clients_8c" alt=""/></div>
  78. <map name="Clients_8c" id="Clients_8c">
  79. <area shape="rect" title="functions which apply to client structures" alt="" coords="44,5,116,32"/>
  80. <area shape="rect" title=" " alt="" coords="5,80,69,107"/>
  81. <area shape="rect" title=" " alt="" coords="94,80,154,107"/>
  82. </map>
  83. </div>
  84. </div><table class="memberdecls">
  85. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
  86. Functions</h2></td></tr>
  87. <tr class="memitem:a961b1c46020c65b7ffd662500d1c849d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Clients_8c.html#a961b1c46020c65b7ffd662500d1c849d">clientIDCompare</a> (void *a, void *b)</td></tr>
  88. <tr class="memdesc:a961b1c46020c65b7ffd662500d1c849d"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structList.html" title="Structure to hold all data for one list.">List</a> callback function for comparing clients by clientid. <a href="Clients_8c.html#a961b1c46020c65b7ffd662500d1c849d">More...</a><br /></td></tr>
  89. <tr class="separator:a961b1c46020c65b7ffd662500d1c849d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  90. <tr class="memitem:a82dc4e265fecdaea2810ccdeab0abf52"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="Clients_8c.html#a82dc4e265fecdaea2810ccdeab0abf52">clientSocketCompare</a> (void *a, void *b)</td></tr>
  91. <tr class="memdesc:a82dc4e265fecdaea2810ccdeab0abf52"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structList.html" title="Structure to hold all data for one list.">List</a> callback function for comparing clients by socket. <a href="Clients_8c.html#a82dc4e265fecdaea2810ccdeab0abf52">More...</a><br /></td></tr>
  92. <tr class="separator:a82dc4e265fecdaea2810ccdeab0abf52"><td class="memSeparator" colspan="2">&#160;</td></tr>
  93. </table>
  94. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  95. <div class="textblock"><p>functions which apply to client structures </p>
  96. </div><h2 class="groupheader">Function Documentation</h2>
  97. <a id="a961b1c46020c65b7ffd662500d1c849d"></a>
  98. <h2 class="memtitle"><span class="permalink"><a href="#a961b1c46020c65b7ffd662500d1c849d">&#9670;&nbsp;</a></span>clientIDCompare()</h2>
  99. <div class="memitem">
  100. <div class="memproto">
  101. <table class="memname">
  102. <tr>
  103. <td class="memname">int clientIDCompare </td>
  104. <td>(</td>
  105. <td class="paramtype">void *&#160;</td>
  106. <td class="paramname"><em>a</em>, </td>
  107. </tr>
  108. <tr>
  109. <td class="paramkey"></td>
  110. <td></td>
  111. <td class="paramtype">void *&#160;</td>
  112. <td class="paramname"><em>b</em>&#160;</td>
  113. </tr>
  114. <tr>
  115. <td></td>
  116. <td>)</td>
  117. <td></td><td></td>
  118. </tr>
  119. </table>
  120. </div><div class="memdoc">
  121. <p><a class="el" href="structList.html" title="Structure to hold all data for one list.">List</a> callback function for comparing clients by clientid. </p>
  122. <dl class="params"><dt>Parameters</dt><dd>
  123. <table class="params">
  124. <tr><td class="paramname">a</td><td>first integer value </td></tr>
  125. <tr><td class="paramname">b</td><td>second integer value </td></tr>
  126. </table>
  127. </dd>
  128. </dl>
  129. <dl class="section return"><dt>Returns</dt><dd>boolean indicating whether a and b are equal </dd></dl>
  130. </div>
  131. </div>
  132. <a id="a82dc4e265fecdaea2810ccdeab0abf52"></a>
  133. <h2 class="memtitle"><span class="permalink"><a href="#a82dc4e265fecdaea2810ccdeab0abf52">&#9670;&nbsp;</a></span>clientSocketCompare()</h2>
  134. <div class="memitem">
  135. <div class="memproto">
  136. <table class="memname">
  137. <tr>
  138. <td class="memname">int clientSocketCompare </td>
  139. <td>(</td>
  140. <td class="paramtype">void *&#160;</td>
  141. <td class="paramname"><em>a</em>, </td>
  142. </tr>
  143. <tr>
  144. <td class="paramkey"></td>
  145. <td></td>
  146. <td class="paramtype">void *&#160;</td>
  147. <td class="paramname"><em>b</em>&#160;</td>
  148. </tr>
  149. <tr>
  150. <td></td>
  151. <td>)</td>
  152. <td></td><td></td>
  153. </tr>
  154. </table>
  155. </div><div class="memdoc">
  156. <p><a class="el" href="structList.html" title="Structure to hold all data for one list.">List</a> callback function for comparing clients by socket. </p>
  157. <dl class="params"><dt>Parameters</dt><dd>
  158. <table class="params">
  159. <tr><td class="paramname">a</td><td>first integer value </td></tr>
  160. <tr><td class="paramname">b</td><td>second integer value </td></tr>
  161. </table>
  162. </dd>
  163. </dl>
  164. <dl class="section return"><dt>Returns</dt><dd>boolean indicating whether a and b are equal </dd></dl>
  165. </div>
  166. </div>
  167. </div><!-- contents -->
  168. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a15b1457f7fd20dde1fd51ed434321e1a"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a15b1457f7fd20dde1fd51ed434321e1a">pstclear</a></div><div class="ttdeci">int pstclear(void *handle)</div><div class="ttdoc">Delete all the persisted message in the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:543</div></div>
  169. <div class="ttc" id="astructMQTTClient__connectOptions_html_a843b077a0524dcc6a1ce6db12d2e7412"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a843b077a0524dcc6a1ce6db12d2e7412">MQTTClient_connectOptions::httpHeaders</a></div><div class="ttdeci">const MQTTClient_nameValue * httpHeaders</div><div class="ttdoc">HTTP headers for websockets.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:970</div></div>
  170. <div class="ttc" id="astructMQTTClient__willOptions_html_aceaee06cb85a7dd485e58f0cd26c289d"><div class="ttname"><a href="structMQTTClient__willOptions.html#aceaee06cb85a7dd485e58f0cd26c289d">MQTTClient_willOptions::data</a></div><div class="ttdeci">const void * data</div><div class="ttdoc">binary payload data</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:648</div></div>
  171. <div class="ttc" id="astructMQTTProperty_html_a940cbb3bf8211c5f207e3e1b6495c573"><div class="ttname"><a href="structMQTTProperty.html#a940cbb3bf8211c5f207e3e1b6495c573">MQTTProperty::integer2</a></div><div class="ttdeci">unsigned short integer2</div><div class="ttdoc">holds the value of a 2 byte integer property type</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:100</div></div>
  172. <div class="ttc" id="astructList_html_a76dacd2c880fb9a86ab7c0f3aa4ee624"><div class="ttname"><a href="structList.html#a76dacd2c880fb9a86ab7c0f3aa4ee624">List::current</a></div><div class="ttdeci">ListElement * current</div><div class="ttdoc">current element in the list, for iteration</div><div class="ttdef"><b>Definition:</b> LinkedList.h:71</div></div>
  173. <div class="ttc" id="astructMQTTClient__persistence_html_a0f9fe9edd3946f0647862de7904e4098"><div class="ttname"><a href="structMQTTClient__persistence.html#a0f9fe9edd3946f0647862de7904e4098">MQTTClient_persistence::pget</a></div><div class="ttdeci">Persistence_get pget</div><div class="ttdoc">A function pointer to an implementation of Persistence_get().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:235</div></div>
  174. <div class="ttc" id="aSocket_8c_html_a3274d9743dd4d1c6e9392b74164d6379"><div class="ttname"><a href="Socket_8c.html#a3274d9743dd4d1c6e9392b74164d6379">Socket_clearPendingWrite</a></div><div class="ttdeci">void Socket_clearPendingWrite(SOCKET socket)</div><div class="ttdoc">Clear a socket from the pending write list - if one was added with Socket_addPendingWrite.</div><div class="ttdef"><b>Definition:</b> Socket.c:848</div></div>
  175. <div class="ttc" id="aMQTTClient_8c_html_a6a08562ce9b763bf79c71029b94cd9f5"><div class="ttname"><a href="MQTTClient_8c.html#a6a08562ce9b763bf79c71029b94cd9f5">MQTTClient_disconnect_internal</a></div><div class="ttdeci">static int MQTTClient_disconnect_internal(MQTTClient handle, int timeout)</div><div class="ttdoc">mqttclient_mutex must be locked when you call this function, if multi threaded</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1956</div></div>
  176. <div class="ttc" id="astructsocket__queue_html_a812ce9bb00766c3e91a593842414b693"><div class="ttname"><a href="structsocket__queue.html#a812ce9bb00766c3e91a593842414b693">socket_queue::datalen</a></div><div class="ttdeci">size_t datalen</div><div class="ttdoc">current length of data in buf</div><div class="ttdef"><b>Definition:</b> SocketBuffer.h:40</div></div>
  177. <div class="ttc" id="astructConnect_html_a7a4ee927261ade96ec6a800978f37970"><div class="ttname"><a href="structConnect.html#a7a4ee927261ade96ec6a800978f37970">Connect::all</a></div><div class="ttdeci">unsigned char all</div><div class="ttdoc">all connect flags</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:94</div></div>
  178. <div class="ttc" id="aMQTTProtocolClient_8c_html_a52e062f52e5a42275471eeb23040fc0e"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a52e062f52e5a42275471eeb23040fc0e">MQTTProtocol_freeClient</a></div><div class="ttdeci">void MQTTProtocol_freeClient(Clients *client)</div><div class="ttdoc">Free a client structure.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:908</div></div>
  179. <div class="ttc" id="astructMQTTClient__connectOptions_html_a2ed78107fecaa4639a170f63ca42d507"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a2ed78107fecaa4639a170f63ca42d507">MQTTClient_connectOptions::sessionPresent</a></div><div class="ttdeci">int sessionPresent</div><div class="ttdoc">if the MQTT version is 3.1.1, the value of sessionPresent returned in the connack</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:949</div></div>
  180. <div class="ttc" id="astructMQTTAsync__nameValue_html"><div class="ttname"><a href="structMQTTAsync__nameValue.html">MQTTAsync_nameValue</a></div><div class="ttdoc">Utility structure where name/value pairs are needed.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1182</div></div>
  181. <div class="ttc" id="astructMQTTLenString_html_ac875ffa1e0af752d17a10be055c33377"><div class="ttname"><a href="structMQTTLenString.html#ac875ffa1e0af752d17a10be055c33377">MQTTLenString::data</a></div><div class="ttdeci">char * data</div><div class="ttdoc">pointer to the string data</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:87</div></div>
  182. <div class="ttc" id="aSocket_8c_html_ab33a53c9fce80d5dfeb26426b157034a"><div class="ttname"><a href="Socket_8c.html#ab33a53c9fce80d5dfeb26426b157034a">Socket_getReadySocket</a></div><div class="ttdeci">SOCKET Socket_getReadySocket(int more_work, int timeout, mutex_type mutex, int *rc)</div><div class="ttdoc">Returns the next socket ready for communications as indicated by select.</div><div class="ttdef"><b>Definition:</b> Socket.c:485</div></div>
  183. <div class="ttc" id="astructMQTTProperties_html_a9538dfb5688661da09829a64f582c3c2"><div class="ttname"><a href="structMQTTProperties.html#a9538dfb5688661da09829a64f582c3c2">MQTTProperties::length</a></div><div class="ttdeci">int length</div><div class="ttdoc">mbi: byte length of all properties</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:116</div></div>
  184. <div class="ttc" id="astructNodeStruct_html"><div class="ttname"><a href="structNodeStruct.html">NodeStruct</a></div><div class="ttdoc">Structure to hold all data for one list element.</div><div class="ttdef"><b>Definition:</b> Tree.h:63</div></div>
  185. <div class="ttc" id="aLinkedList_8c_html_ab0f3597d344e09ad6636c8bc72029337"><div class="ttname"><a href="LinkedList_8c.html#ab0f3597d344e09ad6636c8bc72029337">ListDetachHead</a></div><div class="ttdeci">void * ListDetachHead(List *aList)</div><div class="ttdoc">Removes and frees an the first item in a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:268</div></div>
  186. <div class="ttc" id="aMQTTClientPersistence_8h_html_acee7097c1a0ab44b98c870f533687887"><div class="ttname"><a href="MQTTClientPersistence_8h.html#acee7097c1a0ab44b98c870f533687887">Persistence_clear</a></div><div class="ttdeci">int(* Persistence_clear)(void *handle)</div><div class="ttdoc">Clears the persistence store, so that it no longer contains any persisted data.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:197</div></div>
  187. <div class="ttc" id="aMQTTProtocolOut_8c_html_a460d021d06dd24cf975dfe20e17ab1ba"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a460d021d06dd24cf975dfe20e17ab1ba">MQTTProtocol_subscribe</a></div><div class="ttdeci">int MQTTProtocol_subscribe(Clients *client, List *topics, List *qoss, int msgID, MQTTSubscribe_options *opts, MQTTProperties *props)</div><div class="ttdoc">MQTT outgoing subscribe processing for a client.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:388</div></div>
  188. <div class="ttc" id="astructMQTTAsync__willOptions_html"><div class="ttname"><a href="structMQTTAsync__willOptions.html">MQTTAsync_willOptions</a></div><div class="ttdoc">MQTTAsync_willOptions defines the MQTT &quot;Last Will and Testament&quot; (LWT) settings for the client.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1020</div></div>
  189. <div class="ttc" id="aLog_8c_html_a6e2c5a6602ec82079f7b7c3c1a622f8a"><div class="ttname"><a href="Log_8c.html#a6e2c5a6602ec82079f7b7c3c1a622f8a">trace_destination_backup_name</a></div><div class="ttdeci">static char * trace_destination_backup_name</div><div class="ttdoc">the name of the backup trace file</div><div class="ttdef"><b>Definition:</b> Log.c:105</div></div>
  190. <div class="ttc" id="astructListElementStruct_html_a988db5828265edf844721e841e71fffe"><div class="ttname"><a href="structListElementStruct.html#a988db5828265edf844721e841e71fffe">ListElementStruct::prev</a></div><div class="ttdeci">struct ListElementStruct * prev</div><div class="ttdoc">pointer to previous list element</div><div class="ttdef"><b>Definition:</b> LinkedList.h:74</div></div>
  191. <div class="ttc" id="aMQTTClient_8c_html_a21804ede1a506d1d69a472bc30acc8ba"><div class="ttname"><a href="MQTTClient_8c.html#a21804ede1a506d1d69a472bc30acc8ba">MQTTClient_global_init</a></div><div class="ttdeci">void MQTTClient_global_init(MQTTClient_init_options *inits)</div><div class="ttdoc">Global init of mqtt library.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:93</div></div>
  192. <div class="ttc" id="astructMQTTClient__SSLOptions_html"><div class="ttname"><a href="structMQTTClient__SSLOptions.html">MQTTClient_SSLOptions</a></div><div class="ttdoc">MQTTClient_sslProperties defines the settings to establish an SSL/TLS connection using the OpenSSL li...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:671</div></div>
  193. <div class="ttc" id="astructList_html_a166530a166abd81afec0e6b0283f7e80"><div class="ttname"><a href="structList.html#a166530a166abd81afec0e6b0283f7e80">List::size</a></div><div class="ttdeci">size_t size</div><div class="ttdoc">heap storage used</div><div class="ttdef"><b>Definition:</b> LinkedList.h:73</div></div>
  194. <div class="ttc" id="astructClients_html_a70540b5d48c05815309215b18de69f8a"><div class="ttname"><a href="structClients.html#a70540b5d48c05815309215b18de69f8a">Clients::httpProxy</a></div><div class="ttdeci">char * httpProxy</div><div class="ttdoc">HTTP proxy.</div><div class="ttdef"><b>Definition:</b> Clients.h:154</div></div>
  195. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a43ec1e81ca408162f4b8496ba7f6da75"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a43ec1e81ca408162f4b8496ba7f6da75">MQTTAsync_SSLOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1071</div></div>
  196. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ae03dec50fd54f49582e50883072ea81e"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ae03dec50fd54f49582e50883072ea81e">MQTTAsync_connectOptions::username</a></div><div class="ttdeci">const char * username</div><div class="ttdoc">MQTT servers that support the MQTT v3.1 protocol provide authentication and authorisation by user nam...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1261</div></div>
  197. <div class="ttc" id="aThread_8c_html_a4d0bbfc059da3cd10626244d3468d319"><div class="ttname"><a href="Thread_8c.html#a4d0bbfc059da3cd10626244d3468d319">Thread_wait_sem</a></div><div class="ttdeci">int Thread_wait_sem(sem_type sem, int timeout)</div><div class="ttdoc">Wait for a semaphore to be posted, or timeout.</div><div class="ttdef"><b>Definition:</b> Thread.c:249</div></div>
  198. <div class="ttc" id="astructConnack_html_aa2355d305cb311d356af339c44a852c7"><div class="ttname"><a href="structConnack.html#aa2355d305cb311d356af339c44a852c7">Connack::all</a></div><div class="ttdeci">unsigned char all</div><div class="ttdoc">all connack flags</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:138</div></div>
  199. <div class="ttc" id="aLinkedList_8c_html_a321a3598d6979c7af3f995b77ea2cec3"><div class="ttname"><a href="LinkedList_8c.html#a321a3598d6979c7af3f995b77ea2cec3">ListAppendNoMalloc</a></div><div class="ttdeci">void ListAppendNoMalloc(List *aList, void *content, ListElement *newel, size_t size)</div><div class="ttdoc">Append an already allocated ListElement and content to a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:69</div></div>
  200. <div class="ttc" id="astructAck_html_a8be1d032b4a67550dc6020d450ad65b6"><div class="ttname"><a href="structAck.html#a8be1d032b4a67550dc6020d450ad65b6">Ack::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:216</div></div>
  201. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a64e0c1a2fd06375b975d6643175572d8"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a64e0c1a2fd06375b975d6643175572d8">pstput</a></div><div class="ttdeci">int pstput(void *handle, char *key, int bufcount, char *buffers[], int buflens[])</div><div class="ttdoc">Write wire message to the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:195</div></div>
  202. <div class="ttc" id="aMQTTPacketOut_8c_html_ad3c3f0919760286998e9b9eafaa47a36"><div class="ttname"><a href="MQTTPacketOut_8c.html#ad3c3f0919760286998e9b9eafaa47a36">MQTTPacket_send_connect</a></div><div class="ttdeci">int MQTTPacket_send_connect(Clients *client, int MQTTVersion, MQTTProperties *connectProperties, MQTTProperties *willProperties)</div><div class="ttdoc">Send an MQTT CONNECT packet down a socket for V5 or later.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:48</div></div>
  203. <div class="ttc" id="astructClients_html_a6e1576ebc386f04d2a70b943677b54d6"><div class="ttname"><a href="structClients.html#a6e1576ebc386f04d2a70b943677b54d6">Clients::inboundMsgs</a></div><div class="ttdeci">List * inboundMsgs</div><div class="ttdoc">inbound in flight messages</div><div class="ttdef"><b>Definition:</b> Clients.h:138</div></div>
  204. <div class="ttc" id="astructClients_html_af0963eb25f36dfafdd29bfc3007181b7"><div class="ttname"><a href="structClients.html#af0963eb25f36dfafdd29bfc3007181b7">Clients::maxInflightMessages</a></div><div class="ttdeci">int maxInflightMessages</div><div class="ttdoc">the max number of inflight outbound messages we allow</div><div class="ttdef"><b>Definition:</b> Clients.h:136</div></div>
  205. <div class="ttc" id="astructUnsuback_html_a7751d1086fd1c6d9ba948b10e816a0dc"><div class="ttname"><a href="structUnsuback.html#a7751d1086fd1c6d9ba948b10e816a0dc">Unsuback::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:186</div></div>
  206. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_afe4eec80b7037a59e459fb8643bed3e3"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#afe4eec80b7037a59e459fb8643bed3e3">MQTTAsync_disconnectOptions::onSuccess</a></div><div class="ttdeci">MQTTAsync_onSuccess * onSuccess</div><div class="ttdoc">A pointer to a callback function to be called if the disconnect successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1443</div></div>
  207. <div class="ttc" id="aMQTTClientPersistence_8h_html_af5a966a574c6ad7a35f1ebb7edd5c1c4"><div class="ttname"><a href="MQTTClientPersistence_8h.html#af5a966a574c6ad7a35f1ebb7edd5c1c4">MQTTPersistence_afterRead</a></div><div class="ttdeci">int MQTTPersistence_afterRead(void *context, char **buffer, int *buflen)</div><div class="ttdoc">A callback which is invoked just after a read from persistence.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:275</div></div>
  208. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_af3a54c718001dc76eb77d2f35fc31301"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#af3a54c718001dc76eb77d2f35fc31301">MQTTAsync_SSLOptions::verify</a></div><div class="ttdeci">int verify</div><div class="ttdoc">Whether to carry out post-connect checks, including that a certificate matches the given host name.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1122</div></div>
  209. <div class="ttc" id="aSocket_8c_html_ab8ff50df7c89391178aa754083d2f828"><div class="ttname"><a href="Socket_8c.html#ab8ff50df7c89391178aa754083d2f828">Socket_setnonblocking</a></div><div class="ttdeci">int Socket_setnonblocking(SOCKET sock)</div><div class="ttdoc">Set a socket non-blocking, OS independently.</div><div class="ttdef"><b>Definition:</b> Socket.c:82</div></div>
  210. <div class="ttc" id="aLinkedList_8c_html_a8430370b2b15c56ec95bb8e7e36753a5"><div class="ttname"><a href="LinkedList_8c.html#a8430370b2b15c56ec95bb8e7e36753a5">ListRemove</a></div><div class="ttdeci">int ListRemove(List *aList, void *content)</div><div class="ttdoc">Removes and frees an item in a list by comparing the pointer to the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:257</div></div>
  211. <div class="ttc" id="astructMQTTAsync__willOptions_html_a0a4c40ef8b1f73a67326cd9987fd1894"><div class="ttname"><a href="structMQTTAsync__willOptions.html#a0a4c40ef8b1f73a67326cd9987fd1894">MQTTAsync_willOptions::message</a></div><div class="ttdeci">const char * message</div><div class="ttdoc">The LWT payload.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1031</div></div>
  212. <div class="ttc" id="astructMQTTClient__connectOptions_html_a71667cbc2aa857db5b831a1e6a4a1ec9"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a71667cbc2aa857db5b831a1e6a4a1ec9">MQTTClient_connectOptions::serverURIcount</a></div><div class="ttdeci">int serverURIcount</div><div class="ttdoc">The number of entries in the optional serverURIs array.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:919</div></div>
  213. <div class="ttc" id="astructConnect_html_a9dc30d7b95feb8e55e98514cad4066bd"><div class="ttname"><a href="structConnect.html#a9dc30d7b95feb8e55e98514cad4066bd">Connect::will</a></div><div class="ttdeci">bool will</div><div class="ttdoc">will flag</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:111</div></div>
  214. <div class="ttc" id="astructSuback_html"><div class="ttname"><a href="structSuback.html">Suback</a></div><div class="ttdoc">Data for a suback packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:171</div></div>
  215. <div class="ttc" id="astructMQTTAsync__connectOptions_html_af108a647db655523e892938d3a67d6b4"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#af108a647db655523e892938d3a67d6b4">MQTTAsync_connectOptions::onSuccess5</a></div><div class="ttdeci">MQTTAsync_onSuccess5 * onSuccess5</div><div class="ttdoc">A pointer to a callback function to be called if the connect successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1362</div></div>
  216. <div class="ttc" id="astructheap__info_html_acca9bc1ad656bc11b35406f8588d2c43"><div class="ttname"><a href="structheap__info.html#acca9bc1ad656bc11b35406f8588d2c43">heap_info::max_size</a></div><div class="ttdeci">size_t max_size</div><div class="ttdoc">max size the heap has reached in bytes</div><div class="ttdef"><b>Definition:</b> Heap.h:65</div></div>
  217. <div class="ttc" id="aTree_8c_html_a9c3b81e7e63498e3a8f7bd28c4caec10"><div class="ttname"><a href="Tree_8c.html#a9c3b81e7e63498e3a8f7bd28c4caec10">TreeRemoveNodeIndex</a></div><div class="ttdeci">void * TreeRemoveNodeIndex(Tree *aTree, Node *curnode, int index)</div><div class="ttdoc">Remove an item from a tree.</div><div class="ttdef"><b>Definition:</b> Tree.c:420</div></div>
  218. <div class="ttc" id="astructMQTTClient__connectOptions_html_a8d51a29a49d2a964d5079c9bae3fcffd"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a8d51a29a49d2a964d5079c9bae3fcffd">MQTTClient_connectOptions::will</a></div><div class="ttdeci">MQTTClient_willOptions * will</div><div class="ttdoc">This is a pointer to an MQTTClient_willOptions structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:886</div></div>
  219. <div class="ttc" id="astructUnsuback_html_a804d221a84b2306cb6040f405315abc3"><div class="ttname"><a href="structUnsuback.html#a804d221a84b2306cb6040f405315abc3">Unsuback::msgId</a></div><div class="ttdeci">int msgId</div><div class="ttdoc">MQTT message id.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:187</div></div>
  220. <div class="ttc" id="astructMQTTClients_html"><div class="ttname"><a href="structMQTTClients.html">MQTTClients</a></div><div class="ttdef"><b>Definition:</b> MQTTClient.c:302</div></div>
  221. <div class="ttc" id="aClients_8c_html_a961b1c46020c65b7ffd662500d1c849d"><div class="ttname"><a href="Clients_8c.html#a961b1c46020c65b7ffd662500d1c849d">clientIDCompare</a></div><div class="ttdeci">int clientIDCompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing clients by clientid.</div><div class="ttdef"><b>Definition:</b> Clients.c:36</div></div>
  222. <div class="ttc" id="aMQTTClient_8c_html_a0c0d8194bf8a449928881cf83276728e"><div class="ttname"><a href="MQTTClient_8c.html#a0c0d8194bf8a449928881cf83276728e">connectionLost_call</a></div><div class="ttdeci">static thread_return_type WINAPI connectionLost_call(void *context)</div><div class="ttdoc">Wrapper function to call connection lost on a separate thread.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:700</div></div>
  223. <div class="ttc" id="astructMQTTClient__message_html_ab981c28422ec70dbf8127a4f7164d964"><div class="ttname"><a href="structMQTTClient__message.html#ab981c28422ec70dbf8127a4f7164d964">MQTTClient_message::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">The quality of service (QoS) assigned to the message.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:295</div></div>
  224. <div class="ttc" id="aMQTTClient_8c_html_a4c2df88d00a3dadd510a8cb774739366"><div class="ttname"><a href="MQTTClient_8c.html#a4c2df88d00a3dadd510a8cb774739366">MQTTClient_receive</a></div><div class="ttdeci">int MQTTClient_receive(MQTTClient handle, char **topicName, int *topicLen, MQTTClient_message **message, unsigned long timeout)</div><div class="ttdoc">This function performs a synchronous receive of incoming messages.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2754</div></div>
  225. <div class="ttc" id="astructClients_html_a121c64145977cb25dfd05a3297a4d6f1"><div class="ttname"><a href="structClients.html#a121c64145977cb25dfd05a3297a4d6f1">Clients::ping_due</a></div><div class="ttdeci">unsigned int ping_due</div><div class="ttdoc">we couldn't send a ping so we should send one when we can</div><div class="ttdef"><b>Definition:</b> Clients.h:129</div></div>
  226. <div class="ttc" id="aSocketBuffer_8c_html_afcc9b9b6bd255b0a6e4c7e4f5a36bb37"><div class="ttname"><a href="SocketBuffer_8c.html#afcc9b9b6bd255b0a6e4c7e4f5a36bb37">SocketBuffer_getQueuedData</a></div><div class="ttdeci">char * SocketBuffer_getQueuedData(SOCKET socket, size_t bytes, size_t *actual_len)</div><div class="ttdoc">Get any queued data for a specific socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:176</div></div>
  227. <div class="ttc" id="astructMQTTAsync__failureData5_html_a20603650f6fd4e429fc4c246d5005843"><div class="ttname"><a href="structMQTTAsync__failureData5.html#a20603650f6fd4e429fc4c246d5005843">MQTTAsync_failureData5::packet_type</a></div><div class="ttdeci">int packet_type</div><div class="ttdoc">Packet type on which the failure occurred - used for publish QoS 1/2 exchanges.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:564</div></div>
  228. <div class="ttc" id="aSocketBuffer_8c_html_acb4511a3a4767187a2607027aff718b8"><div class="ttname"><a href="SocketBuffer_8c.html#acb4511a3a4767187a2607027aff718b8">SocketBuffer_freeDefQ</a></div><div class="ttdeci">void SocketBuffer_freeDefQ(void)</div><div class="ttdoc">Free the default queue memory.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:122</div></div>
  229. <div class="ttc" id="astructMQTTAsync__command_html"><div class="ttname"><a href="structMQTTAsync__command.html">MQTTAsync_command</a></div><div class="ttdef"><b>Definition:</b> MQTTAsyncUtils.h:41</div></div>
  230. <div class="ttc" id="astructframeData_html"><div class="ttname"><a href="structframeData.html">frameData</a></div><div class="ttdoc">builds a websocket frame for data transmission</div><div class="ttdef"><b>Definition:</b> WebSocket.c:227</div></div>
  231. <div class="ttc" id="aSocketBuffer_8c_html_a4a8d6188b4775789810a44396d05cf19"><div class="ttname"><a href="SocketBuffer_8c.html#a4a8d6188b4775789810a44396d05cf19">SocketBuffer_terminate</a></div><div class="ttdeci">void SocketBuffer_terminate(void)</div><div class="ttdoc">Terminate the socketBuffer module.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:133</div></div>
  232. <div class="ttc" id="aLinkedList_8c_html_acad319e9ce896ff1fff30ddbeb06d22d"><div class="ttname"><a href="LinkedList_8c.html#acad319e9ce896ff1fff30ddbeb06d22d">ListFindItem</a></div><div class="ttdeci">ListElement * ListFindItem(List *aList, void *content, int(*callback)(void *, void *))</div><div class="ttdoc">Finds an element in a list by comparing the content or pointer to the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:154</div></div>
  233. <div class="ttc" id="astructNodeStruct_html_a4ac882ab7e5ab868d9449aec51a25adb"><div class="ttname"><a href="structNodeStruct.html#a4ac882ab7e5ab868d9449aec51a25adb">NodeStruct::size</a></div><div class="ttdeci">size_t size</div><div class="ttdoc">size of content</div><div class="ttdef"><b>Definition:</b> Tree.h:82</div></div>
  234. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a6c8a7ef5c761e46d17750919eb4dadd3"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a6c8a7ef5c761e46d17750919eb4dadd3">MQTTAsync_disconnectOptions::context</a></div><div class="ttdeci">void * context</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1455</div></div>
  235. <div class="ttc" id="astructMQTTAsync__message_html_a4621b522c9923c68003d30e9dba9aa4e"><div class="ttname"><a href="structMQTTAsync__message.html#a4621b522c9923c68003d30e9dba9aa4e">MQTTAsync_message::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:274</div></div>
  236. <div class="ttc" id="aSocketBuffer_8c_html_acebc1cbb93be4588f33b04ed404f6dbf"><div class="ttname"><a href="SocketBuffer_8c.html#acebc1cbb93be4588f33b04ed404f6dbf">socketcompare</a></div><div class="ttdeci">int socketcompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing socket_queues by socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:70</div></div>
  237. <div class="ttc" id="aMQTTPacketOut_8c_html_aee4b3e106128629671828ae7bfa70850"><div class="ttname"><a href="MQTTPacketOut_8c.html#aee4b3e106128629671828ae7bfa70850">MQTTPacket_suback</a></div><div class="ttdeci">void * MQTTPacket_suback(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create suback packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:290</div></div>
  238. <div class="ttc" id="astructprops__rc__parms_html"><div class="ttname"><a href="structprops__rc__parms.html">props_rc_parms</a></div><div class="ttdef"><b>Definition:</b> MQTTClient.c:337</div></div>
  239. <div class="ttc" id="astructPublish_html_af25a32a9a9bccf70af72fa5a19fa7864"><div class="ttname"><a href="structPublish.html#af25a32a9a9bccf70af72fa5a19fa7864">Publish::topic</a></div><div class="ttdeci">char * topic</div><div class="ttdoc">topic string</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:200</div></div>
  240. <div class="ttc" id="aMQTTClientPersistence_8h_html_ab716e21e53c84a5ad62aa962a2a8f7db"><div class="ttname"><a href="MQTTClientPersistence_8h.html#ab716e21e53c84a5ad62aa962a2a8f7db">MQTTCLIENT_PERSISTENCE_ERROR</a></div><div class="ttdeci">#define MQTTCLIENT_PERSISTENCE_ERROR</div><div class="ttdoc">Application-specific persistence functions must return this error code if there is a problem executin...</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:85</div></div>
  241. <div class="ttc" id="aMQTTClient_8c_html_a22870f94aa4cb1827626612f1ded7c69"><div class="ttname"><a href="MQTTClient_8c.html#a22870f94aa4cb1827626612f1ded7c69">MQTTClient_setTraceCallback</a></div><div class="ttdeci">void MQTTClient_setTraceCallback(MQTTClient_traceCallback *callback)</div><div class="ttdoc">This function sets the trace callback if needed.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2941</div></div>
  242. <div class="ttc" id="aMQTTProtocolOut_8c_html_a6b8949d7db9299fa5fd940e8e58f31b6"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a6b8949d7db9299fa5fd940e8e58f31b6">MQTTProtocol_specialChars</a></div><div class="ttdeci">void MQTTProtocol_specialChars(char *p0, char *p1, b64_size_t *basic_auth_in_len)</div><div class="ttdoc">Allow user or password characters to be expressed in the form of XX, XX being the hexadecimal value o...</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:114</div></div>
  243. <div class="ttc" id="aMQTTProtocolOut_8c_html_a4f914518a8e2d68cc9d9fbb2c22cdf6f"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a4f914518a8e2d68cc9d9fbb2c22cdf6f">MQTTProtocol_handleDisconnects</a></div><div class="ttdeci">int MQTTProtocol_handleDisconnects(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming disconnect packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:465</div></div>
  244. <div class="ttc" id="astructpending__write_html"><div class="ttname"><a href="structpending__write.html">pending_write</a></div><div class="ttdef"><b>Definition:</b> MQTTProtocol.h:28</div></div>
  245. <div class="ttc" id="aLinkedList_8c_html_a5ee7cd1d29fd9299231d40c011174fcd"><div class="ttname"><a href="LinkedList_8c.html#a5ee7cd1d29fd9299231d40c011174fcd">ListRemoveHead</a></div><div class="ttdeci">int ListRemoveHead(List *aList)</div><div class="ttdoc">Removes and frees an the first item in a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:294</div></div>
  246. <div class="ttc" id="astructMQTTClient__message_html_a90437a223f235ad4412d0c7c69f08125"><div class="ttname"><a href="structMQTTClient__message.html#a90437a223f235ad4412d0c7c69f08125">MQTTClient_message::payload</a></div><div class="ttdeci">void * payload</div><div class="ttdoc">A pointer to the payload of the MQTT message.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:281</div></div>
  247. <div class="ttc" id="astructqEntry_html"><div class="ttname"><a href="structqEntry.html">qEntry</a></div><div class="ttdef"><b>Definition:</b> MQTTAsyncUtils.h:33</div></div>
  248. <div class="ttc" id="aMQTTPacket_8c_html_aa8fc559d3a1e58ab50e69146666f2f63"><div class="ttname"><a href="MQTTPacket_8c.html#aa8fc559d3a1e58ab50e69146666f2f63">readInt4</a></div><div class="ttdeci">int readInt4(char **pptr)</div><div class="ttdoc">Calculates an integer from two bytes read from the input buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:965</div></div>
  249. <div class="ttc" id="astructMQTTProperties_html"><div class="ttname"><a href="structMQTTProperties.html">MQTTProperties</a></div><div class="ttdoc">MQTT version 5 property list.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:112</div></div>
  250. <div class="ttc" id="aMQTTPacket_8c_html_a3635fd8035177b20c478daea6bad9328"><div class="ttname"><a href="MQTTPacket_8c.html#a3635fd8035177b20c478daea6bad9328">MQTTPacket_sends</a></div><div class="ttdeci">int MQTTPacket_sends(networkHandles *net, Header header, PacketBuffers *bufs, int MQTTVersion)</div><div class="ttdoc">Sends an MQTT packet from multiple buffers in one system call write.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:253</div></div>
  251. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a9f358375b8e254983d00f8b057e97dd6"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a9f358375b8e254983d00f8b057e97dd6">pstkeys</a></div><div class="ttdeci">int pstkeys(void *handle, char ***keys, int *nkeys)</div><div class="ttdoc">Returns the keys (file names w/o the extension) in the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:659</div></div>
  252. <div class="ttc" id="astructMQTTAsync__successData_html_a61d994959ff1350ab2a0986d33ecd204"><div class="ttname"><a href="structMQTTAsync__successData.html#a61d994959ff1350ab2a0986d33ecd204">MQTTAsync_successData::pub</a></div><div class="ttdeci">struct MQTTAsync_successData::@1::@2 pub</div><div class="ttdoc">For publish, the message being sent to the server.</div></div>
  253. <div class="ttc" id="aMQTTClientPersistence_8h_html_a5dc68b8616e4041e037bad94ce07681b"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a5dc68b8616e4041e037bad94ce07681b">MQTTCLIENT_PERSISTENCE_USER</a></div><div class="ttdeci">#define MQTTCLIENT_PERSISTENCE_USER</div><div class="ttdoc">This persistence_type value specifies an application-specific persistence mechanism (see MQTTClient_c...</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:79</div></div>
  254. <div class="ttc" id="astructheap__info_html"><div class="ttname"><a href="structheap__info.html">heap_info</a></div><div class="ttdoc">Information about the state of the heap.</div><div class="ttdef"><b>Definition:</b> Heap.h:62</div></div>
  255. <div class="ttc" id="astructPublish_html_a5e5bc5c8445b9f8bdbc02315f91921a0"><div class="ttname"><a href="structPublish.html#a5e5bc5c8445b9f8bdbc02315f91921a0">Publish::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:205</div></div>
  256. <div class="ttc" id="astructMQTTClient__connectOptions_html_a7de757dd172a63d699290d582aa0f798"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a7de757dd172a63d699290d582aa0f798">MQTTClient_connectOptions::keepAliveInterval</a></div><div class="ttdeci">int keepAliveInterval</div><div class="ttdoc">The &quot;keep alive&quot; interval, measured in seconds, defines the maximum time that should pass without com...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:848</div></div>
  257. <div class="ttc" id="aMQTTClientPersistence_8h_html_adc3aff3c570fa5509e9d6814a85ab867"><div class="ttname"><a href="MQTTClientPersistence_8h.html#adc3aff3c570fa5509e9d6814a85ab867">Persistence_get</a></div><div class="ttdeci">int(* Persistence_get)(void *handle, char *key, char **buffer, int *buflen)</div><div class="ttdoc">Retrieve the specified data from the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:156</div></div>
  258. <div class="ttc" id="astructMessages_html_a4751604bf85bccbff2273a069f976679"><div class="ttname"><a href="structMessages.html#a4751604bf85bccbff2273a069f976679">Messages::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">PUBREC, PUBREL, PUBCOMP</div><div class="ttdef"><b>Definition:</b> Clients.h:64</div></div>
  259. <div class="ttc" id="aMQTTProtocolClient_8c_html_a4502a4b9257b32508fac87e42fb1d85a"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a4502a4b9257b32508fac87e42fb1d85a">MQTTProtocol_startPublishCommon</a></div><div class="ttdeci">static int MQTTProtocol_startPublishCommon(Clients *pubclient, Publish *publish, int qos, int retained)</div><div class="ttdoc">Utility function to start a new publish exchange.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:149</div></div>
  260. <div class="ttc" id="aSocketBuffer_8c_html_a999ec229faa4b2e2c0f7db87693bc1f8"><div class="ttname"><a href="SocketBuffer_8c.html#a999ec229faa4b2e2c0f7db87693bc1f8">SocketBuffer_getQueuedChar</a></div><div class="ttdeci">int SocketBuffer_getQueuedChar(SOCKET socket, char *c)</div><div class="ttdoc">Get any queued character for a specific socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:219</div></div>
  261. <div class="ttc" id="astructClients_html_a1a0ca8e87f5d963ea3ab5c2e7748aaa5"><div class="ttname"><a href="structClients.html#a1a0ca8e87f5d963ea3ab5c2e7748aaa5">Clients::phandle</a></div><div class="ttdeci">void * phandle</div><div class="ttdoc">the persistence handle</div><div class="ttdef"><b>Definition:</b> Clients.h:145</div></div>
  262. <div class="ttc" id="astructClients_html_a8745ab9f05600fd3f97bf695e99a7f17"><div class="ttname"><a href="structClients.html#a8745ab9f05600fd3f97bf695e99a7f17">Clients::persistence</a></div><div class="ttdeci">MQTTClient_persistence * persistence</div><div class="ttdoc">a persistence implementation</div><div class="ttdef"><b>Definition:</b> Clients.h:146</div></div>
  263. <div class="ttc" id="astructMQTTClient__connectOptions_html_aec63485af96db24d26868d3a19a83504"><div class="ttname"><a href="structMQTTClient__connectOptions.html#aec63485af96db24d26868d3a19a83504">MQTTClient_connectOptions::serverURIs</a></div><div class="ttdeci">char *const * serverURIs</div><div class="ttdoc">An optional array of null-terminated strings specifying the servers to which the client will connect.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:933</div></div>
  264. <div class="ttc" id="aMQTTClient_8c_html_acdcf1aefca1dbb3d1b3d36c9bbaf3760"><div class="ttname"><a href="MQTTClient_8c.html#acdcf1aefca1dbb3d1b3d36c9bbaf3760">MQTTProtocol_checkPendingWrites</a></div><div class="ttdeci">static void MQTTProtocol_checkPendingWrites(void)</div><div class="ttdoc">See if any pending writes have been completed, and cleanup if so.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:3051</div></div>
  265. <div class="ttc" id="astructMQTTAsync__createOptions_html_a538f8ca0715d75b79be91e8050a44402"><div class="ttname"><a href="structMQTTAsync__createOptions.html#a538f8ca0715d75b79be91e8050a44402">MQTTAsync_createOptions::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">Whether the MQTT version is 3.1, 3.1.1, or 5.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:981</div></div>
  266. <div class="ttc" id="astructClients_html_a3864bdb9426f9fc646eff80109a831b3"><div class="ttname"><a href="structClients.html#a3864bdb9426f9fc646eff80109a831b3">Clients::httpsProxy</a></div><div class="ttdeci">char * httpsProxy</div><div class="ttdoc">HTTPS proxy.</div><div class="ttdef"><b>Definition:</b> Clients.h:155</div></div>
  267. <div class="ttc" id="astructMQTTAsync__successData_html_a622eceefeaf9679af35841b1e7564f48"><div class="ttname"><a href="structMQTTAsync__successData.html#a622eceefeaf9679af35841b1e7564f48">MQTTAsync_successData::serverURI</a></div><div class="ttdeci">char * serverURI</div><div class="ttdoc">the connection string of the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:592</div></div>
  268. <div class="ttc" id="astructMQTTClient__willOptions_html_a10a24c6ed7a204e6eb21d48ad8fb13cb"><div class="ttname"><a href="structMQTTClient__willOptions.html#a10a24c6ed7a204e6eb21d48ad8fb13cb">MQTTClient_willOptions::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">The quality of service setting for the LWT message (see MQTTClient_message.qos and qos).</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:643</div></div>
  269. <div class="ttc" id="astructClients_html_a8521f3c0d7728e0bac41c1601ca8bbb9"><div class="ttname"><a href="structClients.html#a8521f3c0d7728e0bac41c1601ca8bbb9">Clients::net</a></div><div class="ttdeci">networkHandles net</div><div class="ttdoc">network info for this client</div><div class="ttdef"><b>Definition:</b> Clients.h:132</div></div>
  270. <div class="ttc" id="astructConnack_html_a455bf40d0da52ccfd9b546e7fa23b1d0"><div class="ttname"><a href="structConnack.html#a455bf40d0da52ccfd9b546e7fa23b1d0">Connack::reserved</a></div><div class="ttdeci">unsigned int reserved</div><div class="ttdoc">message type nibble</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:149</div></div>
  271. <div class="ttc" id="aMQTTClientPersistence_8h_html_a3582de2c87e89f617e8e553b2a0e279a"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a3582de2c87e89f617e8e553b2a0e279a">Persistence_close</a></div><div class="ttdeci">int(* Persistence_close)(void *handle)</div><div class="ttdoc">Close the persistent store referred to by the handle.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:123</div></div>
  272. <div class="ttc" id="astructMQTTPacket_html"><div class="ttname"><a href="structMQTTPacket.html">MQTTPacket</a></div><div class="ttdoc">Data for a packet with header only.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:162</div></div>
  273. <div class="ttc" id="astructMQTTAsync__failureData5_html_ac92de089ce2d9ae81b2c4b0dc1f97792"><div class="ttname"><a href="structMQTTAsync__failureData5.html#ac92de089ce2d9ae81b2c4b0dc1f97792">MQTTAsync_failureData5::code</a></div><div class="ttdeci">int code</div><div class="ttdoc">A numeric code identifying the MQTT client library error.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:560</div></div>
  274. <div class="ttc" id="aMQTTProtocolClient_8c_html_a8514ddc8d0f346c0da19ab4d59b4062f"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a8514ddc8d0f346c0da19ab4d59b4062f">MQTTProtocol_freeMessageList</a></div><div class="ttdeci">void MQTTProtocol_freeMessageList(List *msgList)</div><div class="ttdoc">Empty and free up all storage used by a message list.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:994</div></div>
  275. <div class="ttc" id="aSocketBuffer_8c_html_aa61a564b814b06d9cfd3fe9ce7ab1cf7"><div class="ttname"><a href="SocketBuffer_8c.html#aa61a564b814b06d9cfd3fe9ce7ab1cf7">SocketBuffer_pendingWrite</a></div><div class="ttdeci">int SocketBuffer_pendingWrite(SOCKET socket, int count, iobuf *iovecs, int *frees, size_t total, size_t bytes)</div><div class="ttdoc">A socket write was interrupted so store the remaining data.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:349</div></div>
  276. <div class="ttc" id="aMQTTPacket_8c_html_a9ebcf93ff2ba3bd103f016c975e9c9c4"><div class="ttname"><a href="MQTTPacket_8c.html#a9ebcf93ff2ba3bd103f016c975e9c9c4">MQTTPacket_send_publish</a></div><div class="ttdeci">int MQTTPacket_send_publish(Publish *pack, int dup, int qos, int retained, networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PUBLISH packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:855</div></div>
  277. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a03bb9a21cbbd0f9a2258204c1890ca40"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a03bb9a21cbbd0f9a2258204c1890ca40">MQTTAsync_connectOptions::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">Sets the version of MQTT to be used on the connect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1325</div></div>
  278. <div class="ttc" id="astructUnsuback_html"><div class="ttname"><a href="structUnsuback.html">Unsuback</a></div><div class="ttdoc">Data for an MQTT V5 unsuback packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:184</div></div>
  279. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a4a436daa9d391038e6e5748c31efb257"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a4a436daa9d391038e6e5748c31efb257">MQTTAsync_disconnectOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1430</div></div>
  280. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a8b56d6075568072840f02abc8c642f6a"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a8b56d6075568072840f02abc8c642f6a">MQTTAsync_SSLOptions::privateKey</a></div><div class="ttdeci">const char * privateKey</div><div class="ttdoc">If not included in the sslKeyStore, this setting points to the file in PEM format containing the clie...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1093</div></div>
  281. <div class="ttc" id="aMQTTPacket_8c_html_a93c155059c80bd01b4a1561d9bec1d13"><div class="ttname"><a href="MQTTPacket_8c.html#a93c155059c80bd01b4a1561d9bec1d13">MQTTPacket_ack</a></div><div class="ttdeci">void * MQTTPacket_ack(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create acknowledgement packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:794</div></div>
  282. <div class="ttc" id="aMQTTClient_8c_html_a5390c2402f135c12826ffbf6fc261f7c"><div class="ttname"><a href="MQTTClient_8c.html#a5390c2402f135c12826ffbf6fc261f7c">MQTTClient_subscribeMany5</a></div><div class="ttdeci">MQTTResponse MQTTClient_subscribeMany5(MQTTClient handle, int count, char *const *topic, int *qos, MQTTSubscribe_options *opts, MQTTProperties *props)</div><div class="ttdoc">This function attempts to subscribe an MQTT version 5.0 client to a list of topics,...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2008</div></div>
  283. <div class="ttc" id="aSocket_8c_html_a4c933d467e9ab2848b9590fe45f21f2f"><div class="ttname"><a href="Socket_8c.html#a4c933d467e9ab2848b9590fe45f21f2f">Socket_addSocket</a></div><div class="ttdeci">int Socket_addSocket(SOCKET newSd)</div><div class="ttdoc">Add a socket to the list of socket to check with select.</div><div class="ttdef"><b>Definition:</b> Socket.c:266</div></div>
  284. <div class="ttc" id="astructMQTTClient__message_html"><div class="ttname"><a href="structMQTTClient__message.html">MQTTClient_message</a></div><div class="ttdoc">A structure representing the payload and attributes of an MQTT message.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:271</div></div>
  285. <div class="ttc" id="astructMQTTAsync__successData5_html_a3aa03bcf1e08deeaacb237d014181e80"><div class="ttname"><a href="structMQTTAsync__successData5.html#a3aa03bcf1e08deeaacb237d014181e80">MQTTAsync_successData5::destinationName</a></div><div class="ttdeci">char * destinationName</div><div class="ttdoc">the topic destination for the message</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:622</div></div>
  286. <div class="ttc" id="aMQTTPersistence_8c_html_a65b64467da967b6930966b98f249406e"><div class="ttname"><a href="MQTTPersistence_8c.html#a65b64467da967b6930966b98f249406e">MQTTPersistence_initialize</a></div><div class="ttdeci">int MQTTPersistence_initialize(Clients *c, const char *serverURI)</div><div class="ttdoc">Open persistent store and restore any persisted messages.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:115</div></div>
  287. <div class="ttc" id="astructClients_html_a32899a8e944eef969c834833388fb91e"><div class="ttname"><a href="structClients.html#a32899a8e944eef969c834833388fb91e">Clients::afterRead</a></div><div class="ttdeci">MQTTPersistence_afterRead * afterRead</div><div class="ttdoc">persistence read callback</div><div class="ttdef"><b>Definition:</b> Clients.h:148</div></div>
  288. <div class="ttc" id="aLinkedList_8c_html_ab2bcc1897abf1d98490ea81c474dba52"><div class="ttname"><a href="LinkedList_8c.html#ab2bcc1897abf1d98490ea81c474dba52">ListDetach</a></div><div class="ttdeci">int ListDetach(List *aList, void *content)</div><div class="ttdoc">Removes but does not free an item in a list by comparing the pointer to the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:245</div></div>
  289. <div class="ttc" id="aLog_8c_html_a669722e3f57811871f97c12392aba85d"><div class="ttname"><a href="Log_8c.html#a669722e3f57811871f97c12392aba85d">Log</a></div><div class="ttdeci">void Log(enum LOG_LEVELS log_level, int msgno, const char *format,...)</div><div class="ttdoc">Log a message.</div><div class="ttdef"><b>Definition:</b> Log.c:425</div></div>
  290. <div class="ttc" id="aMQTTProtocolOut_8c_html_ad9baf307647cbe6516eadbbe975cda8c"><div class="ttname"><a href="MQTTProtocolOut_8c.html#ad9baf307647cbe6516eadbbe975cda8c">MQTTProtocol_connect</a></div><div class="ttdeci">int MQTTProtocol_connect(const char *ip_address, Clients *aClient, int websocket, int MQTTVersion, MQTTProperties *connectProperties, MQTTProperties *willProperties)</div><div class="ttdoc">MQTT outgoing connect processing for a client.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:217</div></div>
  291. <div class="ttc" id="aMQTTClient_8c_html_ade24f717a9b39d38b081e1d5e0db1661"><div class="ttname"><a href="MQTTClient_8c.html#ade24f717a9b39d38b081e1d5e0db1661">MQTTClient_createWithOptions</a></div><div class="ttdeci">int MQTTClient_createWithOptions(MQTTClient *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context, MQTTClient_createOptions *options)</div><div class="ttdoc">A version of :MQTTClient_create() with additional options.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:373</div></div>
  292. <div class="ttc" id="aLinkedList_8c_html_a8b3e61bc873a90ad2ea43a15e6c001f4"><div class="ttname"><a href="LinkedList_8c.html#a8b3e61bc873a90ad2ea43a15e6c001f4">ListFreeNoContent</a></div><div class="ttdeci">void ListFreeNoContent(List *aList)</div><div class="ttdoc">Removes and but does not free all items in a list, and frees the list itself.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:392</div></div>
  293. <div class="ttc" id="aMQTTPersistence_8c_html_a18eab666c3e6aecd92a6c8f10df808e3"><div class="ttname"><a href="MQTTPersistence_8c.html#a18eab666c3e6aecd92a6c8f10df808e3">MQTTPersistence_putPacket</a></div><div class="ttdeci">int MQTTPersistence_putPacket(SOCKET socket, char *buf0, size_t buf0len, int count, char **buffers, size_t *buflens, int htype, int msgId, int scr, int MQTTVersion)</div><div class="ttdoc">Adds a record to the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:434</div></div>
  294. <div class="ttc" id="astructNodeStruct_html_aa605b943d1cb013da384c37f5a074285"><div class="ttname"><a href="structNodeStruct.html#aa605b943d1cb013da384c37f5a074285">NodeStruct::content</a></div><div class="ttdeci">void * content</div><div class="ttdoc">pointer to element content</div><div class="ttdef"><b>Definition:</b> Tree.h:81</div></div>
  295. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a1901b5590afdc86db8e542c0d49f5106"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a1901b5590afdc86db8e542c0d49f5106">MQTTClient_SSLOptions::CApath</a></div><div class="ttdeci">const char * CApath</div><div class="ttdoc">From the OpenSSL documentation: If CApath is not NULL, it points to a directory containing CA certifi...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:732</div></div>
  296. <div class="ttc" id="astructMQTTAsync__createOptions_html_a8ab45ad21f70abfea24a248b7a83d9f7"><div class="ttname"><a href="structMQTTAsync__createOptions.html#a8ab45ad21f70abfea24a248b7a83d9f7">MQTTAsync_createOptions::allowDisconnectedSendAtAnyTime</a></div><div class="ttdeci">int allowDisconnectedSendAtAnyTime</div><div class="ttdoc">Allow sending of messages while disconnected before a first successful connect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:985</div></div>
  297. <div class="ttc" id="astructClients_html_a4e6f0b2b23c1a2b86899c9ca7b06b29b"><div class="ttname"><a href="structClients.html#a4e6f0b2b23c1a2b86899c9ca7b06b29b">Clients::ping_due_time</a></div><div class="ttdeci">START_TIME_TYPE ping_due_time</div><div class="ttdoc">the time at which the ping should have been sent (ping_due)</div><div class="ttdef"><b>Definition:</b> Clients.h:131</div></div>
  298. <div class="ttc" id="aMQTTClient_8c_html_a3cd7a94b48d1d9c6b8af4b9203d69d37"><div class="ttname"><a href="MQTTClient_8c.html#a3cd7a94b48d1d9c6b8af4b9203d69d37">MQTTClient_publish</a></div><div class="ttdeci">int MQTTClient_publish(MQTTClient handle, const char *topicName, int payloadlen, const void *payload, int qos, int retained, MQTTClient_deliveryToken *deliveryToken)</div><div class="ttdoc">This function attempts to publish a message to a given topic (see also MQTTClient_publishMessage()).</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2463</div></div>
  299. <div class="ttc" id="astructMQTTClient__nameValue_html"><div class="ttname"><a href="structMQTTClient__nameValue.html">MQTTClient_nameValue</a></div><div class="ttdoc">MQTTClient_libraryInfo is used to store details relating to the currently used library such as the ve...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:791</div></div>
  300. <div class="ttc" id="astructMQTTProperty_html_a5e407f4d2a2ba51cc784b7660fc06e6f"><div class="ttname"><a href="structMQTTProperty.html#a5e407f4d2a2ba51cc784b7660fc06e6f">MQTTProperty::identifier</a></div><div class="ttdeci">enum MQTTPropertyCodes identifier</div><div class="ttdoc">The MQTT V5 property id.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:96</div></div>
  301. <div class="ttc" id="astructConnect_html_a64c92596b5ce2c01452d53d91fdf41c4"><div class="ttname"><a href="structConnect.html#a64c92596b5ce2c01452d53d91fdf41c4">Connect::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:91</div></div>
  302. <div class="ttc" id="aMQTTPacket_8c_html_a9dd0446112e7bc982f8e3bb8bbb6b409"><div class="ttname"><a href="MQTTPacket_8c.html#a9dd0446112e7bc982f8e3bb8bbb6b409">MQTTPacket_freeUnsuback</a></div><div class="ttdeci">void MQTTPacket_freeUnsuback(Unsuback *pack)</div><div class="ttdoc">Free allocated storage for a suback packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:711</div></div>
  303. <div class="ttc" id="aMQTTClientPersistence_8h_html_ae01e089313a65ac4661ed216b6ac00fa"><div class="ttname"><a href="MQTTClientPersistence_8h.html#ae01e089313a65ac4661ed216b6ac00fa">MQTTCLIENT_PERSISTENCE_NONE</a></div><div class="ttdeci">#define MQTTCLIENT_PERSISTENCE_NONE</div><div class="ttdoc">This persistence_type value specifies a memory-based persistence mechanism (see MQTTClient_create()).</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:74</div></div>
  304. <div class="ttc" id="astructMQTTClient__connectOptions_html_acfff5a62e87b80f205a1f83fdde5653d"><div class="ttname"><a href="structMQTTClient__connectOptions.html#acfff5a62e87b80f205a1f83fdde5653d">MQTTClient_connectOptions::binarypwd</a></div><div class="ttdeci">struct MQTTClient_connectOptions::@19 binarypwd</div><div class="ttdoc">Optional binary password.</div></div>
  305. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a4b82d5aca6f990de991c87c34f8a7d02"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a4b82d5aca6f990de991c87c34f8a7d02">MQTTAsync_responseOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:711</div></div>
  306. <div class="ttc" id="astructConnack_html_a5a963839f48e7f1319af687621f6e3ec"><div class="ttname"><a href="structConnack.html#a5a963839f48e7f1319af687621f6e3ec">Connack::rc</a></div><div class="ttdeci">unsigned char rc</div><div class="ttdoc">connack reason code</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:153</div></div>
  307. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a90760033b5ae9962126770c3527603fd"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a90760033b5ae9962126770c3527603fd">MQTTAsync_SSLOptions::trustStore</a></div><div class="ttdeci">const char * trustStore</div><div class="ttdoc">The file in PEM format containing the public digital certificates trusted by the client.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1083</div></div>
  308. <div class="ttc" id="astructstorageElement_html_aa378660045dffaebb2804fd8ba6c5982"><div class="ttname"><a href="structstorageElement.html#aa378660045dffaebb2804fd8ba6c5982">storageElement::line</a></div><div class="ttdeci">int line</div><div class="ttdoc">the line no in the source file where it was allocated</div><div class="ttdef"><b>Definition:</b> Heap.c:71</div></div>
  309. <div class="ttc" id="aLinkedList_8c_html_a7c6fba7f4b569c69829676bed2852ee9"><div class="ttname"><a href="LinkedList_8c.html#a7c6fba7f4b569c69829676bed2852ee9">ListNextElement</a></div><div class="ttdeci">ListElement * ListNextElement(List *aList, ListElement **pos)</div><div class="ttdoc">Forward iteration through a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:411</div></div>
  310. <div class="ttc" id="astructSuback_html_aec7bfa50ec92509a7d7f9466173a064e"><div class="ttname"><a href="structSuback.html#aec7bfa50ec92509a7d7f9466173a064e">Suback::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:175</div></div>
  311. <div class="ttc" id="astructConnect_html_a35cba4252092877e572c5c74b41be6e2"><div class="ttname"><a href="structConnect.html#a35cba4252092877e572c5c74b41be6e2">Connect::version</a></div><div class="ttdeci">unsigned char version</div><div class="ttdoc">MQTT version number.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:126</div></div>
  312. <div class="ttc" id="astructMQTTPersistence__qEntry_html"><div class="ttname"><a href="structMQTTPersistence__qEntry.html">MQTTPersistence_qEntry</a></div><div class="ttdef"><b>Definition:</b> MQTTPersistence.h:84</div></div>
  313. <div class="ttc" id="astructMQTTAsync__createOptions_html_afff54eb461a8ec8544a36f09d33f07c2"><div class="ttname"><a href="structMQTTAsync__createOptions.html#afff54eb461a8ec8544a36f09d33f07c2">MQTTAsync_createOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:963</div></div>
  314. <div class="ttc" id="astructstackEntry_html"><div class="ttname"><a href="structstackEntry.html">stackEntry</a></div><div class="ttdef"><b>Definition:</b> StackTrace.c:46</div></div>
  315. <div class="ttc" id="aMQTTPersistence_8c_html_a75e756280e499db530896c5b74b8d3b5"><div class="ttname"><a href="MQTTPersistence_8c.html#a75e756280e499db530896c5b74b8d3b5">MQTTPersistence_create</a></div><div class="ttdeci">int MQTTPersistence_create(MQTTClient_persistence **persistence, int type, void *pcontext)</div><div class="ttdoc">Creates a MQTTClient_persistence structure representing a persistence implementation.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:51</div></div>
  316. <div class="ttc" id="astructMQTTProperty_html_a43389d2bd2814580edc9ea59933cbe25"><div class="ttname"><a href="structMQTTProperty.html#a43389d2bd2814580edc9ea59933cbe25">MQTTProperty::value</a></div><div class="ttdeci">MQTTLenString value</div><div class="ttdoc">The value of a user property.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:104</div></div>
  317. <div class="ttc" id="aThread_8c_html_ab586558bf9d7030f479ca574ea7e55a4"><div class="ttname"><a href="Thread_8c.html#ab586558bf9d7030f479ca574ea7e55a4">Thread_destroy_mutex</a></div><div class="ttdeci">int Thread_destroy_mutex(mutex_type mutex)</div><div class="ttdoc">Destroy a mutex which has already been created.</div><div class="ttdef"><b>Definition:</b> Thread.c:181</div></div>
  318. <div class="ttc" id="aMQTTProtocolClient_8c_html_a447b65c664ebedef8fecb70e29dc1767"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a447b65c664ebedef8fecb70e29dc1767">MQTTStrncpy</a></div><div class="ttdeci">char * MQTTStrncpy(char *dest, const char *src, size_t dest_size)</div><div class="ttdoc">Copy no more than dest_size -1 characters from the string pointed to by src to the array pointed to b...</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:1056</div></div>
  319. <div class="ttc" id="astructAck_html_a7eff67c84b323fc798eb3282b2981069"><div class="ttname"><a href="structAck.html#a7eff67c84b323fc798eb3282b2981069">Ack::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT 5.0 properties.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:220</div></div>
  320. <div class="ttc" id="aMQTTPacket_8c_html_a8886398fbf89872f8e593444d351a5aa"><div class="ttname"><a href="MQTTPacket_8c.html#a8886398fbf89872f8e593444d351a5aa">writeData</a></div><div class="ttdeci">void writeData(char **pptr, const void *data, int datalen)</div><div class="ttdoc">Writes length delimited data to an output buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:482</div></div>
  321. <div class="ttc" id="astructMQTTAsync__SSLOptions_html"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html">MQTTAsync_SSLOptions</a></div><div class="ttdoc">MQTTAsync_sslProperties defines the settings to establish an SSL/TLS connection using the OpenSSL lib...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1068</div></div>
  322. <div class="ttc" id="astructMQTTAsync__failureData5_html_a2f82528951018af0eb73b313b94a470e"><div class="ttname"><a href="structMQTTAsync__failureData5.html#a2f82528951018af0eb73b313b94a470e">MQTTAsync_failureData5::message</a></div><div class="ttdeci">const char * message</div><div class="ttdoc">Optional further text explaining the error.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:562</div></div>
  323. <div class="ttc" id="astructMQTTAsync__willOptions_html_acc521d748a6a9806d8c839075e178a90"><div class="ttname"><a href="structMQTTAsync__willOptions.html#acc521d748a6a9806d8c839075e178a90">MQTTAsync_willOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1023</div></div>
  324. <div class="ttc" id="astructLog__nameValue_html"><div class="ttname"><a href="structLog__nameValue.html">Log_nameValue</a></div><div class="ttdef"><b>Definition:</b> Log.h:77</div></div>
  325. <div class="ttc" id="aMQTTClient_8c_html_a5e0cfa14237d7557bee2a59747ecadd3"><div class="ttname"><a href="MQTTClient_8c.html#a5e0cfa14237d7557bee2a59747ecadd3">MQTTClient_publishMessage</a></div><div class="ttdeci">int MQTTClient_publishMessage(MQTTClient handle, const char *topicName, MQTTClient_message *message, MQTTClient_deliveryToken *deliveryToken)</div><div class="ttdoc">This function attempts to publish a message to a given topic (see also MQTTClient_publish()).</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2508</div></div>
  326. <div class="ttc" id="astructConnack_html_a57f2834e64d4e3ff4f73012491f73f48"><div class="ttname"><a href="structConnack.html#a57f2834e64d4e3ff4f73012491f73f48">Connack::sessionPresent</a></div><div class="ttdeci">bool sessionPresent</div><div class="ttdoc">was a session found on the server?</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:148</div></div>
  327. <div class="ttc" id="astructConnect_html_a525eb0974d4e5b3158808e0bb23f03e6"><div class="ttname"><a href="structConnect.html#a525eb0974d4e5b3158808e0bb23f03e6">Connect::willMsg</a></div><div class="ttdeci">char * willMsg</div><div class="ttdoc">will payload</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:123</div></div>
  328. <div class="ttc" id="aThread_8c_html_afdd152c518f968c777012d7dfb20ef96"><div class="ttname"><a href="Thread_8c.html#afdd152c518f968c777012d7dfb20ef96">Thread_create_cond</a></div><div class="ttdeci">cond_type Thread_create_cond(int *rc)</div><div class="ttdoc">Create a new condition variable.</div><div class="ttdef"><b>Definition:</b> Thread.c:384</div></div>
  329. <div class="ttc" id="astructClients_html_a46550d6ea8cf3480bb754afa56f516d5"><div class="ttname"><a href="structClients.html#a46550d6ea8cf3480bb754afa56f516d5">Clients::connect_count</a></div><div class="ttdeci">int connect_count</div><div class="ttdoc">the number of outbound messages on reconnect - to ensure we send them all</div><div class="ttdef"><b>Definition:</b> Clients.h:140</div></div>
  330. <div class="ttc" id="aHeap_8c_html_a669dfefa789daec52dd8ddc03ff1f9f9"><div class="ttname"><a href="Heap_8c.html#a669dfefa789daec52dd8ddc03ff1f9f9">Heap_terminate</a></div><div class="ttdeci">void Heap_terminate(void)</div><div class="ttdoc">Heap termination.</div><div class="ttdef"><b>Definition:</b> Heap.c:417</div></div>
  331. <div class="ttc" id="astructAckRequest_html"><div class="ttname"><a href="structAckRequest.html">AckRequest</a></div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:61</div></div>
  332. <div class="ttc" id="astructSockets_html_a9e91e6577708542a4aab9c43976f7923"><div class="ttname"><a href="structSockets.html#a9e91e6577708542a4aab9c43976f7923">Sockets::fds_read</a></div><div class="ttdeci">struct pollfd * fds_read</div><div class="ttdoc">poll read file descriptors</div><div class="ttdef"><b>Definition:</b> Socket.h:126</div></div>
  333. <div class="ttc" id="aMQTTClient_8c_html_adbcf69dbaf0a0dcbcc87d23f99e73fca"><div class="ttname"><a href="MQTTClient_8c.html#adbcf69dbaf0a0dcbcc87d23f99e73fca">call_disconnected</a></div><div class="ttdeci">static thread_return_type WINAPI call_disconnected(void *context)</div><div class="ttdoc">Wrapper function to call disconnected on a separate thread.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:738</div></div>
  334. <div class="ttc" id="astructMQTTAsync__successData5_html_ac425dfec67b3245e95a3e415d93ba5bf"><div class="ttname"><a href="structMQTTAsync__successData5.html#ac425dfec67b3245e95a3e415d93ba5bf">MQTTAsync_successData5::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT V5 properties returned, if any.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:608</div></div>
  335. <div class="ttc" id="astructTree_html_a970b46e9c386139ad4fe213c043238e5"><div class="ttname"><a href="structTree.html#a970b46e9c386139ad4fe213c043238e5">Tree::indexes</a></div><div class="ttdeci">int indexes</div><div class="ttdoc">no of indexes into tree</div><div class="ttdef"><b>Definition:</b> Tree.h:83</div></div>
  336. <div class="ttc" id="astructMQTTAsync__successData5_html_a52c4260e2005d2067f3cccc70d7b4758"><div class="ttname"><a href="structMQTTAsync__successData5.html#a52c4260e2005d2067f3cccc70d7b4758">MQTTAsync_successData5::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:604</div></div>
  337. <div class="ttc" id="aMQTTClient_8c_html_a2eeb63b405d9aed880a79b38addf6df7"><div class="ttname"><a href="MQTTClient_8c.html#a2eeb63b405d9aed880a79b38addf6df7">MQTTClient_disconnect1</a></div><div class="ttdeci">static int MQTTClient_disconnect1(MQTTClient handle, int timeout, int internal, int stop, enum MQTTReasonCodes, MQTTProperties *)</div><div class="ttdoc">mqttclient_mutex must be locked when you call this function, if multi threaded</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1909</div></div>
  338. <div class="ttc" id="astructPacketBuffers_html_a9f29c58d295427b93e1e52fa7fd043ce"><div class="ttname"><a href="structPacketBuffers.html#a9f29c58d295427b93e1e52fa7fd043ce">PacketBuffers::mask</a></div><div class="ttdeci">uint8_t mask[4]</div><div class="ttdoc">array of flags indicating whether each buffer needs to be freed</div><div class="ttdef"><b>Definition:</b> Socket.h:105</div></div>
  339. <div class="ttc" id="autf-8_8c_html_ad2012627fca4b4bdd9f67bde49b0d1cb"><div class="ttname"><a href="utf-8_8c.html#ad2012627fca4b4bdd9f67bde49b0d1cb">UTF8_validate</a></div><div class="ttdeci">int UTF8_validate(int len, const char *data)</div><div class="ttdoc">Validate a length-delimited string has only UTF-8 characters.</div><div class="ttdef"><b>Definition:</b> utf-8.c:129</div></div>
  340. <div class="ttc" id="astructPacketBuffers_html"><div class="ttname"><a href="structPacketBuffers.html">PacketBuffers</a></div><div class="ttdef"><b>Definition:</b> Socket.h:99</div></div>
  341. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a99c3f6fd2c5238112a6ae90ce1013f10"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a99c3f6fd2c5238112a6ae90ce1013f10">MQTTAsync_connectOptions::onSuccess</a></div><div class="ttdeci">MQTTAsync_onSuccess * onSuccess</div><div class="ttdoc">A pointer to a callback function to be called if the connect successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1290</div></div>
  342. <div class="ttc" id="astructAck_html_aacfdbab79ac27e1a5ff80bccac4427a9"><div class="ttname"><a href="structAck.html#aacfdbab79ac27e1a5ff80bccac4427a9">Ack::msgId</a></div><div class="ttdeci">int msgId</div><div class="ttdoc">MQTT message id.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:217</div></div>
  343. <div class="ttc" id="aMQTTClient_8c_html_a8ad3d29864a9ca08202b0832e0f6678e"><div class="ttname"><a href="MQTTClient_8c.html#a8ad3d29864a9ca08202b0832e0f6678e">MQTTClient_yield</a></div><div class="ttdeci">void MQTTClient_yield(void)</div><div class="ttdoc">When implementing a single-threaded client, call this function periodically to allow processing of me...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2810</div></div>
  344. <div class="ttc" id="astructMQTTAsync__connectData_html"><div class="ttname"><a href="structMQTTAsync__connectData.html">MQTTAsync_connectData</a></div><div class="ttdoc">The connect options that can be updated before an automatic reconnect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:465</div></div>
  345. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ae772aa4b3707c5c11d6be39f51ec4551"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ae772aa4b3707c5c11d6be39f51ec4551">MQTTAsync_connectOptions::serverURIcount</a></div><div class="ttdeci">int serverURIcount</div><div class="ttdoc">The number of entries in the serverURIs array.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1306</div></div>
  346. <div class="ttc" id="astructMQTTClient__willOptions_html_a09d69c3e208f40ab963dbd0ac2edcd5b"><div class="ttname"><a href="structMQTTClient__willOptions.html#a09d69c3e208f40ab963dbd0ac2edcd5b">MQTTClient_willOptions::retained</a></div><div class="ttdeci">int retained</div><div class="ttdoc">The retained flag for the LWT message (see MQTTClient_message.retained).</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:638</div></div>
  347. <div class="ttc" id="astructMQTTAsync__createOptions_html"><div class="ttname"><a href="structMQTTAsync__createOptions.html">MQTTAsync_createOptions</a></div><div class="ttdoc">Options for the ::MQTTAsync_createWithOptions call.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:960</div></div>
  348. <div class="ttc" id="aSocket_8c_html_a573a6eea727016f3e8770f60e5eed958"><div class="ttname"><a href="Socket_8c.html#a573a6eea727016f3e8770f60e5eed958">Socket_outInitialize</a></div><div class="ttdeci">void Socket_outInitialize(void)</div><div class="ttdoc">Initialize the socket module.</div><div class="ttdef"><b>Definition:</b> Socket.c:130</div></div>
  349. <div class="ttc" id="astructMQTTProperty_html_a64f07dae61291856a24828ff9fd70dd2"><div class="ttname"><a href="structMQTTProperty.html#a64f07dae61291856a24828ff9fd70dd2">MQTTProperty::integer4</a></div><div class="ttdeci">unsigned int integer4</div><div class="ttdoc">holds the value of a 4 byte integer property type</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:101</div></div>
  350. <div class="ttc" id="astructConnect_html_a5274defe9badb8c5e46e7b674c548441"><div class="ttname"><a href="structConnect.html#a5274defe9badb8c5e46e7b674c548441">Connect::keepAliveTimer</a></div><div class="ttdeci">int keepAliveTimer</div><div class="ttdoc">keepalive timeout value in seconds</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:125</div></div>
  351. <div class="ttc" id="aThread_8c_html_acd23266878de6faaee0a972ef74c4db6"><div class="ttname"><a href="Thread_8c.html#acd23266878de6faaee0a972ef74c4db6">Thread_wait_cond</a></div><div class="ttdeci">int Thread_wait_cond(cond_type condvar, int timeout_ms)</div><div class="ttdoc">Wait with a timeout (ms) for condition variable.</div><div class="ttdef"><b>Definition:</b> Thread.c:435</div></div>
  352. <div class="ttc" id="astructMQTTAsync__willOptions_html_a19983de96d2ae2df35c588e36200374e"><div class="ttname"><a href="structMQTTAsync__willOptions.html#a19983de96d2ae2df35c588e36200374e">MQTTAsync_willOptions::topicName</a></div><div class="ttdeci">const char * topicName</div><div class="ttdoc">The LWT topic to which the LWT message will be published.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1029</div></div>
  353. <div class="ttc" id="aMQTTPacket_8c_html_a4262b8f35885dc123f59268fb74cec3d"><div class="ttname"><a href="MQTTPacket_8c.html#a4262b8f35885dc123f59268fb74cec3d">MQTTPacket_freeSuback</a></div><div class="ttdeci">void MQTTPacket_freeSuback(Suback *pack)</div><div class="ttdoc">Free allocated storage for a suback packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:695</div></div>
  354. <div class="ttc" id="aThread_8c_html_a216e79bc196440343aa802dfad8dc38b"><div class="ttname"><a href="Thread_8c.html#a216e79bc196440343aa802dfad8dc38b">Thread_getid</a></div><div class="ttdeci">thread_id_type Thread_getid(void)</div><div class="ttdoc">Get the thread id of the thread from which this function is called.</div><div class="ttdef"><b>Definition:</b> Thread.c:201</div></div>
  355. <div class="ttc" id="astructPublications_html"><div class="ttname"><a href="structPublications.html">Publications</a></div><div class="ttdoc">Stored publication data to minimize copying.</div><div class="ttdef"><b>Definition:</b> Clients.h:41</div></div>
  356. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a3aef9f9af29882fac9e76984e4c2954c"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a3aef9f9af29882fac9e76984e4c2954c">pstget</a></div><div class="ttdeci">int pstget(void *handle, char *key, char **buffer, int *buflen)</div><div class="ttdoc">Retrieve a wire message from the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:257</div></div>
  357. <div class="ttc" id="astructMQTTClient__willOptions_html"><div class="ttname"><a href="structMQTTClient__willOptions.html">MQTTClient_willOptions</a></div><div class="ttdoc">MQTTClient_willOptions defines the MQTT &quot;Last Will and Testament&quot; (LWT) settings for the client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:623</div></div>
  358. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_ac1b1a5ae74a807d672b5d44c7ecc4a9b"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#ac1b1a5ae74a807d672b5d44c7ecc4a9b">MQTTAsync_SSLOptions::keyStore</a></div><div class="ttdeci">const char * keyStore</div><div class="ttdoc">The file in PEM format containing the public certificate chain of the client.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1088</div></div>
  359. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a931062a739a44b9879bb181514070d75"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a931062a739a44b9879bb181514070d75">MQTTClient_SSLOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:674</div></div>
  360. <div class="ttc" id="astructMQTTAsync__successData5_html_abe4fb1e0907a7a1e77fdb6851879b605"><div class="ttname"><a href="structMQTTAsync__successData5.html#abe4fb1e0907a7a1e77fdb6851879b605">MQTTAsync_successData5::reasonCodes</a></div><div class="ttdeci">enum MQTTReasonCodes * reasonCodes</div><div class="ttdoc">an array of reasonCodes</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:616</div></div>
  361. <div class="ttc" id="aMQTTClient_8c_html_a46bdb532d2153110ccffb2f0748d1ba5"><div class="ttname"><a href="MQTTClient_8c.html#a46bdb532d2153110ccffb2f0748d1ba5">MQTTClient_unsubscribeMany5</a></div><div class="ttdeci">MQTTResponse MQTTClient_unsubscribeMany5(MQTTClient handle, int count, char *const *topic, MQTTProperties *props)</div><div class="ttdoc">This function attempts to remove existing subscriptions to a list of topics made by the specified cli...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2188</div></div>
  362. <div class="ttc" id="aThread_8c_html_ad327c467c568b27be4c3676fc698e129"><div class="ttname"><a href="Thread_8c.html#ad327c467c568b27be4c3676fc698e129">Thread_check_sem</a></div><div class="ttdeci">int Thread_check_sem(sem_type sem)</div><div class="ttdoc">Check to see if a semaphore has been posted, without waiting The semaphore will be unchanged,...</div><div class="ttdef"><b>Definition:</b> Thread.c:311</div></div>
  363. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ab1def8c5155a84603d6827664d59537c"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ab1def8c5155a84603d6827664d59537c">MQTTAsync_connectOptions::context</a></div><div class="ttdeci">void * context</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1302</div></div>
  364. <div class="ttc" id="astructPublish_html"><div class="ttname"><a href="structPublish.html">Publish</a></div><div class="ttdoc">Data for a publish packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:197</div></div>
  365. <div class="ttc" id="aMQTTClient_8c_html_ae54936bf7680dcde353e6fc785a44461"><div class="ttname"><a href="MQTTClient_8c.html#ae54936bf7680dcde353e6fc785a44461">MQTTClient_publishMessage5</a></div><div class="ttdeci">MQTTResponse MQTTClient_publishMessage5(MQTTClient handle, const char *topicName, MQTTClient_message *message, MQTTClient_deliveryToken *deliveryToken)</div><div class="ttdoc">Attempts to publish a message to the given topic using MQTT version 5.0 (see also MQTTClient_publish5...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2477</div></div>
  366. <div class="ttc" id="astructTree_html_a784563aee04c7123724fceb5d56a0e6a"><div class="ttname"><a href="structTree.html#a784563aee04c7123724fceb5d56a0e6a">Tree::size</a></div><div class="ttdeci">size_t size</div><div class="ttdoc">heap storage used</div><div class="ttdef"><b>Definition:</b> Tree.h:85</div></div>
  367. <div class="ttc" id="astructMQTTAsync__responseOptions_html"><div class="ttname"><a href="structMQTTAsync__responseOptions.html">MQTTAsync_responseOptions</a></div><div class="ttdoc">Structure to define call options.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:708</div></div>
  368. <div class="ttc" id="aClients_8c_html_a82dc4e265fecdaea2810ccdeab0abf52"><div class="ttname"><a href="Clients_8c.html#a82dc4e265fecdaea2810ccdeab0abf52">clientSocketCompare</a></div><div class="ttdeci">int clientSocketCompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing clients by socket.</div><div class="ttdef"><b>Definition:</b> Clients.c:50</div></div>
  369. <div class="ttc" id="astructMQTTClient__connectOptions_html"><div class="ttname"><a href="structMQTTClient__connectOptions.html">MQTTClient_connectOptions</a></div><div class="ttdoc">MQTTClient_connectOptions defines several settings that control the way the client connects to an MQT...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:824</div></div>
  370. <div class="ttc" id="aMQTTClient_8c_html_a9c1c28258f0d5c6a44ff53a98618f5f3"><div class="ttname"><a href="MQTTClient_8c.html#a9c1c28258f0d5c6a44ff53a98618f5f3">MQTTClient_subscribe</a></div><div class="ttdeci">int MQTTClient_subscribe(MQTTClient handle, const char *topic, int qos)</div><div class="ttdoc">This function attempts to subscribe a client to a single topic, which may contain wildcards (see wild...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2174</div></div>
  371. <div class="ttc" id="aMQTTProtocolClient_8c_html_afbf121be11a48fcda3e0d639bc47472b"><div class="ttname"><a href="MQTTProtocolClient_8c.html#afbf121be11a48fcda3e0d639bc47472b">MQTTProtocol_createMessage</a></div><div class="ttdeci">Messages * MQTTProtocol_createMessage(Publish *publish, Messages **mm, int qos, int retained, int allocatePayload)</div><div class="ttdoc">Copy and store message data for retries.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:206</div></div>
  372. <div class="ttc" id="aMQTTProtocolOut_8c_html_ad298c92c74b5f1acda774fc95e3d61c3"><div class="ttname"><a href="MQTTProtocolOut_8c.html#ad298c92c74b5f1acda774fc95e3d61c3">MQTTProtocol_handlePingresps</a></div><div class="ttdeci">int MQTTProtocol_handlePingresps(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming pingresp packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:365</div></div>
  373. <div class="ttc" id="aMQTTClient_8c_html_a6e8231e8c47f6f67f7ebbb5dcb4c69c0"><div class="ttname"><a href="MQTTClient_8c.html#a6e8231e8c47f6f67f7ebbb5dcb4c69c0">MQTTClient_isConnected</a></div><div class="ttdeci">int MQTTClient_isConnected(MQTTClient handle)</div><div class="ttdoc">This function allows the client application to test whether or not a client is currently connected to...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1993</div></div>
  374. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a04c88f4a4aba7ca2cfbd9ee5455f0850"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a04c88f4a4aba7ca2cfbd9ee5455f0850">MQTTAsync_connectOptions::ssl</a></div><div class="ttdeci">MQTTAsync_SSLOptions * ssl</div><div class="ttdoc">This is a pointer to an MQTTAsync_SSLOptions structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1284</div></div>
  375. <div class="ttc" id="astructMQTTAsync__failureData_html_a13f03bf80fd0024437af833d0964304d"><div class="ttname"><a href="structMQTTAsync__failureData.html#a13f03bf80fd0024437af833d0964304d">MQTTAsync_failureData::message</a></div><div class="ttdeci">const char * message</div><div class="ttdoc">Optional text explaining the error.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:542</div></div>
  376. <div class="ttc" id="aSocketBuffer_8c_html_aa8b85db4dca13d13c2b7fc704420323a"><div class="ttname"><a href="SocketBuffer_8c.html#aa8b85db4dca13d13c2b7fc704420323a">queues</a></div><div class="ttdeci">static List * queues</div><div class="ttdoc">List of queued input buffers.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:50</div></div>
  377. <div class="ttc" id="astructpending__writes_html"><div class="ttname"><a href="structpending__writes.html">pending_writes</a></div><div class="ttdef"><b>Definition:</b> SocketBuffer.h:44</div></div>
  378. <div class="ttc" id="aMQTTClient_8c_html_a9f7b0789ff9ca9ded72dbad2e747b333"><div class="ttname"><a href="MQTTClient_8c.html#a9f7b0789ff9ca9ded72dbad2e747b333">MQTTProtocol_closeSession</a></div><div class="ttdeci">void MQTTProtocol_closeSession(Clients *c, int sendwill)</div><div class="ttdoc">mqttclient_mutex must be locked when you call this function, if multi threaded</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1965</div></div>
  379. <div class="ttc" id="astructClients_html_a3ead27f8653d4866faed5d7b711159d1"><div class="ttname"><a href="structClients.html#a3ead27f8653d4866faed5d7b711159d1">Clients::sessionExpiry</a></div><div class="ttdeci">int sessionExpiry</div><div class="ttdoc">MQTT 5 session expiry.</div><div class="ttdef"><b>Definition:</b> Clients.h:153</div></div>
  380. <div class="ttc" id="astructMQTTAsync__createOptions_html_a7142a01ee58f39a950f8627c4bb05318"><div class="ttname"><a href="structMQTTAsync__createOptions.html#a7142a01ee58f39a950f8627c4bb05318">MQTTAsync_createOptions::sendWhileDisconnected</a></div><div class="ttdeci">int sendWhileDisconnected</div><div class="ttdoc">Whether to allow messages to be sent when the client library is not connected.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:971</div></div>
  381. <div class="ttc" id="astructMQTTAsync__successData_html_a2803f7c3e77845d14d7d54004b6c16f9"><div class="ttname"><a href="structMQTTAsync__successData.html#a2803f7c3e77845d14d7d54004b6c16f9">MQTTAsync_successData::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT being used</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:593</div></div>
  382. <div class="ttc" id="aSocketBuffer_8c_html_a913f78789f0cbfb26a5dcf6618d51d87"><div class="ttname"><a href="SocketBuffer_8c.html#a913f78789f0cbfb26a5dcf6618d51d87">writes</a></div><div class="ttdeci">static List writes</div><div class="ttdoc">List of queued write buffers.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:55</div></div>
  383. <div class="ttc" id="aMQTTClient_8c_html_ab217acbfaf47603355ca430983f93095"><div class="ttname"><a href="MQTTClient_8c.html#ab217acbfaf47603355ca430983f93095">MQTTClient_free</a></div><div class="ttdeci">void MQTTClient_free(void *memory)</div><div class="ttdoc">This function frees memory allocated by the MQTT C client library, especially the topic name.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:639</div></div>
  384. <div class="ttc" id="astructMQTTPersistence__message_html"><div class="ttname"><a href="structMQTTPersistence__message.html">MQTTPersistence_message</a></div><div class="ttdef"><b>Definition:</b> MQTTPersistence.h:71</div></div>
  385. <div class="ttc" id="aMQTTPacketOut_8c_html_a49e8e6789e17a29f5a448b8fab0a4137"><div class="ttname"><a href="MQTTPacketOut_8c.html#a49e8e6789e17a29f5a448b8fab0a4137">MQTTPacket_freeConnack</a></div><div class="ttdeci">void MQTTPacket_freeConnack(Connack *pack)</div><div class="ttdoc">Free allocated storage for a connack packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:185</div></div>
  386. <div class="ttc" id="aHeap_8c_html_aafff91620a02cc5f8160ee55dc1d7bf4"><div class="ttname"><a href="Heap_8c.html#aafff91620a02cc5f8160ee55dc1d7bf4">HeapScan</a></div><div class="ttdeci">static void HeapScan(enum LOG_LEVELS log_level)</div><div class="ttdoc">Scans the heap and reports any items currently allocated.</div><div class="ttdef"><b>Definition:</b> Heap.c:383</div></div>
  387. <div class="ttc" id="aTree_8c_html_aa5ee1e466d266b289dc45cbd97116b83"><div class="ttname"><a href="Tree_8c.html#aa5ee1e466d266b289dc45cbd97116b83">TreeInitialize</a></div><div class="ttdeci">Tree * TreeInitialize(int(*compare)(void *, void *, int))</div><div class="ttdoc">Allocates and initializes a new tree structure.</div><div class="ttdef"><b>Definition:</b> Tree.c:65</div></div>
  388. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ad10d2f263a6802ec6a3a74e0cf9a7453"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ad10d2f263a6802ec6a3a74e0cf9a7453">MQTTAsync_connectOptions::connectProperties</a></div><div class="ttdeci">MQTTProperties * connectProperties</div><div class="ttdoc">MQTT V5 properties for connect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1352</div></div>
  389. <div class="ttc" id="autf-8_8c_html_a03bdcd5f0e47e86161d8f8a6e6d2ed1d"><div class="ttname"><a href="utf-8_8c.html#a03bdcd5f0e47e86161d8f8a6e6d2ed1d">valid_ranges</a></div><div class="ttdeci">struct @34 valid_ranges[]</div><div class="ttdoc">Structure to hold the valid ranges of UTF-8 characters, for each byte up to 4.</div></div>
  390. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a38ecc397cbe9e2042b77c7a52c9ccc35"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a38ecc397cbe9e2042b77c7a52c9ccc35">MQTTClient_SSLOptions::ssl_psk_cb</a></div><div class="ttdeci">unsigned int(* ssl_psk_cb)(const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len, void *u)</div><div class="ttdoc">Callback function for setting TLS-PSK options.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:751</div></div>
  391. <div class="ttc" id="aMQTTClient_8c_html_a4dfa35d29db54b10b15b8ac2d9a778be"><div class="ttname"><a href="MQTTClient_8c.html#a4dfa35d29db54b10b15b8ac2d9a778be">MQTTClient_setTraceLevel</a></div><div class="ttdeci">void MQTTClient_setTraceLevel(enum MQTTCLIENT_TRACE_LEVELS level)</div><div class="ttdoc">This function sets the level of trace information which will be returned in the trace callback.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2935</div></div>
  392. <div class="ttc" id="astructTree_html_a4098c257d75639b6775553b27e13bbfd"><div class="ttname"><a href="structTree.html#a4098c257d75639b6775553b27e13bbfd">Tree::allow_duplicates</a></div><div class="ttdeci">unsigned int allow_duplicates</div><div class="ttdoc">switch to allow duplicate entries</div><div class="ttdef"><b>Definition:</b> Tree.h:87</div></div>
  393. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ac4addd2c4614cfc12c9dd7e199a989ff"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ac4addd2c4614cfc12c9dd7e199a989ff">MQTTAsync_connectOptions::cleansession</a></div><div class="ttdeci">int cleansession</div><div class="ttdoc">This is a boolean value.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1245</div></div>
  394. <div class="ttc" id="astructMQTTClient__persistence_html_a0f7846e9b4118a7a63702c504f4c8e9d"><div class="ttname"><a href="structMQTTClient__persistence.html#a0f7846e9b4118a7a63702c504f4c8e9d">MQTTClient_persistence::pput</a></div><div class="ttdeci">Persistence_put pput</div><div class="ttdoc">A function pointer to an implementation of Persistence_put().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:231</div></div>
  395. <div class="ttc" id="astructMQTTAsync__failureData5_html_a42afb6bf2c55f9830dc1d0984b251019"><div class="ttname"><a href="structMQTTAsync__failureData5.html#a42afb6bf2c55f9830dc1d0984b251019">MQTTAsync_failureData5::reasonCode</a></div><div class="ttdeci">enum MQTTReasonCodes reasonCode</div><div class="ttdoc">The MQTT reason code returned.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:556</div></div>
  396. <div class="ttc" id="aTree_8c_html_a1263bdfc6a906db3023ca1a6ad5302a4"><div class="ttname"><a href="Tree_8c.html#a1263bdfc6a906db3023ca1a6ad5302a4">TreeRemoveIndex</a></div><div class="ttdeci">void * TreeRemoveIndex(Tree *aTree, void *content, int index)</div><div class="ttdoc">Remove an item from a tree.</div><div class="ttdef"><b>Definition:</b> Tree.c:487</div></div>
  397. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a61dd2a56858da45451f45640b056189d"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a61dd2a56858da45451f45640b056189d">MQTTClient_SSLOptions::verify</a></div><div class="ttdeci">int verify</div><div class="ttdoc">Whether to carry out post-connect checks, including that a certificate matches the given host name.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:725</div></div>
  398. <div class="ttc" id="astructMQTTClient__connectOptions_html_a4e6be3b2292800db30c65dd66af85976"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a4e6be3b2292800db30c65dd66af85976">MQTTClient_connectOptions::ssl</a></div><div class="ttdeci">MQTTClient_SSLOptions * ssl</div><div class="ttdoc">This is a pointer to an MQTTClient_SSLOptions structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:915</div></div>
  399. <div class="ttc" id="aMQTTPersistence_8c_html_aba48f1a44c540fa37bca207cae3cbbd3"><div class="ttname"><a href="MQTTPersistence_8c.html#aba48f1a44c540fa37bca207cae3cbbd3">MQTTPersistence_remove</a></div><div class="ttdeci">int MQTTPersistence_remove(Clients *c, char *type, int qos, int msgId)</div><div class="ttdoc">Deletes a record from the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:533</div></div>
  400. <div class="ttc" id="astructSockets_html_a9bee5974437201a4b7728955de2ebd50"><div class="ttname"><a href="structSockets.html#a9bee5974437201a4b7728955de2ebd50">Sockets::nfds</a></div><div class="ttdeci">unsigned int nfds</div><div class="ttdoc">no of file descriptors for poll</div><div class="ttdef"><b>Definition:</b> Socket.h:125</div></div>
  401. <div class="ttc" id="astructtrace__settings__type_html_acecf92991c3008b020b44f44f661f03f"><div class="ttname"><a href="structtrace__settings__type.html#acecf92991c3008b020b44f44f661f03f">trace_settings_type::max_trace_entries</a></div><div class="ttdeci">int max_trace_entries</div><div class="ttdoc">max no of entries in the trace buffer</div><div class="ttdef"><b>Definition:</b> Log.h:66</div></div>
  402. <div class="ttc" id="astructMQTTClient__willOptions_html_abfa72c814f19cbd87bf777da96ff2860"><div class="ttname"><a href="structMQTTClient__willOptions.html#abfa72c814f19cbd87bf777da96ff2860">MQTTClient_willOptions::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">binary payload length</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:647</div></div>
  403. <div class="ttc" id="autf-8_8c_html_a17ae1b83727db4230c8df98b4ee953fc"><div class="ttname"><a href="utf-8_8c.html#a17ae1b83727db4230c8df98b4ee953fc">lower</a></div><div class="ttdeci">char lower</div><div class="ttdoc">lower limit of valid range</div><div class="ttdef"><b>Definition:</b> utf-8.c:49</div></div>
  404. <div class="ttc" id="astructList_html_a7d50f0a95a04faab8c250bc6ea28a67d"><div class="ttname"><a href="structList.html#a7d50f0a95a04faab8c250bc6ea28a67d">List::count</a></div><div class="ttdeci">int count</div><div class="ttdoc">no of items</div><div class="ttdef"><b>Definition:</b> LinkedList.h:72</div></div>
  405. <div class="ttc" id="astructMQTTAsync__message_html"><div class="ttname"><a href="structMQTTAsync__message.html">MQTTAsync_message</a></div><div class="ttdoc">A structure representing the payload and attributes of an MQTT message.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:271</div></div>
  406. <div class="ttc" id="astructsocket__queue_html"><div class="ttname"><a href="structsocket__queue.html">socket_queue</a></div><div class="ttdef"><b>Definition:</b> SocketBuffer.h:33</div></div>
  407. <div class="ttc" id="astructMQTTClient__message_html_abbb5f23377bd9f39cc79756786fa45cc"><div class="ttname"><a href="structMQTTClient__message.html#abbb5f23377bd9f39cc79756786fa45cc">MQTTClient_message::dup</a></div><div class="ttdeci">int dup</div><div class="ttdoc">The dup flag indicates whether or not this message is a duplicate.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:321</div></div>
  408. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a8d78996c4b349f10196450fe9900b943"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a8d78996c4b349f10196450fe9900b943">MQTTAsync_disconnectOptions::onFailure5</a></div><div class="ttdeci">MQTTAsync_onFailure5 * onFailure5</div><div class="ttdoc">A pointer to a callback function to be called if the disconnect fails.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1475</div></div>
  409. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a5214f2bfb8c6571c231792bb9560b00b"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a5214f2bfb8c6571c231792bb9560b00b">MQTTAsync_SSLOptions::ssl_error_cb</a></div><div class="ttdeci">int(* ssl_error_cb)(const char *str, size_t len, void *u)</div><div class="ttdoc">Callback function for OpenSSL error handler ERR_print_errors_cb Exists only if struct_version &gt;= 3.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1135</div></div>
  410. <div class="ttc" id="astructMQTTAsync__successData_html_afd00f6f09b4cd92b5815202fc339be68"><div class="ttname"><a href="structMQTTAsync__successData.html#afd00f6f09b4cd92b5815202fc339be68">MQTTAsync_successData::token</a></div><div class="ttdeci">MQTTAsync_token token</div><div class="ttdoc">A token identifying the successful request.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:573</div></div>
  411. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a6ccefb9910bc96b326298c0db67ce185"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a6ccefb9910bc96b326298c0db67ce185">MQTTAsync_SSLOptions::ssl_psk_cb</a></div><div class="ttdeci">unsigned int(* ssl_psk_cb)(const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len, void *u)</div><div class="ttdoc">Callback function for setting TLS-PSK options.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1148</div></div>
  412. <div class="ttc" id="aThread_8c_html_a7b0d40dc1603a6e93db0ee970bb6750f"><div class="ttname"><a href="Thread_8c.html#a7b0d40dc1603a6e93db0ee970bb6750f">Thread_signal_cond</a></div><div class="ttdeci">int Thread_signal_cond(cond_type condvar)</div><div class="ttdoc">Signal a condition variable.</div><div class="ttdef"><b>Definition:</b> Thread.c:418</div></div>
  413. <div class="ttc" id="astructMQTTClient__init__options_html"><div class="ttname"><a href="structMQTTClient__init__options.html">MQTTClient_init_options</a></div><div class="ttdoc">Initialization options.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:229</div></div>
  414. <div class="ttc" id="astructConnack_html_af532b37a9b73aaf2254d9e5789814d71"><div class="ttname"><a href="structConnack.html#af532b37a9b73aaf2254d9e5789814d71">Connack::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:135</div></div>
  415. <div class="ttc" id="aLinkedList_8c_html_a936806c4b6f6c10d91cc128b63ab110c"><div class="ttname"><a href="LinkedList_8c.html#a936806c4b6f6c10d91cc128b63ab110c">stringcompare</a></div><div class="ttdeci">int stringcompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing C strings.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:448</div></div>
  416. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a52a773222e567d8480c85b6a27bf36f2"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a52a773222e567d8480c85b6a27bf36f2">MQTTAsync_connectOptions::password</a></div><div class="ttdeci">const char * password</div><div class="ttdoc">MQTT servers that support the MQTT v3.1 protocol provide authentication and authorisation by user nam...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1267</div></div>
  417. <div class="ttc" id="astructMQTTAsync__connectData_html_a34da6971227839d7ae96394a8bb2c31c"><div class="ttname"><a href="structMQTTAsync__connectData.html#a34da6971227839d7ae96394a8bb2c31c">MQTTAsync_connectData::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">binary password length</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:484</div></div>
  418. <div class="ttc" id="aHeap_8c_html_a45db32d4f454f94d7f4574deced5ee33"><div class="ttname"><a href="Heap_8c.html#a45db32d4f454f94d7f4574deced5ee33">ptrCompare</a></div><div class="ttdeci">static int ptrCompare(void *a, void *b, int value)</div><div class="ttdoc">List callback function for comparing storage elements.</div><div class="ttdef"><b>Definition:</b> Heap.c:114</div></div>
  419. <div class="ttc" id="astructUnsuback_html_ac5fabab5aa00869b6ef4901cb4849122"><div class="ttname"><a href="structUnsuback.html#ac5fabab5aa00869b6ef4901cb4849122">Unsuback::reasonCodes</a></div><div class="ttdeci">List * reasonCodes</div><div class="ttdoc">list of reason codes</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:190</div></div>
  420. <div class="ttc" id="astructConnect_html_a0c84bf238adaf04ea32a2b759247d80a"><div class="ttname"><a href="structConnect.html#a0c84bf238adaf04ea32a2b759247d80a">Connect::flags</a></div><div class="ttdeci">union Connect::@21 flags</div><div class="ttdoc">connect flags byte</div></div>
  421. <div class="ttc" id="astructMQTTClient__connectOptions_html_a198e91c4adb81b5851cbd5c2eb14424e"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a198e91c4adb81b5851cbd5c2eb14424e">MQTTClient_connectOptions::returned</a></div><div class="ttdeci">struct MQTTClient_connectOptions::@18 returned</div><div class="ttdoc">Returned from the connect when the MQTT version used to connect is 3.1.1.</div></div>
  422. <div class="ttc" id="aSocket_8c_html_a8fac284bb799c180ef68bb5c7b4b1df4"><div class="ttname"><a href="Socket_8c.html#a8fac284bb799c180ef68bb5c7b4b1df4">Socket_putdatas</a></div><div class="ttdeci">int Socket_putdatas(SOCKET socket, char *buf0, size_t buf0len, PacketBuffers bufs)</div><div class="ttdoc">Attempts to write a series of buffers to a socket in one system call so that they are sent as one pac...</div><div class="ttdef"><b>Definition:</b> Socket.c:762</div></div>
  423. <div class="ttc" id="astructMQTTAsync__failureData_html_acbdff200c2c6ac593c88cd0b677921e2"><div class="ttname"><a href="structMQTTAsync__failureData.html#acbdff200c2c6ac593c88cd0b677921e2">MQTTAsync_failureData::code</a></div><div class="ttdeci">int code</div><div class="ttdoc">A numeric code identifying the error.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:540</div></div>
  424. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a4a6dffebf9a6f4ffb9fe2a5d949d8090"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a4a6dffebf9a6f4ffb9fe2a5d949d8090">MQTTAsync_responseOptions::onSuccess</a></div><div class="ttdeci">MQTTAsync_onSuccess * onSuccess</div><div class="ttdoc">A pointer to a callback function to be called if the API call successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:720</div></div>
  425. <div class="ttc" id="astructMQTTClient__willOptions_html_a9273da2e77ed9b60b018b43c8d868d47"><div class="ttname"><a href="structMQTTClient__willOptions.html#a9273da2e77ed9b60b018b43c8d868d47">MQTTClient_willOptions::topicName</a></div><div class="ttdeci">const char * topicName</div><div class="ttdoc">The LWT topic to which the LWT message will be published.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:632</div></div>
  426. <div class="ttc" id="astructMQTTAsync__successData_html_af12fc9f6b7a42449f8299e5a8e4f0e7e"><div class="ttname"><a href="structMQTTAsync__successData.html#af12fc9f6b7a42449f8299e5a8e4f0e7e">MQTTAsync_successData::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">For subscribe, the granted QoS of the subscription returned by the server.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:579</div></div>
  427. <div class="ttc" id="aHeap_8c_html_a20faecf28cdd9d2fbf7d975c5b0863ef"><div class="ttname"><a href="Heap_8c.html#a20faecf28cdd9d2fbf7d975c5b0863ef">Heap_get_info</a></div><div class="ttdeci">heap_info * Heap_get_info(void)</div><div class="ttdoc">Access to heap state.</div><div class="ttdef"><b>Definition:</b> Heap.c:432</div></div>
  428. <div class="ttc" id="aSocket_8c_html_af10088907080a5c517ee23ac022f6538"><div class="ttname"><a href="Socket_8c.html#af10088907080a5c517ee23ac022f6538">Socket_getpeer</a></div><div class="ttdeci">char * Socket_getpeer(SOCKET sock)</div><div class="ttdoc">Get information about the other end connected to a socket.</div><div class="ttdef"><b>Definition:</b> Socket.c:1469</div></div>
  429. <div class="ttc" id="astructMQTTAsync__willOptions_html_add4a18313308fec634c69842f6ab9809"><div class="ttname"><a href="structMQTTAsync__willOptions.html#add4a18313308fec634c69842f6ab9809">MQTTAsync_willOptions::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">The quality of service setting for the LWT message (see MQTTAsync_message.qos and qos).</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1040</div></div>
  430. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a4583779998f6b3b51c7c1d3226701a4c"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a4583779998f6b3b51c7c1d3226701a4c">MQTTClient_SSLOptions::trustStore</a></div><div class="ttdeci">const char * trustStore</div><div class="ttdoc">The file in PEM format containing the public digital certificates trusted by the client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:686</div></div>
  431. <div class="ttc" id="astructConnect_html_a0810709a016db0b8be49fc6f859bab39"><div class="ttname"><a href="structConnect.html#a0810709a016db0b8be49fc6f859bab39">Connect::willRetain</a></div><div class="ttdeci">bool willRetain</div><div class="ttdoc">will retain setting</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:113</div></div>
  432. <div class="ttc" id="aMQTTClient_8c_html_af35ab7375435f7b6388c5ff4610dad3d"><div class="ttname"><a href="MQTTClient_8c.html#af35ab7375435f7b6388c5ff4610dad3d">MQTTClient_subscribe5</a></div><div class="ttdeci">MQTTResponse MQTTClient_subscribe5(MQTTClient handle, const char *topic, int qos, MQTTSubscribe_options *opts, MQTTProperties *props)</div><div class="ttdoc">This function attempts to subscribe an MQTT version 5.0 client to a single topic, which may contain w...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2160</div></div>
  433. <div class="ttc" id="astructMQTTClient__SSLOptions_html_aab300df31cebc087303c4e5b8071e12c"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#aab300df31cebc087303c4e5b8071e12c">MQTTClient_SSLOptions::keyStore</a></div><div class="ttdeci">const char * keyStore</div><div class="ttdoc">The file in PEM format containing the public certificate chain of the client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:691</div></div>
  434. <div class="ttc" id="astructAck_html_a542acd6ed107a1dfffd225b668c0d961"><div class="ttname"><a href="structAck.html#a542acd6ed107a1dfffd225b668c0d961">Ack::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:219</div></div>
  435. <div class="ttc" id="astructMQTTClient__connectOptions_html_acd6367d7a402e7b668f8ec9760cd42c8"><div class="ttname"><a href="structMQTTClient__connectOptions.html#acd6367d7a402e7b668f8ec9760cd42c8">MQTTClient_connectOptions::reliable</a></div><div class="ttdeci">int reliable</div><div class="ttdoc">This is a boolean value that controls how many messages can be in-flight simultaneously.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:880</div></div>
  436. <div class="ttc" id="aMQTTClientPersistence_8h_html_aaa948291718a9c06369b854b0f64bc32"><div class="ttname"><a href="MQTTClientPersistence_8h.html#aaa948291718a9c06369b854b0f64bc32">MQTTCLIENT_PERSISTENCE_DEFAULT</a></div><div class="ttdeci">#define MQTTCLIENT_PERSISTENCE_DEFAULT</div><div class="ttdoc">This persistence_type value specifies the default file system-based persistence mechanism (see MQTTCl...</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:69</div></div>
  437. <div class="ttc" id="astructMQTTClient__connectOptions_html_a03a2cfaf17483f1b0aab2a70f3ef30d9"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a03a2cfaf17483f1b0aab2a70f3ef30d9">MQTTClient_connectOptions::cleansession</a></div><div class="ttdeci">int cleansession</div><div class="ttdoc">This is a boolean value.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:870</div></div>
  438. <div class="ttc" id="astructMQTTAsync__connectData_html_a3a5188d10f6aab79d85d0468a56e5033"><div class="ttname"><a href="structMQTTAsync__connectData.html#a3a5188d10f6aab79d85d0468a56e5033">MQTTAsync_connectData::data</a></div><div class="ttdeci">const void * data</div><div class="ttdoc">binary password data</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:485</div></div>
  439. <div class="ttc" id="astructtrace__settings__type_html_a169138f5e03c0408ca30820418dcf186"><div class="ttname"><a href="structtrace__settings__type.html#a169138f5e03c0408ca30820418dcf186">trace_settings_type::trace_level</a></div><div class="ttdeci">enum LOG_LEVELS trace_level</div><div class="ttdoc">trace level</div><div class="ttdef"><b>Definition:</b> Log.h:65</div></div>
  440. <div class="ttc" id="astructSockets_html_ac1b74c5f7fd463159318d2ef3c8fcee6"><div class="ttname"><a href="structSockets.html#ac1b74c5f7fd463159318d2ef3c8fcee6">Sockets::connect_pending</a></div><div class="ttdeci">List * connect_pending</div><div class="ttdoc">list of sockets for which a connect is pending</div><div class="ttdef"><b>Definition:</b> Socket.h:114</div></div>
  441. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_aa3af8ec1e7dd0f3921cb5eaddffe955d"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#aa3af8ec1e7dd0f3921cb5eaddffe955d">MQTTAsync_SSLOptions::ssl_error_context</a></div><div class="ttdeci">void * ssl_error_context</div><div class="ttdoc">Application-specific contex for OpenSSL error handler ERR_print_errors_cb Exists only if struct_versi...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1141</div></div>
  442. <div class="ttc" id="aunionHeader_html_ae74f40c0e3656880e35ee93e79331f84"><div class="ttname"><a href="unionHeader.html#ae74f40c0e3656880e35ee93e79331f84">Header::qos</a></div><div class="ttdeci">unsigned int qos</div><div class="ttdoc">QoS value, 0, 1 or 2.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:78</div></div>
  443. <div class="ttc" id="aunionHeader_html_a05b7c9c6b02e41c54899caee9fdd50d6"><div class="ttname"><a href="unionHeader.html#a05b7c9c6b02e41c54899caee9fdd50d6">Header::type</a></div><div class="ttdeci">unsigned int type</div><div class="ttdoc">message type nibble</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:80</div></div>
  444. <div class="ttc" id="aMQTTPersistence_8c_html_a568adcd6ad3542d6f631a7f7a2e682e5"><div class="ttname"><a href="MQTTPersistence_8c.html#a568adcd6ad3542d6f631a7f7a2e682e5">MQTTPersistence_insertInOrder</a></div><div class="ttdeci">void MQTTPersistence_insertInOrder(List *list, void *content, size_t size)</div><div class="ttdoc">Inserts the specified message into the list, maintaining message ID order.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:401</div></div>
  445. <div class="ttc" id="aMQTTClientPersistence_8h_html_a2601cc91eeabdbf9578f8dd45e4997a8"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a2601cc91eeabdbf9578f8dd45e4997a8">Persistence_keys</a></div><div class="ttdeci">int(* Persistence_keys)(void *handle, char ***keys, int *nkeys)</div><div class="ttdoc">Returns the keys in this persistent data store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:186</div></div>
  446. <div class="ttc" id="astructMQTTAsync__message_html_aa9da73253863089ee90033c7f0dd28bf"><div class="ttname"><a href="structMQTTAsync__message.html#aa9da73253863089ee90033c7f0dd28bf">MQTTAsync_message::dup</a></div><div class="ttdeci">int dup</div><div class="ttdoc">The dup flag indicates whether or not this message is a duplicate.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:321</div></div>
  447. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a7719db20d0649fd1bd0edc239c289cdb"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a7719db20d0649fd1bd0edc239c289cdb">MQTTAsync_disconnectOptions::onFailure</a></div><div class="ttdeci">MQTTAsync_onFailure * onFailure</div><div class="ttdoc">A pointer to a callback function to be called if the disconnect fails.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1449</div></div>
  448. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ae6831f945c1353cd1fce5d94a5d0f54d"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ae6831f945c1353cd1fce5d94a5d0f54d">MQTTAsync_connectOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1201</div></div>
  449. <div class="ttc" id="astructListElementStruct_html"><div class="ttname"><a href="structListElementStruct.html">ListElementStruct</a></div><div class="ttdoc">Structure to hold all data for one list element.</div><div class="ttdef"><b>Definition:</b> LinkedList.h:56</div></div>
  450. <div class="ttc" id="astructMQTTPacket_html_a0f16e8684e0dd97e5b61785b18c48151"><div class="ttname"><a href="structMQTTPacket.html#a0f16e8684e0dd97e5b61785b18c48151">MQTTPacket::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:164</div></div>
  451. <div class="ttc" id="aLinkedList_8c_html_a4bb7c34fe9a5832d65f530091e0fad0d"><div class="ttname"><a href="LinkedList_8c.html#a4bb7c34fe9a5832d65f530091e0fad0d">ListRemoveItem</a></div><div class="ttdeci">int ListRemoveItem(List *aList, void *content, int(*callback)(void *, void *))</div><div class="ttdoc">Removes and frees an element in a list by comparing the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:349</div></div>
  452. <div class="ttc" id="astructSockets_html_a4ebc1178e3d1516f31b7dbc276cfde2b"><div class="ttname"><a href="structSockets.html#a4ebc1178e3d1516f31b7dbc276cfde2b">Sockets::cur_fd</a></div><div class="ttdeci">int cur_fd</div><div class="ttdoc">index into the fds_saved array</div><div class="ttdef"><b>Definition:</b> Socket.h:130</div></div>
  453. <div class="ttc" id="astructNodeStruct_html_a6f84842a1ac8bf4ea19a3bb6b4af9c4d"><div class="ttname"><a href="structNodeStruct.html#a6f84842a1ac8bf4ea19a3bb6b4af9c4d">NodeStruct::child</a></div><div class="ttdeci">struct NodeStruct * child[2]</div><div class="ttdoc">pointers to child tree nodes 0 = left, 1 = right</div><div class="ttdef"><b>Definition:</b> Tree.h:80</div></div>
  454. <div class="ttc" id="astructConnect_html_a1ecdff766bc9f572a2d1a3ae22bd0bca"><div class="ttname"><a href="structConnect.html#a1ecdff766bc9f572a2d1a3ae22bd0bca">Connect::cleanstart</a></div><div class="ttdeci">bool cleanstart</div><div class="ttdoc">cleansession flag</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:110</div></div>
  455. <div class="ttc" id="astructClientStates_html"><div class="ttname"><a href="structClientStates.html">ClientStates</a></div><div class="ttdoc">Configuration data related to all clients.</div><div class="ttdef"><b>Definition:</b> Clients.h:168</div></div>
  456. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_ab349eef3682c23527cf73bd9cea8782c"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#ab349eef3682c23527cf73bd9cea8782c">MQTTAsync_SSLOptions::enableServerCertAuth</a></div><div class="ttdeci">int enableServerCertAuth</div><div class="ttdoc">True/False option to enable verification of the server certificate.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1109</div></div>
  457. <div class="ttc" id="astructstorageElement_html_ac19ad736a483a3d3b3a5d6d6cd3ecfcf"><div class="ttname"><a href="structstorageElement.html#ac19ad736a483a3d3b3a5d6d6cd3ecfcf">storageElement::size</a></div><div class="ttdeci">size_t size</div><div class="ttdoc">size of the allocated storage</div><div class="ttdef"><b>Definition:</b> Heap.c:73</div></div>
  458. <div class="ttc" id="aMQTTPacket_8c_html_adca3afbe588ae7e6f342c5a697e4ee45"><div class="ttname"><a href="MQTTPacket_8c.html#adca3afbe588ae7e6f342c5a697e4ee45">readUTF</a></div><div class="ttdeci">char * readUTF(char **pptr, char *enddata)</div><div class="ttdoc">Reads a &quot;UTF&quot; string from the input buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:416</div></div>
  459. <div class="ttc" id="aSocket_8c_html_a212e51c4ce12e19be59c4d0f93cfb5d9"><div class="ttname"><a href="Socket_8c.html#a212e51c4ce12e19be59c4d0f93cfb5d9">Socket_getaddrname</a></div><div class="ttdeci">char * Socket_getaddrname(struct sockaddr *sa, SOCKET sock)</div><div class="ttdoc">Convert a numeric address to character string.</div><div class="ttdef"><b>Definition:</b> Socket.c:1431</div></div>
  460. <div class="ttc" id="aMQTTClient_8c_html_ae700c3f5cfea3813264ce95e7c8cf498"><div class="ttname"><a href="MQTTClient_8c.html#ae700c3f5cfea3813264ce95e7c8cf498">MQTTClient_destroy</a></div><div class="ttdeci">void MQTTClient_destroy(MQTTClient *handle)</div><div class="ttdoc">This function frees the memory allocated to an MQTT client (see MQTTClient_create()).</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:583</div></div>
  461. <div class="ttc" id="astructMQTTAsync__message_html_a13d88e9c871b5b39b73370a0784331af"><div class="ttname"><a href="structMQTTAsync__message.html#a13d88e9c871b5b39b73370a0784331af">MQTTAsync_message::payload</a></div><div class="ttdeci">void * payload</div><div class="ttdoc">A pointer to the payload of the MQTT message.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:281</div></div>
  462. <div class="ttc" id="astructMQTTClient__SSLOptions_html_ac21e3ad623dd35533e7101001299fb6f"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#ac21e3ad623dd35533e7101001299fb6f">MQTTClient_SSLOptions::enableServerCertAuth</a></div><div class="ttdeci">int enableServerCertAuth</div><div class="ttdoc">True/False option to enable verification of the server certificate.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:712</div></div>
  463. <div class="ttc" id="astructClients_html_a45dde398d2d928794de3886c74c435f6"><div class="ttname"><a href="structClients.html#a45dde398d2d928794de3886c74c435f6">Clients::good</a></div><div class="ttdeci">unsigned int good</div><div class="ttdoc">if we have an error on the socket we turn this off</div><div class="ttdef"><b>Definition:</b> Clients.h:127</div></div>
  464. <div class="ttc" id="aMQTTPacketOut_8c_html_ad05dd32a547e82e0741d9d8279568a65"><div class="ttname"><a href="MQTTPacketOut_8c.html#ad05dd32a547e82e0741d9d8279568a65">MQTTPacket_connack</a></div><div class="ttdeci">void * MQTTPacket_connack(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create connack packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:142</div></div>
  465. <div class="ttc" id="astructMQTTAsync__willOptions_html_ab61a8f7cd82a4cbd919625031b1b51d6"><div class="ttname"><a href="structMQTTAsync__willOptions.html#ab61a8f7cd82a4cbd919625031b1b51d6">MQTTAsync_willOptions::retained</a></div><div class="ttdeci">int retained</div><div class="ttdoc">The retained flag for the LWT message (see MQTTAsync_message.retained).</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1035</div></div>
  466. <div class="ttc" id="astructMQTTLenString_html"><div class="ttname"><a href="structMQTTLenString.html">MQTTLenString</a></div><div class="ttdoc">The data for a length delimited string.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:84</div></div>
  467. <div class="ttc" id="astructMQTTClient__persistence_html_a1bcc2ebaee1ab155b906493b14088a33"><div class="ttname"><a href="structMQTTClient__persistence.html#a1bcc2ebaee1ab155b906493b14088a33">MQTTClient_persistence::pclose</a></div><div class="ttdeci">Persistence_close pclose</div><div class="ttdoc">A function pointer to an implementation of Persistence_close().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:227</div></div>
  468. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a0f2fb050e48f46332523fe1e48c04980"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a0f2fb050e48f46332523fe1e48c04980">MQTTAsync_connectOptions::connectTimeout</a></div><div class="ttdeci">int connectTimeout</div><div class="ttdoc">The time interval in seconds to allow a connect to complete.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1271</div></div>
  469. <div class="ttc" id="astructMessages_html_aa31b6d8af2e0230eccdcc6ee7f2cefb1"><div class="ttname"><a href="structMessages.html#aa31b6d8af2e0230eccdcc6ee7f2cefb1">Messages::nextMessageType</a></div><div class="ttdeci">char nextMessageType</div><div class="ttdoc">used for retry and expiry</div><div class="ttdef"><b>Definition:</b> Clients.h:63</div></div>
  470. <div class="ttc" id="aMQTTPacketOut_8c_html_a93f6aa4b23d30f6c8c5be87b0b58e37c"><div class="ttname"><a href="MQTTPacketOut_8c.html#a93f6aa4b23d30f6c8c5be87b0b58e37c">MQTTPacket_unsuback</a></div><div class="ttdeci">void * MQTTPacket_unsuback(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create unsuback packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:411</div></div>
  471. <div class="ttc" id="aSocket_8c_html_aa77cff9e8173f9b8d35d062558d0cb57"><div class="ttname"><a href="Socket_8c.html#aa77cff9e8173f9b8d35d062558d0cb57">Socket_continueWrite</a></div><div class="ttdeci">int Socket_continueWrite(SOCKET socket)</div><div class="ttdoc">Continue an outstanding write for a particular socket.</div><div class="ttdef"><b>Definition:</b> Socket.c:1232</div></div>
  472. <div class="ttc" id="aMQTTClient_8c_html_a92fa1c13f3db8399e042fbdbdfb692b3"><div class="ttname"><a href="MQTTClient_8c.html#a92fa1c13f3db8399e042fbdbdfb692b3">MQTTClient_subscribeMany</a></div><div class="ttdeci">int MQTTClient_subscribeMany(MQTTClient handle, int count, char *const *topic, int *qos)</div><div class="ttdoc">This function attempts to subscribe a client to a list of topics, which may contain wildcards (see wi...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2145</div></div>
  473. <div class="ttc" id="astructMQTTClient__connectOptions_html_a0b07612dc569b59f7f937ff0c518a1bb"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a0b07612dc569b59f7f937ff0c518a1bb">MQTTClient_connectOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:838</div></div>
  474. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a804e7ee013338a83a6f573f6644829ca"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a804e7ee013338a83a6f573f6644829ca">MQTTAsync_connectOptions::httpHeaders</a></div><div class="ttdeci">const MQTTAsync_nameValue * httpHeaders</div><div class="ttdoc">HTTP headers for websockets.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1372</div></div>
  475. <div class="ttc" id="aLinkedList_8c_html_aa254fb1eab8e30d0e03859b333dc22ed"><div class="ttname"><a href="LinkedList_8c.html#aa254fb1eab8e30d0e03859b333dc22ed">ListZero</a></div><div class="ttdeci">void ListZero(List *newl)</div><div class="ttdoc">Sets a list structure to empty - all null values.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:42</div></div>
  476. <div class="ttc" id="aSocket_8c_html_a39a32a0495e5cba033f3c7fee72ae797"><div class="ttname"><a href="Socket_8c.html#a39a32a0495e5cba033f3c7fee72ae797">Socket_error</a></div><div class="ttdeci">int Socket_error(char *aString, SOCKET sock)</div><div class="ttdoc">Gets the specific error corresponding to SOCKET_ERROR.</div><div class="ttdef"><b>Definition:</b> Socket.c:109</div></div>
  477. <div class="ttc" id="aSocket_8c_html_ac176152ef036b6cfd7330a9481a7b2ed"><div class="ttname"><a href="Socket_8c.html#ac176152ef036b6cfd7330a9481a7b2ed">Socket_continueWrites</a></div><div class="ttdeci">int Socket_continueWrites(SOCKET *socket, mutex_type mutex)</div><div class="ttdoc">Continue any outstanding socket writes.</div><div class="ttdef"><b>Definition:</b> Socket.c:1363</div></div>
  478. <div class="ttc" id="aMQTTPacket_8c_html_a0ef92fb0207ed6272de9ebc749745d0c"><div class="ttname"><a href="MQTTPacket_8c.html#a0ef92fb0207ed6272de9ebc749745d0c">MQTTPacket_freeAck</a></div><div class="ttdeci">void MQTTPacket_freeAck(Ack *pack)</div><div class="ttdoc">Free allocated storage for an ack packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:628</div></div>
  479. <div class="ttc" id="astructsocket__queue_html_a8cc2b561b0b418fbbcc7ede680c71169"><div class="ttname"><a href="structsocket__queue.html#a8cc2b561b0b418fbbcc7ede680c71169">socket_queue::fixed_header</a></div><div class="ttdeci">char fixed_header[5]</div><div class="ttdoc">header plus up to 4 length bytes</div><div class="ttdef"><b>Definition:</b> SocketBuffer.h:38</div></div>
  480. <div class="ttc" id="astructMQTTAsync__failureData5_html"><div class="ttname"><a href="structMQTTAsync__failureData5.html">MQTTAsync_failureData5</a></div><div class="ttdoc">The data returned on completion of an unsuccessful API call in the response callback onFailure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:547</div></div>
  481. <div class="ttc" id="astructMQTTClient__connectOptions_html_aff577bef3a72e4aa9022fda4cffd4544"><div class="ttname"><a href="structMQTTClient__connectOptions.html#aff577bef3a72e4aa9022fda4cffd4544">MQTTClient_connectOptions::httpsProxy</a></div><div class="ttdeci">const char * httpsProxy</div><div class="ttdoc">HTTPS proxy.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:978</div></div>
  482. <div class="ttc" id="aSocketBuffer_8c_html_a7ba9075e011f49302304ce7b2d8e5b59"><div class="ttname"><a href="SocketBuffer_8c.html#a7ba9075e011f49302304ce7b2d8e5b59">SocketBuffer_updateWrite</a></div><div class="ttdeci">pending_writes * SocketBuffer_updateWrite(SOCKET socket, char *topic, char *payload)</div><div class="ttdoc">Update the queued write data for a socket in the case of QoS 0 messages.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:424</div></div>
  483. <div class="ttc" id="astructMQTTClient__connectOptions_html_aaa44742ad0345bf7f3aea7628dea6bca"><div class="ttname"><a href="structMQTTClient__connectOptions.html#aaa44742ad0345bf7f3aea7628dea6bca">MQTTClient_connectOptions::data</a></div><div class="ttdeci">const void * data</div><div class="ttdoc">binary password data</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:957</div></div>
  484. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a180b2c728942d606a3fc4a4a79bb81f4"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a180b2c728942d606a3fc4a4a79bb81f4">MQTTAsync_responseOptions::onFailure</a></div><div class="ttdeci">MQTTAsync_onFailure * onFailure</div><div class="ttdoc">A pointer to a callback function to be called if the API call fails.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:726</div></div>
  485. <div class="ttc" id="astructMQTTAsync__createOptions_html_a39d76a63782adbd9526bad0b33603522"><div class="ttname"><a href="structMQTTAsync__createOptions.html#a39d76a63782adbd9526bad0b33603522">MQTTAsync_createOptions::maxBufferedMessages</a></div><div class="ttdeci">int maxBufferedMessages</div><div class="ttdoc">The maximum number of messages allowed to be buffered.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:975</div></div>
  486. <div class="ttc" id="astructMQTTClient__connectOptions_html_a31f882b2966272a53b2bee33cb1aea8c"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a31f882b2966272a53b2bee33cb1aea8c">MQTTClient_connectOptions::serverURI</a></div><div class="ttdeci">const char * serverURI</div><div class="ttdoc">the serverURI connected to</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:947</div></div>
  487. <div class="ttc" id="aLog_8c_html_af6d2621ee2d6d01ab6b42b9afbc1c56e"><div class="ttname"><a href="Log_8c.html#af6d2621ee2d6d01ab6b42b9afbc1c56e">lines_written</a></div><div class="ttdeci">static int lines_written</div><div class="ttdoc">number of lines written to the current output file</div><div class="ttdef"><b>Definition:</b> Log.c:106</div></div>
  488. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a2190db10b854d016a291ccb378c3eda2"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a2190db10b854d016a291ccb378c3eda2">MQTTAsync_connectOptions::will</a></div><div class="ttdeci">MQTTAsync_willOptions * will</div><div class="ttdoc">This is a pointer to an MQTTAsync_willOptions structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1255</div></div>
  489. <div class="ttc" id="aMQTTProtocolClient_8c_html_a218a69c333badc4a61b321bc830ac1e0"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a218a69c333badc4a61b321bc830ac1e0">MQTTProtocol_keepalive</a></div><div class="ttdeci">void MQTTProtocol_keepalive(START_TIME_TYPE now)</div><div class="ttdoc">MQTT protocol keepAlive processing.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:700</div></div>
  490. <div class="ttc" id="aMQTTProtocolClient_8c_html_ac09429577a185297d8797d791b7116a2"><div class="ttname"><a href="MQTTProtocolClient_8c.html#ac09429577a185297d8797d791b7116a2">MQTTProtocol_handlePubrecs</a></div><div class="ttdeci">int MQTTProtocol_handlePubrecs(void *pack, SOCKET sock, Publications **pubToRemove)</div><div class="ttdoc">Process an incoming pubrec packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:485</div></div>
  491. <div class="ttc" id="astructTree_html_ad13cc776048feb0a19c640c8f1d1ffd6"><div class="ttname"><a href="structTree.html#ad13cc776048feb0a19c640c8f1d1ffd6">Tree::count</a></div><div class="ttdeci">int count</div><div class="ttdoc">no of items</div><div class="ttdef"><b>Definition:</b> Tree.h:84</div></div>
  492. <div class="ttc" id="aHeap_8c_html_ae75b06db0cdfce5c281f8672e8577854"><div class="ttname"><a href="Heap_8c.html#ae75b06db0cdfce5c281f8672e8577854">Heap_roundup</a></div><div class="ttdeci">static size_t Heap_roundup(size_t size)</div><div class="ttdoc">Round allocation size up to a multiple of the size of an int.</div><div class="ttdef"><b>Definition:</b> Heap.c:98</div></div>
  493. <div class="ttc" id="astructMQTTClient__message_html_a3be81df63644606036c0a139564a1d92"><div class="ttname"><a href="structMQTTClient__message.html#a3be81df63644606036c0a139564a1d92">MQTTClient_message::msgid</a></div><div class="ttdeci">int msgid</div><div class="ttdoc">The message identifier is normally reserved for internal use by the MQTT client and server.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:325</div></div>
  494. <div class="ttc" id="astructMQTTClient__connectOptions_html_ac5990907e10165a71e6b3c163f2f1eef"><div class="ttname"><a href="structMQTTClient__connectOptions.html#ac5990907e10165a71e6b3c163f2f1eef">MQTTClient_connectOptions::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">Sets the version of MQTT to be used on the connect.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:941</div></div>
  495. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a09caf7e179009d70fff6205e89fcc434"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a09caf7e179009d70fff6205e89fcc434">MQTTClient_SSLOptions::disableDefaultTrustStore</a></div><div class="ttdeci">int disableDefaultTrustStore</div><div class="ttdoc">Don't load default SSL CA.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:764</div></div>
  496. <div class="ttc" id="astructMQTTAsync__successData_html_a0b2e85af2333e5775907d3f2b53907d4"><div class="ttname"><a href="structMQTTAsync__successData.html#a0b2e85af2333e5775907d3f2b53907d4">MQTTAsync_successData::message</a></div><div class="ttdeci">MQTTAsync_message message</div><div class="ttdoc">the message being sent to the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:586</div></div>
  497. <div class="ttc" id="astructMQTTAsync__message_html_a680f5368d5a13ff605466ab6a3d881bd"><div class="ttname"><a href="structMQTTAsync__message.html#a680f5368d5a13ff605466ab6a3d881bd">MQTTAsync_message::retained</a></div><div class="ttdeci">int retained</div><div class="ttdoc">The retained flag serves two purposes depending on whether the message it is associated with is being...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:314</div></div>
  498. <div class="ttc" id="aMQTTClient_8c_html_adc7d708419664670063a0e7fd9c27bca"><div class="ttname"><a href="MQTTClient_8c.html#adc7d708419664670063a0e7fd9c27bca">MQTTClient_setDisconnected</a></div><div class="ttdeci">int MQTTClient_setDisconnected(MQTTClient handle, void *context, MQTTClient_disconnected *disconnected)</div><div class="ttdoc">Sets the MQTTClient_disconnected() callback function for a client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:709</div></div>
  499. <div class="ttc" id="astructMQTTAsync__successData5_html_ab8c810f026ac58874c1fd0b112bdda71"><div class="ttname"><a href="structMQTTAsync__successData5.html#ab8c810f026ac58874c1fd0b112bdda71">MQTTAsync_successData5::alt</a></div><div class="ttdeci">union MQTTAsync_successData5::@4 alt</div><div class="ttdoc">A union of the different values that can be returned for subscribe, unsubscribe and publish.</div></div>
  500. <div class="ttc" id="astructMQTTSubscribe__options_html_a9c66f0773c0484dde0e582b4c47d9bf7"><div class="ttname"><a href="structMQTTSubscribe__options.html#a9c66f0773c0484dde0e582b4c47d9bf7">MQTTSubscribe_options::retainAsPublished</a></div><div class="ttdeci">unsigned char retainAsPublished</div><div class="ttdoc">To keep the retain flag as on the original publish message, set to 1.</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:50</div></div>
  501. <div class="ttc" id="astructws__frame_html_a39b63d46db10302225327f57a20ce099"><div class="ttname"><a href="structws__frame.html#a39b63d46db10302225327f57a20ce099">ws_frame::len</a></div><div class="ttdeci">size_t len</div><div class="ttdoc">length of frame</div><div class="ttdef"><b>Definition:</b> WebSocket.c:146</div></div>
  502. <div class="ttc" id="astructAck_html_a54d6ed9d045c38877e27bdf5802e3efe"><div class="ttname"><a href="structAck.html#a54d6ed9d045c38877e27bdf5802e3efe">Ack::rc</a></div><div class="ttdeci">unsigned char rc</div><div class="ttdoc">MQTT 5 reason code.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:218</div></div>
  503. <div class="ttc" id="astructMQTTAsync__responseOptions_html_aabf57368b8266f17e7951579897f7f66"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#aabf57368b8266f17e7951579897f7f66">MQTTAsync_responseOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:714</div></div>
  504. <div class="ttc" id="astructConnack_html"><div class="ttname"><a href="structConnack.html">Connack</a></div><div class="ttdoc">Data for a connack packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:133</div></div>
  505. <div class="ttc" id="aThread_8c_html_ad075ec07f801ac1a2a7dee7097048182"><div class="ttname"><a href="Thread_8c.html#ad075ec07f801ac1a2a7dee7097048182">Thread_destroy_sem</a></div><div class="ttdeci">int Thread_destroy_sem(sem_type sem)</div><div class="ttdoc">Destroy a semaphore which has already been created.</div><div class="ttdef"><b>Definition:</b> Thread.c:360</div></div>
  506. <div class="ttc" id="aMQTTProtocolClient_8c_html_a3a1acc3bd7b09ab9d52e15e4a97c4cb2"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a3a1acc3bd7b09ab9d52e15e4a97c4cb2">MQTTProtocol_retry</a></div><div class="ttdeci">void MQTTProtocol_retry(START_TIME_TYPE now, int doRetry, int regardless)</div><div class="ttdoc">MQTT retry protocol and socket pending writes processing.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:877</div></div>
  507. <div class="ttc" id="astructMQTTClient__createOptions_html_ae15c5b3e67be5967deb87d2830805565"><div class="ttname"><a href="structMQTTClient__createOptions.html#ae15c5b3e67be5967deb87d2830805565">MQTTClient_createOptions::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">Whether the MQTT version is 3.1, 3.1.1, or 5.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:559</div></div>
  508. <div class="ttc" id="astructClients_html_ae0c3a79f1943071fe9d336014cf5826a"><div class="ttname"><a href="structClients.html#ae0c3a79f1943071fe9d336014cf5826a">Clients::context</a></div><div class="ttdeci">void * context</div><div class="ttdoc">calling context - used when calling disconnect_internal</div><div class="ttdef"><b>Definition:</b> Clients.h:151</div></div>
  509. <div class="ttc" id="aMQTTClient_8c_html_a1e4d90c13a3c0705bc4a13bfe64e6525"><div class="ttname"><a href="MQTTClient_8c.html#a1e4d90c13a3c0705bc4a13bfe64e6525">MQTTClient_disconnect</a></div><div class="ttdeci">int MQTTClient_disconnect(MQTTClient handle, int timeout)</div><div class="ttdoc">This function attempts to disconnect the client from the MQTT server.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1971</div></div>
  510. <div class="ttc" id="aSocketBuffer_8c_html_abb5eae96f4c62d1e6fefed8d078ecba8"><div class="ttname"><a href="SocketBuffer_8c.html#abb5eae96f4c62d1e6fefed8d078ecba8">SocketBuffer_cleanup</a></div><div class="ttdeci">void SocketBuffer_cleanup(SOCKET socket)</div><div class="ttdoc">Cleanup any buffers for a specific socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:151</div></div>
  511. <div class="ttc" id="astructClients_html_a9cb1ad103af7c3aaf00e79037e6befba"><div class="ttname"><a href="structClients.html#a9cb1ad103af7c3aaf00e79037e6befba">Clients::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT being used, 3, 4 or 5</div><div class="ttdef"><b>Definition:</b> Clients.h:152</div></div>
  512. <div class="ttc" id="astructSockets_html"><div class="ttname"><a href="structSockets.html">Sockets</a></div><div class="ttdoc">Structure to hold all socket data for the module.</div><div class="ttdef"><b>Definition:</b> Socket.h:112</div></div>
  513. <div class="ttc" id="astructTree_html_ad3f36479166a4a7d4124c6a79ee770f4"><div class="ttname"><a href="structTree.html#ad3f36479166a4a7d4124c6a79ee770f4">Tree::heap_tracking</a></div><div class="ttdeci">unsigned int heap_tracking</div><div class="ttdoc">switch on heap tracking for this tree?</div><div class="ttdef"><b>Definition:</b> Tree.h:86</div></div>
  514. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ac6d0d8d8e9c2f55f24b3219c18886be5"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ac6d0d8d8e9c2f55f24b3219c18886be5">MQTTAsync_connectOptions::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">binary password length</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1342</div></div>
  515. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a5f3cc2c0f36991db85aae88ccd4985f9"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a5f3cc2c0f36991db85aae88ccd4985f9">MQTTClient_SSLOptions::privateKey</a></div><div class="ttdeci">const char * privateKey</div><div class="ttdoc">If not included in the sslKeyStore, this setting points to the file in PEM format containing the clie...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:696</div></div>
  516. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a0e07f3de1807ab841646cbb8bfa94657"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a0e07f3de1807ab841646cbb8bfa94657">MQTTClient_SSLOptions::enabledCipherSuites</a></div><div class="ttdeci">const char * enabledCipherSuites</div><div class="ttdoc">The list of cipher suites that the client will present to the server during the SSL handshake.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:709</div></div>
  517. <div class="ttc" id="aMQTTPacket_8c_html_ad29ec8b2fbf0ec0195621b44f8945923"><div class="ttname"><a href="MQTTPacket_8c.html#ad29ec8b2fbf0ec0195621b44f8945923">writeChar</a></div><div class="ttdeci">void writeChar(char **pptr, char c)</div><div class="ttdoc">Writes one character to an output buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:441</div></div>
  518. <div class="ttc" id="astructMQTTLenString_html_a7eb20db2b77f5e224e12d94c78573fa3"><div class="ttname"><a href="structMQTTLenString.html#a7eb20db2b77f5e224e12d94c78573fa3">MQTTLenString::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">the length of the string</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:86</div></div>
  519. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a498e4dfcb65894bfc04290ace6b9a4cd"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a498e4dfcb65894bfc04290ace6b9a4cd">MQTTAsync_SSLOptions::privateKeyPassword</a></div><div class="ttdeci">const char * privateKeyPassword</div><div class="ttdoc">The password to load the client's privateKey if encrypted.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1096</div></div>
  520. <div class="ttc" id="aMQTTProtocolClient_8c_html_ad2f52c0fff61c891b174d69b95bcd173"><div class="ttname"><a href="MQTTProtocolClient_8c.html#ad2f52c0fff61c891b174d69b95bcd173">MQTTProtocol_retries</a></div><div class="ttdeci">static void MQTTProtocol_retries(START_TIME_TYPE now, Clients *client, int regardless)</div><div class="ttdoc">MQTT retry processing per client.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:767</div></div>
  521. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_aef6853e3c56c83ca3b49250578417848"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#aef6853e3c56c83ca3b49250578417848">MQTTAsync_disconnectOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1432</div></div>
  522. <div class="ttc" id="aMQTTPacketOut_8c_html_a90212ed29c311f52a1dce0617133b1a7"><div class="ttname"><a href="MQTTPacketOut_8c.html#a90212ed29c311f52a1dce0617133b1a7">MQTTPacket_send_subscribe</a></div><div class="ttdeci">int MQTTPacket_send_subscribe(List *topics, List *qoss, MQTTSubscribe_options *opts, MQTTProperties *props, int msgid, int dup, Clients *client)</div><div class="ttdoc">Send an MQTT subscribe packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:226</div></div>
  523. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a71f6175d58e01af30b064c19967d42ca"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a71f6175d58e01af30b064c19967d42ca">MQTTAsync_disconnectOptions::timeout</a></div><div class="ttdeci">int timeout</div><div class="ttdoc">The client delays disconnection for up to this time (in milliseconds) in order to allow in-flight mes...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1437</div></div>
  524. <div class="ttc" id="autf-8_8c_html_a25f003de16c08a4888b69f619d70f427"><div class="ttname"><a href="utf-8_8c.html#a25f003de16c08a4888b69f619d70f427">ARRAY_SIZE</a></div><div class="ttdeci">#define ARRAY_SIZE(a)</div><div class="ttdoc">Macro to determine the number of elements in a single-dimension array.</div><div class="ttdef"><b>Definition:</b> utf-8.c:37</div></div>
  525. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a45ea4eb5a79cb0b6150c86d15c3143c9"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a45ea4eb5a79cb0b6150c86d15c3143c9">MQTTAsync_SSLOptions::enabledCipherSuites</a></div><div class="ttdeci">const char * enabledCipherSuites</div><div class="ttdoc">The list of cipher suites that the client will present to the server during the SSL handshake.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1106</div></div>
  526. <div class="ttc" id="astructMQTTAsync__failureData5_html_afc4100c8f3126342b75e60dcd720836f"><div class="ttname"><a href="structMQTTAsync__failureData5.html#afc4100c8f3126342b75e60dcd720836f">MQTTAsync_failureData5::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:552</div></div>
  527. <div class="ttc" id="astructMQTTClient__SSLOptions_html_aeb2a43fde9dfc5627fda508a373bccfc"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#aeb2a43fde9dfc5627fda508a373bccfc">MQTTClient_SSLOptions::ssl_error_context</a></div><div class="ttdeci">void * ssl_error_context</div><div class="ttdoc">Application-specific contex for OpenSSL error handler ERR_print_errors_cb Exists only if struct_versi...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:744</div></div>
  528. <div class="ttc" id="aSocketBuffer_8c_html_a412a40b44b12901e63e662ac0e5be0af"><div class="ttname"><a href="SocketBuffer_8c.html#a412a40b44b12901e63e662ac0e5be0af">SocketBuffer_interrupted</a></div><div class="ttdeci">void SocketBuffer_interrupted(SOCKET socket, size_t actual_len)</div><div class="ttdoc">A socket read was interrupted so we need to queue data.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:252</div></div>
  529. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_a2df711f7d216b57a584195691ac5630f"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#a2df711f7d216b57a584195691ac5630f">MQTTAsync_disconnectOptions::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT V5 input properties.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1459</div></div>
  530. <div class="ttc" id="astructMQTTAsync__successData5_html_a966b7fc75d0b1fbbc9791aa3eeef06a5"><div class="ttname"><a href="structMQTTAsync__successData5.html#a966b7fc75d0b1fbbc9791aa3eeef06a5">MQTTAsync_successData5::reasonCode</a></div><div class="ttdeci">enum MQTTReasonCodes reasonCode</div><div class="ttdoc">MQTT V5 reason code returned.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:607</div></div>
  531. <div class="ttc" id="aMQTTClient_8c_html_a50abbce720d50b9f84b97ff9fa1f546d"><div class="ttname"><a href="MQTTClient_8c.html#a50abbce720d50b9f84b97ff9fa1f546d">MQTTClient_unsubscribeMany</a></div><div class="ttdeci">int MQTTClient_unsubscribeMany(MQTTClient handle, int count, char *const *topic)</div><div class="ttdoc">This function attempts to remove existing subscriptions to a list of topics made by the specified cli...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2292</div></div>
  532. <div class="ttc" id="aMQTTClient_8c_html_aad27d07782991a4937ebf2f39a021f83"><div class="ttname"><a href="MQTTClient_8c.html#aad27d07782991a4937ebf2f39a021f83">MQTTClient_setCallbacks</a></div><div class="ttdeci">int MQTTClient_setCallbacks(MQTTClient handle, void *context, MQTTClient_connectionLost *cl, MQTTClient_messageArrived *ma, MQTTClient_deliveryComplete *dc)</div><div class="ttdoc">This function sets the callback functions for a specific client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1059</div></div>
  533. <div class="ttc" id="astructMQTTAsync__successData5_html_a7e75879a42ba01477a3c921487e3c564"><div class="ttname"><a href="structMQTTAsync__successData5.html#a7e75879a42ba01477a3c921487e3c564">MQTTAsync_successData5::pub</a></div><div class="ttdeci">struct MQTTAsync_successData5::@4::@6 pub</div><div class="ttdoc">For publish, the message being sent to the server.</div></div>
  534. <div class="ttc" id="astructMQTTAsync__createOptions_html_a884363e807ef160450e64f7eb6ef0044"><div class="ttname"><a href="structMQTTAsync__createOptions.html#a884363e807ef160450e64f7eb6ef0044">MQTTAsync_createOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:969</div></div>
  535. <div class="ttc" id="astructConnect_html_aa0063fa6349a7fb5be89cf1cbe4043b4"><div class="ttname"><a href="structConnect.html#aa0063fa6349a7fb5be89cf1cbe4043b4">Connect::clientID</a></div><div class="ttdeci">char * clientID</div><div class="ttdoc">string client id</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:121</div></div>
  536. <div class="ttc" id="astructMQTTClient__connectOptions_html_ab2e2302e3cc1105d6c93ae1e8205d60c"><div class="ttname"><a href="structMQTTClient__connectOptions.html#ab2e2302e3cc1105d6c93ae1e8205d60c">MQTTClient_connectOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:827</div></div>
  537. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_ad14df49c90828d0d0efd93e707c3a4a6"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#ad14df49c90828d0d0efd93e707c3a4a6">MQTTAsync_SSLOptions::sslVersion</a></div><div class="ttdeci">int sslVersion</div><div class="ttdoc">The SSL/TLS version to use.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1115</div></div>
  538. <div class="ttc" id="aMQTTClient_8c_html_aa8731be3dbc6a25f41f037f8bbbb054b"><div class="ttname"><a href="MQTTClient_8c.html#aa8731be3dbc6a25f41f037f8bbbb054b">MQTTClient_unsubscribe</a></div><div class="ttdeci">int MQTTClient_unsubscribe(MQTTClient handle, const char *topic)</div><div class="ttdoc">This function attempts to remove an existing subscription made by the specified client.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2315</div></div>
  539. <div class="ttc" id="astructConnect_html_a5ad7b3bbaab88cc22692b849f31b2756"><div class="ttname"><a href="structConnect.html#a5ad7b3bbaab88cc22692b849f31b2756">Connect::password</a></div><div class="ttdeci">bool password</div><div class="ttdoc">3.1 password</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:114</div></div>
  540. <div class="ttc" id="aSocket_8c_html_a0e0f2981efa6caf604e8f0fc1072af90"><div class="ttname"><a href="Socket_8c.html#a0e0f2981efa6caf604e8f0fc1072af90">Socket_close_only</a></div><div class="ttdeci">int Socket_close_only(SOCKET socket)</div><div class="ttdoc">Close a socket without removing it from the select list.</div><div class="ttdef"><b>Definition:</b> Socket.c:862</div></div>
  541. <div class="ttc" id="astructSuback_html_acb5971c2ca02372e41da6f1ccf202dba"><div class="ttname"><a href="structSuback.html#acb5971c2ca02372e41da6f1ccf202dba">Suback::msgId</a></div><div class="ttdeci">int msgId</div><div class="ttdoc">MQTT message id.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:174</div></div>
  542. <div class="ttc" id="aMQTTClientPersistence_8h_html_a44679cab77cfbd6e2a4639cdd27ac80c"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a44679cab77cfbd6e2a4639cdd27ac80c">Persistence_put</a></div><div class="ttdeci">int(* Persistence_put)(void *handle, char *key, int bufcount, char *buffers[], int buflens[])</div><div class="ttdoc">Put the specified data into the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:140</div></div>
  543. <div class="ttc" id="astructMQTTClient__willOptions_html_a7553866f76f2f01ee59bc2114da9a169"><div class="ttname"><a href="structMQTTClient__willOptions.html#a7553866f76f2f01ee59bc2114da9a169">MQTTClient_willOptions::payload</a></div><div class="ttdeci">struct MQTTClient_willOptions::@17 payload</div><div class="ttdoc">The LWT payload in binary form.</div></div>
  544. <div class="ttc" id="astructPublish_html_ac250077e84d98fc44f95530793bae79b"><div class="ttname"><a href="structPublish.html#ac250077e84d98fc44f95530793bae79b">Publish::payloadlen</a></div><div class="ttdeci">int payloadlen</div><div class="ttdoc">payload length</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:204</div></div>
  545. <div class="ttc" id="astructMQTTAsync__successData_html_af2b2a98191b00dbd7c592f2ef013ba87"><div class="ttname"><a href="structMQTTAsync__successData.html#af2b2a98191b00dbd7c592f2ef013ba87">MQTTAsync_successData::alt</a></div><div class="ttdeci">union MQTTAsync_successData::@1 alt</div><div class="ttdoc">A union of the different values that can be returned for subscribe, unsubscribe and publish.</div></div>
  546. <div class="ttc" id="astructMQTTAsync__connectOptions_html_afbcfee31a89fb634456290f22c4e32da"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#afbcfee31a89fb634456290f22c4e32da">MQTTAsync_connectOptions::maxInflight</a></div><div class="ttdeci">int maxInflight</div><div class="ttdoc">This controls how many messages can be in-flight simultaneously.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1249</div></div>
  547. <div class="ttc" id="astructClients_html_ad593ed8add1448fe1f1e01b4d60f28a7"><div class="ttname"><a href="structClients.html#ad593ed8add1448fe1f1e01b4d60f28a7">Clients::will</a></div><div class="ttdeci">willMessages * will</div><div class="ttdoc">the MQTT will message, if any</div><div class="ttdef"><b>Definition:</b> Clients.h:137</div></div>
  548. <div class="ttc" id="astructConnect_html"><div class="ttname"><a href="structConnect.html">Connect</a></div><div class="ttdoc">Data for a connect packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:89</div></div>
  549. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a349454d7fe6021b62004874d7efa6277"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a349454d7fe6021b62004874d7efa6277">MQTTAsync_SSLOptions::disableDefaultTrustStore</a></div><div class="ttdeci">int disableDefaultTrustStore</div><div class="ttdoc">Don't load default SSL CA.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1161</div></div>
  550. <div class="ttc" id="aMQTTProtocolClient_8c_html_a68e5f17517e75326c0869a22c7995358"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a68e5f17517e75326c0869a22c7995358">MQTTProtocol_queueAck</a></div><div class="ttdeci">static int MQTTProtocol_queueAck(Clients *client, int ackType, int msgId)</div><div class="ttdoc">Queue an ack message.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:850</div></div>
  551. <div class="ttc" id="astructMQTTClient__message_html_a27b983a1ac95eb5c335d40840129c0c8"><div class="ttname"><a href="structMQTTClient__message.html#a27b983a1ac95eb5c335d40840129c0c8">MQTTClient_message::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:277</div></div>
  552. <div class="ttc" id="aSocketBuffer_8c_html_a8b7b6acbf2ec65796c32da7fd55c3ee8"><div class="ttname"><a href="SocketBuffer_8c.html#a8b7b6acbf2ec65796c32da7fd55c3ee8">SocketBuffer_complete</a></div><div class="ttdeci">char * SocketBuffer_complete(SOCKET socket)</div><div class="ttdoc">A socket read has now completed so we can get rid of the queue.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:281</div></div>
  553. <div class="ttc" id="aLinkedList_8c_html_a3cf8578dba23f97dd0411e85fe3b7ff2"><div class="ttname"><a href="LinkedList_8c.html#a3cf8578dba23f97dd0411e85fe3b7ff2">ListEmpty</a></div><div class="ttdeci">void ListEmpty(List *aList)</div><div class="ttdoc">Removes and frees all items in a list, leaving the list ready for new items.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:359</div></div>
  554. <div class="ttc" id="astructMQTTClient__init__options_html_abf7d43d1e40265cf8ff1ca4266fff0e6"><div class="ttname"><a href="structMQTTClient__init__options.html#abf7d43d1e40265cf8ff1ca4266fff0e6">MQTTClient_init_options::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:234</div></div>
  555. <div class="ttc" id="astructMQTTSubscribe__options_html_aed5f22c185be62363ac36df1d3778c6d"><div class="ttname"><a href="structMQTTSubscribe__options.html#aed5f22c185be62363ac36df1d3778c6d">MQTTSubscribe_options::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:41</div></div>
  556. <div class="ttc" id="aMQTTProtocolClient_8c_html_a286c2ef2904b5eb4a0ffa5b598961c67"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a286c2ef2904b5eb4a0ffa5b598961c67">messageIDCompare</a></div><div class="ttdeci">int messageIDCompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing Message structures by message id.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:73</div></div>
  557. <div class="ttc" id="autf-8_8c_html_a9727caa7417e6bed8cfad4121a22628d"><div class="ttname"><a href="utf-8_8c.html#a9727caa7417e6bed8cfad4121a22628d">UTF8_char_validate</a></div><div class="ttdeci">static const char * UTF8_char_validate(int len, const char *data)</div><div class="ttdoc">Validate a single UTF-8 character.</div><div class="ttdef"><b>Definition:</b> utf-8.c:76</div></div>
  558. <div class="ttc" id="astructMQTTClient__init__options_html_acb4f69163cbb7cf8fcc44ca086354dbc"><div class="ttname"><a href="structMQTTClient__init__options.html#acb4f69163cbb7cf8fcc44ca086354dbc">MQTTClient_init_options::do_openssl_init</a></div><div class="ttdeci">int do_openssl_init</div><div class="ttdoc">1 = we do openssl init, 0 = leave it to the application</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:236</div></div>
  559. <div class="ttc" id="astructMQTTAsync__successData5_html"><div class="ttname"><a href="structMQTTAsync__successData5.html">MQTTAsync_successData5</a></div><div class="ttdoc">The data returned on completion of a successful API call in the response callback onSuccess.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:601</div></div>
  560. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a2c5cc887b0fd4a388b0bef9163d5b1ab"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a2c5cc887b0fd4a388b0bef9163d5b1ab">MQTTAsync_SSLOptions::CApath</a></div><div class="ttdeci">const char * CApath</div><div class="ttdoc">From the OpenSSL documentation: If CApath is not NULL, it points to a directory containing CA certifi...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1129</div></div>
  561. <div class="ttc" id="astructMQTTClient__persistence_html_a36a69926a618f7e0f5098db61ece101b"><div class="ttname"><a href="structMQTTClient__persistence.html#a36a69926a618f7e0f5098db61ece101b">MQTTClient_persistence::pkeys</a></div><div class="ttdeci">Persistence_keys pkeys</div><div class="ttdoc">A function pointer to an implementation of Persistence_keys().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:243</div></div>
  562. <div class="ttc" id="aMQTTPacket_8c_html_aff1d10b221f5b4ce421b4c2588cbe511"><div class="ttname"><a href="MQTTPacket_8c.html#aff1d10b221f5b4ce421b4c2588cbe511">readChar</a></div><div class="ttdeci">unsigned char readChar(char **pptr)</div><div class="ttdoc">Reads one character from the input buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:428</div></div>
  563. <div class="ttc" id="aSocketBuffer_8c_html_a2f6bac9a46fd116e58071ff49152d716"><div class="ttname"><a href="SocketBuffer_8c.html#a2f6bac9a46fd116e58071ff49152d716">SocketBuffer_queueChar</a></div><div class="ttdeci">void SocketBuffer_queueChar(SOCKET socket, char c)</div><div class="ttdoc">Queued a Charactor to a specific socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:303</div></div>
  564. <div class="ttc" id="astructMQTTProperties_html_ad3bd5700ed60fb16c072e8a65672a581"><div class="ttname"><a href="structMQTTProperties.html#ad3bd5700ed60fb16c072e8a65672a581">MQTTProperties::max_count</a></div><div class="ttdeci">int max_count</div><div class="ttdoc">max number of properties that the currently allocated array can store</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:115</div></div>
  565. <div class="ttc" id="aMQTTProtocolClient_8c_html_a362e0560d6f4f0e50237664a1a8e89a7"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a362e0560d6f4f0e50237664a1a8e89a7">MQTTProtocol_handlePubrels</a></div><div class="ttdeci">int MQTTProtocol_handlePubrels(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming pubrel packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:565</div></div>
  566. <div class="ttc" id="aHeap_8c_html_aa337931db6f2e3b78d5dce6a8d228257"><div class="ttname"><a href="Heap_8c.html#aa337931db6f2e3b78d5dce6a8d228257">heap</a></div><div class="ttdeci">static Tree heap</div><div class="ttdoc">Tree that holds the allocation records.</div><div class="ttdef"><b>Definition:</b> Heap.c:79</div></div>
  567. <div class="ttc" id="aMQTTClient_8c_html_aa777f80cb3eec5610f976aff30b8c0d6"><div class="ttname"><a href="MQTTClient_8c.html#aa777f80cb3eec5610f976aff30b8c0d6">MQTTClient_connect5</a></div><div class="ttdeci">MQTTResponse MQTTClient_connect5(MQTTClient handle, MQTTClient_connectOptions *options, MQTTProperties *connectProperties, MQTTProperties *willProperties)</div><div class="ttdoc">Attempts to connect a previously-created client (see MQTTClient_create()) to an MQTT server using MQT...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1714</div></div>
  568. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html">MQTTAsync_disconnectOptions</a></div><div class="ttdoc">Options for the ::MQTTAsync_disconnect call.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1427</div></div>
  569. <div class="ttc" id="astructMQTTClient__persistence_html_a815d4110bfd7f2678a60f9264b13e075"><div class="ttname"><a href="structMQTTClient__persistence.html#a815d4110bfd7f2678a60f9264b13e075">MQTTClient_persistence::premove</a></div><div class="ttdeci">Persistence_remove premove</div><div class="ttdoc">A function pointer to an implementation of Persistence_remove().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:239</div></div>
  570. <div class="ttc" id="aMQTTClient_8c_html_abe842456c914ce9201d277a972cc085e"><div class="ttname"><a href="MQTTClient_8c.html#abe842456c914ce9201d277a972cc085e">MQTTClient_getVersionInfo</a></div><div class="ttdeci">MQTTClient_nameValue * MQTTClient_getVersionInfo(void)</div><div class="ttdoc">This function returns version information about the library.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2962</div></div>
  571. <div class="ttc" id="astructPublish_html_a99fce902e497cd379686c6d447a17be3"><div class="ttname"><a href="structPublish.html#a99fce902e497cd379686c6d447a17be3">Publish::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT 5.0 properties.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:206</div></div>
  572. <div class="ttc" id="astructUnsuback_html_adc48396a054907a9806fef1dd46d1055"><div class="ttname"><a href="structUnsuback.html#adc48396a054907a9806fef1dd46d1055">Unsuback::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT 5.0 properties.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:189</div></div>
  573. <div class="ttc" id="aMQTTProtocolClient_8c_html_a0f86c2cc2debfa39e275d3c76d5d0073"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a0f86c2cc2debfa39e275d3c76d5d0073">MQTTProtocol_startPublish</a></div><div class="ttdeci">int MQTTProtocol_startPublish(Clients *pubclient, Publish *publish, int qos, int retained, Messages **mm)</div><div class="ttdoc">Start a new publish exchange.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:171</div></div>
  574. <div class="ttc" id="astructMQTTClient__message_html_a85b39bde61ef9f5ed853ad6489145a94"><div class="ttname"><a href="structMQTTClient__message.html#a85b39bde61ef9f5ed853ad6489145a94">MQTTClient_message::payloadlen</a></div><div class="ttdeci">int payloadlen</div><div class="ttdoc">The length of the MQTT message payload in bytes.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:279</div></div>
  575. <div class="ttc" id="aLog_8c_html_a29606f1185cb957cd23842125d7d8ecd"><div class="ttname"><a href="Log_8c.html#a29606f1185cb957cd23842125d7d8ecd">trace_destination</a></div><div class="ttdeci">static FILE * trace_destination</div><div class="ttdoc">flag to indicate if trace is to be sent to a stream</div><div class="ttdef"><b>Definition:</b> Log.c:103</div></div>
  576. <div class="ttc" id="astructnetworkHandles_html"><div class="ttname"><a href="structnetworkHandles.html">networkHandles</a></div><div class="ttdef"><b>Definition:</b> Clients.h:79</div></div>
  577. <div class="ttc" id="aSocketBuffer_8c_html_a9293d4ef45aa2a51baab9be4eb73091b"><div class="ttname"><a href="SocketBuffer_8c.html#a9293d4ef45aa2a51baab9be4eb73091b">SocketBuffer_newDefQ</a></div><div class="ttdeci">int SocketBuffer_newDefQ(void)</div><div class="ttdoc">Create a new default queue when one has just been used.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:79</div></div>
  578. <div class="ttc" id="aMQTTClient_8c_html_a9defda2979f6fedaae64fd85f5c2f617"><div class="ttname"><a href="MQTTClient_8c.html#a9defda2979f6fedaae64fd85f5c2f617">MQTTClient_strerror</a></div><div class="ttdeci">const char * MQTTClient_strerror(int code)</div><div class="ttdoc">Returns a pointer to the string representation of the error or NULL.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2998</div></div>
  579. <div class="ttc" id="astructTree_html_ad8e46ce0aead5778cbdd784d1e370d5f"><div class="ttname"><a href="structTree.html#ad8e46ce0aead5778cbdd784d1e370d5f">Tree::root</a></div><div class="ttdeci">Node * root</div><div class="ttdoc">root node pointer</div><div class="ttdef"><b>Definition:</b> Tree.h:80</div></div>
  580. <div class="ttc" id="astructMQTTProperty_html_acf819eac134fafe7e284598b4e6897e3"><div class="ttname"><a href="structMQTTProperty.html#acf819eac134fafe7e284598b4e6897e3">MQTTProperty::byte</a></div><div class="ttdeci">unsigned char byte</div><div class="ttdoc">holds the value of a byte property type</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:99</div></div>
  581. <div class="ttc" id="aLinkedList_8c_html_a27e2cccab9752618ead91eafbe2a9a46"><div class="ttname"><a href="LinkedList_8c.html#a27e2cccab9752618ead91eafbe2a9a46">ListInitialize</a></div><div class="ttdeci">List * ListInitialize(void)</div><div class="ttdoc">Allocates and initializes a new list structure.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:52</div></div>
  582. <div class="ttc" id="aHeap_8c_html_aea7ea58998f69f14e16a3237c1d02d8a"><div class="ttname"><a href="Heap_8c.html#aea7ea58998f69f14e16a3237c1d02d8a">HeapDump</a></div><div class="ttdeci">int HeapDump(FILE *file)</div><div class="ttdoc">Dump the state of the heap.</div><div class="ttdef"><b>Definition:</b> Heap.c:462</div></div>
  583. <div class="ttc" id="astructClients_html_af8cc24a8d289b4950b7c929b03cba031"><div class="ttname"><a href="structClients.html#af8cc24a8d289b4950b7c929b03cba031">Clients::username</a></div><div class="ttdeci">const char * username</div><div class="ttdoc">MQTT v3.1 user name.</div><div class="ttdef"><b>Definition:</b> Clients.h:121</div></div>
  584. <div class="ttc" id="astructws__frame_html"><div class="ttname"><a href="structws__frame.html">ws_frame</a></div><div class="ttdoc">raw websocket frame data</div><div class="ttdef"><b>Definition:</b> WebSocket.c:144</div></div>
  585. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a2a55461def3359a2b0aff6b3bb0644ad"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a2a55461def3359a2b0aff6b3bb0644ad">pstcontainskey</a></div><div class="ttdeci">int pstcontainskey(void *handle, char *key)</div><div class="ttdoc">Returns whether if a wire message is persisted in the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:405</div></div>
  586. <div class="ttc" id="aunionHeader_html_a35c1c5537424b9307f4ff0803f16a25f"><div class="ttname"><a href="unionHeader.html#a35c1c5537424b9307f4ff0803f16a25f">Header::dup</a></div><div class="ttdeci">bool dup</div><div class="ttdoc">DUP flag bit.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:79</div></div>
  587. <div class="ttc" id="astructwillMessages_html"><div class="ttname"><a href="structwillMessages.html">willMessages</a></div><div class="ttdoc">Client will message data.</div><div class="ttdef"><b>Definition:</b> Clients.h:70</div></div>
  588. <div class="ttc" id="aSocketBuffer_8c_html_ae8667990c5933c3af9b90a163bba34dc"><div class="ttname"><a href="SocketBuffer_8c.html#ae8667990c5933c3af9b90a163bba34dc">SocketBuffer_writeComplete</a></div><div class="ttdeci">int SocketBuffer_writeComplete(SOCKET socket)</div><div class="ttdoc">A socket write has now completed so we can get rid of the queue.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:411</div></div>
  589. <div class="ttc" id="aThread_8c_html_a95309628f2c15de1f3ea8047b086a707"><div class="ttname"><a href="Thread_8c.html#a95309628f2c15de1f3ea8047b086a707">Thread_destroy_cond</a></div><div class="ttdeci">int Thread_destroy_cond(cond_type condvar)</div><div class="ttdoc">Destroy a condition variable.</div><div class="ttdef"><b>Definition:</b> Thread.c:475</div></div>
  590. <div class="ttc" id="astructMQTTClient__connectOptions_html_a23eefc54da515a0c189ed6d5918470b0"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a23eefc54da515a0c189ed6d5918470b0">MQTTClient_connectOptions::maxInflightMessages</a></div><div class="ttdeci">int maxInflightMessages</div><div class="ttdoc">The maximum number of messages in flight.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:962</div></div>
  591. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a24f38d19ff3db61292d7b463e59174ef"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a24f38d19ff3db61292d7b463e59174ef">pstclose</a></div><div class="ttdeci">int pstclose(void *handle)</div><div class="ttdoc">Delete client persistence directory (if empty).</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:371</div></div>
  592. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a50f0a294c8f7311ccd7f7803b432bb69"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a50f0a294c8f7311ccd7f7803b432bb69">MQTTAsync_connectOptions::serverURIs</a></div><div class="ttdeci">char *const * serverURIs</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1318</div></div>
  593. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a7d1e6443a9050f3e54b02dfa6854feb4"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a7d1e6443a9050f3e54b02dfa6854feb4">MQTTAsync_connectOptions::maxRetryInterval</a></div><div class="ttdeci">int maxRetryInterval</div><div class="ttdoc">The maximum automatic reconnect retry interval in seconds.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1337</div></div>
  594. <div class="ttc" id="astructMQTTClient__willOptions_html_a6b64d983ab8586bc87c9c22b352a9717"><div class="ttname"><a href="structMQTTClient__willOptions.html#a6b64d983ab8586bc87c9c22b352a9717">MQTTClient_willOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:626</div></div>
  595. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ad6ed277d7db13a98ecef45ff3dd10044"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ad6ed277d7db13a98ecef45ff3dd10044">MQTTAsync_connectOptions::keepAliveInterval</a></div><div class="ttdeci">int keepAliveInterval</div><div class="ttdoc">The &quot;keep alive&quot; interval, measured in seconds, defines the maximum time that should pass without com...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1223</div></div>
  596. <div class="ttc" id="aMQTTProtocolClient_8c_html_a2d7897d575be486bf1ed0459d7b2b8e7"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a2d7897d575be486bf1ed0459d7b2b8e7">MQTTProtocol_handlePublishes</a></div><div class="ttdeci">int MQTTProtocol_handlePublishes(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming publish packet for a socket The payload field of the packet has not been transfer...</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:323</div></div>
  597. <div class="ttc" id="aLinkedList_8c_html_aabca387fa4b86475bc9e4da40c3977fc"><div class="ttname"><a href="LinkedList_8c.html#aabca387fa4b86475bc9e4da40c3977fc">ListInsert</a></div><div class="ttdeci">ListElement * ListInsert(List *aList, void *content, size_t size, ListElement *index)</div><div class="ttdoc">Insert an item to a list at a specific position.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:107</div></div>
  598. <div class="ttc" id="astructClients_html_a8e1ca3c305b51f86c29d246a60d0fec2"><div class="ttname"><a href="structClients.html#a8e1ca3c305b51f86c29d246a60d0fec2">Clients::cleanstart</a></div><div class="ttdeci">unsigned int cleanstart</div><div class="ttdoc">MQTT V5 clean start flag.</div><div class="ttdef"><b>Definition:</b> Clients.h:125</div></div>
  599. <div class="ttc" id="astructMQTTClient__message_html_a7f5160eeef15b17f7c8ac493015f558d"><div class="ttname"><a href="structMQTTClient__message.html#a7f5160eeef15b17f7c8ac493015f558d">MQTTClient_message::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:274</div></div>
  600. <div class="ttc" id="aLinkedList_8c_html_a84b0ad14e7cebcd7b9ebab89a8d48321"><div class="ttname"><a href="LinkedList_8c.html#a84b0ad14e7cebcd7b9ebab89a8d48321">ListPopTail</a></div><div class="ttdeci">void * ListPopTail(List *aList)</div><div class="ttdoc">Removes but does not free the last item in a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:306</div></div>
  601. <div class="ttc" id="astructSuback_html_a18c1a08ef8f60791bd6495d4ecba0066"><div class="ttname"><a href="structSuback.html#a18c1a08ef8f60791bd6495d4ecba0066">Suback::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:173</div></div>
  602. <div class="ttc" id="astructPublish_html_abe2b6e569277a3c7fda52449e1ea31b6"><div class="ttname"><a href="structPublish.html#abe2b6e569277a3c7fda52449e1ea31b6">Publish::payload</a></div><div class="ttdeci">char * payload</div><div class="ttdoc">binary payload, length delimited</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:203</div></div>
  603. <div class="ttc" id="astructClients_html_a02e9acc54d3df8770178f16694c1f405"><div class="ttname"><a href="structClients.html#a02e9acc54d3df8770178f16694c1f405">Clients::connect_sent</a></div><div class="ttdeci">int connect_sent</div><div class="ttdoc">the current number of outbound messages on reconnect that we've sent</div><div class="ttdef"><b>Definition:</b> Clients.h:141</div></div>
  604. <div class="ttc" id="aSocketBuffer_8c_html_a524311e577a7225a09fb944904c17886"><div class="ttname"><a href="SocketBuffer_8c.html#a524311e577a7225a09fb944904c17886">SocketBuffer_getWrite</a></div><div class="ttdeci">pending_writes * SocketBuffer_getWrite(SOCKET socket)</div><div class="ttdoc">Get any queued write data for a specific socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:399</div></div>
  605. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a9cf93d98a2382b374b1e9bbf9a910d5e"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a9cf93d98a2382b374b1e9bbf9a910d5e">MQTTAsync_SSLOptions::ssl_psk_context</a></div><div class="ttdeci">void * ssl_psk_context</div><div class="ttdoc">Application-specific contex for ssl_psk_cb Exists only if struct_version &gt;= 4.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1154</div></div>
  606. <div class="ttc" id="astructClients_html_a9f88bf65b015c91ec6ae7bc827513d66"><div class="ttname"><a href="structClients.html#a9f88bf65b015c91ec6ae7bc827513d66">Clients::password</a></div><div class="ttdeci">const void * password</div><div class="ttdoc">MQTT v3.1 binary password.</div><div class="ttdef"><b>Definition:</b> Clients.h:123</div></div>
  607. <div class="ttc" id="aMQTTProtocolClient_8c_html_a5906689ff10dc091d1a2b317295d39b0"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a5906689ff10dc091d1a2b317295d39b0">MQTTProtocol_writeAvailable</a></div><div class="ttdeci">void MQTTProtocol_writeAvailable(SOCKET socket)</div><div class="ttdoc">Callback that is invoked when the socket is available for writing.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:1009</div></div>
  608. <div class="ttc" id="aSocketBuffer_8c_html_abc8599ffc6f7ad91a7748e5d78bbd926"><div class="ttname"><a href="SocketBuffer_8c.html#abc8599ffc6f7ad91a7748e5d78bbd926">SocketBuffer_initialize</a></div><div class="ttdeci">int SocketBuffer_initialize(void)</div><div class="ttdoc">Initialize the socketBuffer module.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:102</div></div>
  609. <div class="ttc" id="aMQTTPacket_8c_html_a908f81381b1720e4a53d15c1c4690f5c"><div class="ttname"><a href="MQTTPacket_8c.html#a908f81381b1720e4a53d15c1c4690f5c">MQTTPacket_send_pubcomp</a></div><div class="ttdeci">int MQTTPacket_send_pubcomp(int MQTTVersion, int msgid, networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PUBCOMP packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:774</div></div>
  610. <div class="ttc" id="astructMQTTClient__willOptions_html_af05e1e3e865af050c5fefac5e597cc7a"><div class="ttname"><a href="structMQTTClient__willOptions.html#af05e1e3e865af050c5fefac5e597cc7a">MQTTClient_willOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:630</div></div>
  611. <div class="ttc" id="astructClients_html_a19263eecc43962ac977832e124b4529f"><div class="ttname"><a href="structClients.html#a19263eecc43962ac977832e124b4529f">Clients::messageQueue</a></div><div class="ttdeci">List * messageQueue</div><div class="ttdoc">inbound complete but undelivered messages</div><div class="ttdef"><b>Definition:</b> Clients.h:142</div></div>
  612. <div class="ttc" id="astructClients_html_a9853b4a06c38478148ab09fe9ccff423"><div class="ttname"><a href="structClients.html#a9853b4a06c38478148ab09fe9ccff423">Clients::cleansession</a></div><div class="ttdeci">unsigned int cleansession</div><div class="ttdoc">MQTT V3 clean session flag.</div><div class="ttdef"><b>Definition:</b> Clients.h:124</div></div>
  613. <div class="ttc" id="astructMQTTAsync__successData5_html_a2a1956f782970dfdc24bb521bd90452b"><div class="ttname"><a href="structMQTTAsync__successData5.html#a2a1956f782970dfdc24bb521bd90452b">MQTTAsync_successData5::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT being used</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:628</div></div>
  614. <div class="ttc" id="aMQTTPacket_8c_html_a8167e3188a4bdcfb30c10e0d76c82afe"><div class="ttname"><a href="MQTTPacket_8c.html#a8167e3188a4bdcfb30c10e0d76c82afe">MQTTPacket_send_pubrec</a></div><div class="ttdeci">int MQTTPacket_send_pubrec(int MQTTVersion, int msgid, networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PUBREC packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:733</div></div>
  615. <div class="ttc" id="aMQTTPacket_8c_html_a51f58f1c7864f9fe87b55cc6ccb10129"><div class="ttname"><a href="MQTTPacket_8c.html#a51f58f1c7864f9fe87b55cc6ccb10129">MQTTPacket_send</a></div><div class="ttdeci">int MQTTPacket_send(networkHandles *net, Header header, char *buffer, size_t buflen, int freeData, int MQTTVersion)</div><div class="ttdoc">Sends an MQTT packet in one system call write.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:193</div></div>
  616. <div class="ttc" id="astructMQTTAsync__message_html_a2c8572ec595842768848982321835bfe"><div class="ttname"><a href="structMQTTAsync__message.html#a2c8572ec595842768848982321835bfe">MQTTAsync_message::msgid</a></div><div class="ttdeci">int msgid</div><div class="ttdoc">The message identifier is reserved for internal use by the MQTT client and server.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:327</div></div>
  617. <div class="ttc" id="astructMQTTAsync__nameValue_html_abbedbc0cab6677016451fe6c62553f35"><div class="ttname"><a href="structMQTTAsync__nameValue.html#abbedbc0cab6677016451fe6c62553f35">MQTTAsync_nameValue::value</a></div><div class="ttdeci">const char * value</div><div class="ttdoc">value string</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1185</div></div>
  618. <div class="ttc" id="aThread_8c_html_a3b9b6cb543ee55442d2037a971f651db"><div class="ttname"><a href="Thread_8c.html#a3b9b6cb543ee55442d2037a971f651db">Thread_create_sem</a></div><div class="ttdeci">sem_type Thread_create_sem(int *rc)</div><div class="ttdoc">Create a new semaphore.</div><div class="ttdef"><b>Definition:</b> Thread.c:216</div></div>
  619. <div class="ttc" id="astructMQTTClient__SSLOptions_html_ac2df368c72cfaa432f90e3b657bd0883"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#ac2df368c72cfaa432f90e3b657bd0883">MQTTClient_SSLOptions::protos_len</a></div><div class="ttdeci">unsigned int protos_len</div><div class="ttdoc">The length of the vector protos vector Exists only if struct_version &gt;= 5.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:779</div></div>
  620. <div class="ttc" id="aSocket_8c_html_a9da80ce7e69ae76dee95c94a2349c462"><div class="ttname"><a href="Socket_8c.html#a9da80ce7e69ae76dee95c94a2349c462">Socket_close</a></div><div class="ttdeci">int Socket_close(SOCKET socket)</div><div class="ttdoc">Close a socket and remove it from the select list.</div><div class="ttdef"><b>Definition:</b> Socket.c:935</div></div>
  621. <div class="ttc" id="aLog_8c_html_ab0c0e8addd9dc5b2a54aafa15b606435"><div class="ttname"><a href="Log_8c.html#ab0c0e8addd9dc5b2a54aafa15b606435">max_lines_per_file</a></div><div class="ttdeci">static int max_lines_per_file</div><div class="ttdoc">maximum number of lines to write to one trace file</div><div class="ttdef"><b>Definition:</b> Log.c:107</div></div>
  622. <div class="ttc" id="astructTree_html"><div class="ttname"><a href="structTree.html">Tree</a></div><div class="ttdoc">Structure to hold all data for one tree.</div><div class="ttdef"><b>Definition:</b> Tree.h:76</div></div>
  623. <div class="ttc" id="astructstorageElement_html_a0d617635e796eaa92ace8cb5cd6d0925"><div class="ttname"><a href="structstorageElement.html#a0d617635e796eaa92ace8cb5cd6d0925">storageElement::ptr</a></div><div class="ttdeci">void * ptr</div><div class="ttdoc">pointer to the allocated storage</div><div class="ttdef"><b>Definition:</b> Heap.c:72</div></div>
  624. <div class="ttc" id="astructClients_html_a1d9f8325aa92c6f65a285e823091bbe1"><div class="ttname"><a href="structClients.html#a1d9f8325aa92c6f65a285e823091bbe1">Clients::outboundMsgs</a></div><div class="ttdeci">List * outboundMsgs</div><div class="ttdoc">outbound in flight messages</div><div class="ttdef"><b>Definition:</b> Clients.h:139</div></div>
  625. <div class="ttc" id="astructstorageElement_html"><div class="ttname"><a href="structstorageElement.html">storageElement</a></div><div class="ttdoc">Each item on the heap is recorded with this structure.</div><div class="ttdef"><b>Definition:</b> Heap.c:68</div></div>
  626. <div class="ttc" id="astructMQTTAsync__connectData_html_ac239ae2f64049458d1b7ae6110c86657"><div class="ttname"><a href="structMQTTAsync__connectData.html#ac239ae2f64049458d1b7ae6110c86657">MQTTAsync_connectData::username</a></div><div class="ttdeci">const char * username</div><div class="ttdoc">MQTT servers that support the MQTT v3.1 protocol provide authentication and authorisation by user nam...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:477</div></div>
  627. <div class="ttc" id="astructMQTTClient__createOptions_html"><div class="ttname"><a href="structMQTTClient__createOptions.html">MQTTClient_createOptions</a></div><div class="ttdoc">Options for the MQTTClient_createWithOptions call.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:548</div></div>
  628. <div class="ttc" id="aMQTTProtocolClient_8c_html_ac753a3ad12292a0a9c2f4343bd33817e"><div class="ttname"><a href="MQTTProtocolClient_8c.html#ac753a3ad12292a0a9c2f4343bd33817e">MQTTProtocol_storePublication</a></div><div class="ttdeci">Publications * MQTTProtocol_storePublication(Publish *publish, int *len)</div><div class="ttdoc">Store message data for possible retry.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:262</div></div>
  629. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a997877b8c152310bc342202807ea1165"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a997877b8c152310bc342202807ea1165">MQTTClient_SSLOptions::ssl_error_cb</a></div><div class="ttdeci">int(* ssl_error_cb)(const char *str, size_t len, void *u)</div><div class="ttdoc">Callback function for OpenSSL error handler ERR_print_errors_cb Exists only if struct_version &gt;= 3.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:738</div></div>
  630. <div class="ttc" id="astructMQTTClient__persistence_html_ae58084438624ad267f7c050debd1b2ff"><div class="ttname"><a href="structMQTTClient__persistence.html#ae58084438624ad267f7c050debd1b2ff">MQTTClient_persistence::popen</a></div><div class="ttdeci">Persistence_open popen</div><div class="ttdoc">A function pointer to an implementation of Persistence_open().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:223</div></div>
  631. <div class="ttc" id="aThread_8c_html_ac023f527bed9c6c3a20244fa7efe272c"><div class="ttname"><a href="Thread_8c.html#ac023f527bed9c6c3a20244fa7efe272c">Thread_post_sem</a></div><div class="ttdeci">int Thread_post_sem(sem_type sem)</div><div class="ttdoc">Post a semaphore.</div><div class="ttdef"><b>Definition:</b> Thread.c:332</div></div>
  632. <div class="ttc" id="aSocket_8c_html_a550291985042dc080825ab27b16894fb"><div class="ttname"><a href="Socket_8c.html#a550291985042dc080825ab27b16894fb">Socket_writev</a></div><div class="ttdeci">int Socket_writev(SOCKET socket, iobuf *iovecs, int count, unsigned long *bytes)</div><div class="ttdoc">Attempts to write a series of iovec buffers to a socket in one system call so that they are sent as o...</div><div class="ttdef"><b>Definition:</b> Socket.c:690</div></div>
  633. <div class="ttc" id="autf-8_8c_html_a4f3cf77538d867bb5b421bcb687dccdf"><div class="ttname"><a href="utf-8_8c.html#a4f3cf77538d867bb5b421bcb687dccdf">UTF8_validateString</a></div><div class="ttdeci">int UTF8_validateString(const char *string)</div><div class="ttdoc">Validate a null-terminated string has only UTF-8 characters.</div><div class="ttdef"><b>Definition:</b> utf-8.c:156</div></div>
  634. <div class="ttc" id="aSocket_8c_html_a01e567eb0c5db3193aaa02f117fd1137"><div class="ttname"><a href="Socket_8c.html#a01e567eb0c5db3193aaa02f117fd1137">Socket_getch</a></div><div class="ttdeci">int Socket_getch(SOCKET socket, char *c)</div><div class="ttdoc">Reads one byte from a socket.</div><div class="ttdef"><b>Definition:</b> Socket.c:589</div></div>
  635. <div class="ttc" id="aMQTTPacket_8c_html_aadd77a4fa1b2d5c7791e3542c56af856"><div class="ttname"><a href="MQTTPacket_8c.html#aadd77a4fa1b2d5c7791e3542c56af856">MQTTPacket_encode</a></div><div class="ttdeci">int MQTTPacket_encode(char *buf, size_t length)</div><div class="ttdoc">Encodes the message length according to the MQTT algorithm.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:300</div></div>
  636. <div class="ttc" id="astructMQTTAsync__successData_html_af3eef8b306fc96c9a0e36f2d0fd1e322"><div class="ttname"><a href="structMQTTAsync__successData.html#af3eef8b306fc96c9a0e36f2d0fd1e322">MQTTAsync_successData::destinationName</a></div><div class="ttdeci">char * destinationName</div><div class="ttdoc">the topic destination for the message</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:587</div></div>
  637. <div class="ttc" id="astructMQTTAsync__connectData_html_afb621feeaf54da918d9c5cfd084a1656"><div class="ttname"><a href="structMQTTAsync__connectData.html#afb621feeaf54da918d9c5cfd084a1656">MQTTAsync_connectData::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:470</div></div>
  638. <div class="ttc" id="astructClients_html_adc2f2a83ccacde92ad6b4ee304fc3e6a"><div class="ttname"><a href="structClients.html#adc2f2a83ccacde92ad6b4ee304fc3e6a">Clients::connected</a></div><div class="ttdeci">unsigned int connected</div><div class="ttdoc">whether it is currently connected</div><div class="ttdef"><b>Definition:</b> Clients.h:126</div></div>
  639. <div class="ttc" id="aLinkedList_8c_html_abc7a28449893dfa775c2f709349968b4"><div class="ttname"><a href="LinkedList_8c.html#abc7a28449893dfa775c2f709349968b4">ListAppend</a></div><div class="ttdeci">ListElement * ListAppend(List *aList, void *content, size_t size)</div><div class="ttdoc">Append an item to a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:90</div></div>
  640. <div class="ttc" id="aMQTTProtocolOut_8c_html_a0b9648549a1a132eecadb74df2e84f57"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a0b9648549a1a132eecadb74df2e84f57">MQTTProtocol_handleUnsubacks</a></div><div class="ttdeci">int MQTTProtocol_handleUnsubacks(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming unsuback packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:444</div></div>
  641. <div class="ttc" id="aMQTTProtocolOut_8c_html_ae9a2970a33893540e42ff5a8d95411dc"><div class="ttname"><a href="MQTTProtocolOut_8c.html#ae9a2970a33893540e42ff5a8d95411dc">MQTTProtocol_addressPort</a></div><div class="ttdeci">size_t MQTTProtocol_addressPort(const char *uri, int *port, const char **topic, int default_port)</div><div class="ttdoc">Separates an address:port into two separate values.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:56</div></div>
  642. <div class="ttc" id="astructheap__info_html_a26c9bfacf416872c953138adc64e1a3d"><div class="ttname"><a href="structheap__info.html#a26c9bfacf416872c953138adc64e1a3d">heap_info::current_size</a></div><div class="ttdeci">size_t current_size</div><div class="ttdoc">current size of the heap in bytes</div><div class="ttdef"><b>Definition:</b> Heap.h:64</div></div>
  643. <div class="ttc" id="astructClients_html_a57ec2f443b8de574ede8a62a6a3212db"><div class="ttname"><a href="structClients.html#a57ec2f443b8de574ede8a62a6a3212db">Clients::beforeWrite_context</a></div><div class="ttdeci">void * beforeWrite_context</div><div class="ttdoc">context to be used with the persistence beforeWrite callbacks</div><div class="ttdef"><b>Definition:</b> Clients.h:149</div></div>
  644. <div class="ttc" id="astructMQTTSubscribe__options_html_a2fe9d45e9ee31af976a232584d5a2409"><div class="ttname"><a href="structMQTTSubscribe__options.html#a2fe9d45e9ee31af976a232584d5a2409">MQTTSubscribe_options::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:38</div></div>
  645. <div class="ttc" id="aLinkedList_8c_html_ab82181e0c1d96954f82dee67cee41296"><div class="ttname"><a href="LinkedList_8c.html#ab82181e0c1d96954f82dee67cee41296">ListUnlink</a></div><div class="ttdeci">static int ListUnlink(List *aList, void *content, int(*callback)(void *, void *), int freeContent)</div><div class="ttdoc">Removes and optionally frees an element in a list by comparing the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:201</div></div>
  646. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a7f4026dad0479c6658aac68d719950a1"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a7f4026dad0479c6658aac68d719950a1">MQTTAsync_connectOptions::retryInterval</a></div><div class="ttdeci">int retryInterval</div><div class="ttdoc">The time interval in seconds after which unacknowledged publish requests are retried during a TCP ses...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1279</div></div>
  647. <div class="ttc" id="aMQTTProtocolClient_8c_html_ab9c5a22f0cbd4fa648663de7ae7118ab"><div class="ttname"><a href="MQTTProtocolClient_8c.html#ab9c5a22f0cbd4fa648663de7ae7118ab">MQTTProtocol_emptyMessageList</a></div><div class="ttdeci">void MQTTProtocol_emptyMessageList(List *msgList)</div><div class="ttdoc">Empty a message list, leaving it able to accept new messages.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:973</div></div>
  648. <div class="ttc" id="aunionHeader_html_afa52b52e4b84075cf31612a6ac3a0299"><div class="ttname"><a href="unionHeader.html#afa52b52e4b84075cf31612a6ac3a0299">Header::retain</a></div><div class="ttdeci">bool retain</div><div class="ttdoc">retained flag bit</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:77</div></div>
  649. <div class="ttc" id="aMQTTPacket_8c_html_a4536b1c36ed06171f20baeb69c01aa02"><div class="ttname"><a href="MQTTPacket_8c.html#a4536b1c36ed06171f20baeb69c01aa02">packet_names</a></div><div class="ttdeci">static const char * packet_names[]</div><div class="ttdoc">List of the predefined MQTT v3/v5 packet names.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:50</div></div>
  650. <div class="ttc" id="aMQTTProtocolOut_8c_html_a69083f5a059d129d1030140ec1cd3d58"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a69083f5a059d129d1030140ec1cd3d58">MQTTProtocol_unsubscribe</a></div><div class="ttdeci">int MQTTProtocol_unsubscribe(Clients *client, List *topics, int msgID, MQTTProperties *props)</div><div class="ttdoc">MQTT outgoing unsubscribe processing for a client.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:427</div></div>
  651. <div class="ttc" id="aLog_8c_html_a411530253569ea29a964f13204da8848"><div class="ttname"><a href="Log_8c.html#a411530253569ea29a964f13204da8848">_unlink</a></div><div class="ttdeci">#define _unlink</div><div class="ttdoc">_unlink mapping for linux</div><div class="ttdef"><b>Definition:</b> Log.c:59</div></div>
  652. <div class="ttc" id="astructPacketBuffers_html_a286d27793c957cc729d40272b31a1b53"><div class="ttname"><a href="structPacketBuffers.html#a286d27793c957cc729d40272b31a1b53">PacketBuffers::buffers</a></div><div class="ttdeci">char ** buffers</div><div class="ttdoc">number of buffers/buflens/frees</div><div class="ttdef"><b>Definition:</b> Socket.h:102</div></div>
  653. <div class="ttc" id="astructClients_html_a9495d5b5b191a897c05ea8d298e6d6b5"><div class="ttname"><a href="structClients.html#a9495d5b5b191a897c05ea8d298e6d6b5">Clients::outboundQueue</a></div><div class="ttdeci">List * outboundQueue</div><div class="ttdoc">outbound queued messages</div><div class="ttdef"><b>Definition:</b> Clients.h:143</div></div>
  654. <div class="ttc" id="aMQTTPacket_8c_html_ae1ec2d8714335c6ec88c93e957b644d2"><div class="ttname"><a href="MQTTPacket_8c.html#ae1ec2d8714335c6ec88c93e957b644d2">readUTFlen</a></div><div class="ttdeci">static char * readUTFlen(char **pptr, char *enddata, int *len)</div><div class="ttdoc">Reads a &quot;UTF&quot; string from the input buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:383</div></div>
  655. <div class="ttc" id="astructMQTTClient__connectOptions_html_a8f0e7e9e217a913fa8e200e2d5e45f6e"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a8f0e7e9e217a913fa8e200e2d5e45f6e">MQTTClient_connectOptions::password</a></div><div class="ttdeci">const char * password</div><div class="ttdoc">MQTT servers that support the MQTT v3.1.1 protocol provide authentication and authorisation by user n...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:898</div></div>
  656. <div class="ttc" id="aMQTTPacketOut_8c_html_a1ad4c9b76c6ab88c394ee925eb4dcd44"><div class="ttname"><a href="MQTTPacketOut_8c.html#a1ad4c9b76c6ab88c394ee925eb4dcd44">MQTTPacket_send_unsubscribe</a></div><div class="ttdeci">int MQTTPacket_send_unsubscribe(List *topics, MQTTProperties *props, int msgid, int dup, Clients *client)</div><div class="ttdoc">Send an MQTT unsubscribe packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:362</div></div>
  657. <div class="ttc" id="astructMQTTClient__connectOptions_html_a82e337534835601827defa911325299a"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a82e337534835601827defa911325299a">MQTTClient_connectOptions::username</a></div><div class="ttdeci">const char * username</div><div class="ttdoc">MQTT servers that support the MQTT v3.1.1 protocol provide authentication and authorisation by user n...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:892</div></div>
  658. <div class="ttc" id="astructAck_html"><div class="ttname"><a href="structAck.html">Ack</a></div><div class="ttdoc">Data for one of the ack packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:214</div></div>
  659. <div class="ttc" id="aMQTTProtocolClient_8c_html_a89588f085edc5cee4eb650e8ad114df4"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a89588f085edc5cee4eb650e8ad114df4">MQTTStrdup</a></div><div class="ttdeci">char * MQTTStrdup(const char *src)</div><div class="ttdoc">Duplicate a string, safely, allocating space on the heap.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:1081</div></div>
  660. <div class="ttc" id="aMQTTPacket_8c_html_af3ddd9c1a35d51bf70f44a1aa6fa0bba"><div class="ttname"><a href="MQTTPacket_8c.html#af3ddd9c1a35d51bf70f44a1aa6fa0bba">MQTTPacket_header_only</a></div><div class="ttdeci">void * MQTTPacket_header_only(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create packets which have only a header.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:498</div></div>
  661. <div class="ttc" id="aSocket_8c_html_af365aa1d5a29ffcb83bb15edaf3401e6"><div class="ttname"><a href="Socket_8c.html#af365aa1d5a29ffcb83bb15edaf3401e6">Socket_outTerminate</a></div><div class="ttdeci">void Socket_outTerminate(void)</div><div class="ttdoc">Terminate the socket module.</div><div class="ttdef"><b>Definition:</b> Socket.c:171</div></div>
  662. <div class="ttc" id="astructMQTTAsync__queuedCommand_html"><div class="ttname"><a href="structMQTTAsync__queuedCommand.html">MQTTAsync_queuedCommand</a></div><div class="ttdef"><b>Definition:</b> MQTTAsyncUtils.h:149</div></div>
  663. <div class="ttc" id="astructnameToType_html"><div class="ttname"><a href="structnameToType.html">nameToType</a></div><div class="ttdef"><b>Definition:</b> MQTTProperties.c:28</div></div>
  664. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a2290cec827700b22efca37ea4bce3abd"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a2290cec827700b22efca37ea4bce3abd">MQTTAsync_connectOptions::httpProxy</a></div><div class="ttdeci">const char * httpProxy</div><div class="ttdoc">HTTP proxy.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1376</div></div>
  665. <div class="ttc" id="astructMQTTClient__persistence_html_a049d548dc2bbe906309a9f869a60653c"><div class="ttname"><a href="structMQTTClient__persistence.html#a049d548dc2bbe906309a9f869a60653c">MQTTClient_persistence::pcontainskey</a></div><div class="ttdeci">Persistence_containskey pcontainskey</div><div class="ttdoc">A function pointer to an implementation of Persistence_containskey().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:251</div></div>
  666. <div class="ttc" id="astructMQTTSubscribe__options_html_a8375543f39c16e32698226db118076e6"><div class="ttname"><a href="structMQTTSubscribe__options.html#a8375543f39c16e32698226db118076e6">MQTTSubscribe_options::retainHandling</a></div><div class="ttdeci">unsigned char retainHandling</div><div class="ttdoc">0 - send retained messages at the time of the subscribe (original MQTT behaviour) 1 - send retained m...</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:55</div></div>
  667. <div class="ttc" id="aMQTTClient_8c_html_a9a0518d9ca924d12c1329dbe3de5f2b6"><div class="ttname"><a href="MQTTClient_8c.html#a9a0518d9ca924d12c1329dbe3de5f2b6">MQTTClient_create</a></div><div class="ttdeci">int MQTTClient_create(MQTTClient *handle, const char *serverURI, const char *clientId, int persistence_type, void *persistence_context)</div><div class="ttdoc">This function creates an MQTT client ready for connection to the specified server and using the speci...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:534</div></div>
  668. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_ad8a30361f986c6f32ee33e59591d736b"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#ad8a30361f986c6f32ee33e59591d736b">MQTTAsync_disconnectOptions::onSuccess5</a></div><div class="ttdeci">MQTTAsync_onSuccess5 * onSuccess5</div><div class="ttdoc">A pointer to a callback function to be called if the disconnect successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1469</div></div>
  669. <div class="ttc" id="aMQTTPersistence_8c_html_ab4f6437946ac80d5f9e882e92e59cc5c"><div class="ttname"><a href="MQTTPersistence_8c.html#ab4f6437946ac80d5f9e882e92e59cc5c">MQTTPersistence_restoreMessageQueue</a></div><div class="ttdeci">int MQTTPersistence_restoreMessageQueue(Clients *c)</div><div class="ttdoc">Restores a queue of messages from persistence to memory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:856</div></div>
  670. <div class="ttc" id="aMessages_8c_html_ab0c342273f8f7d3c206314ae8215a14c"><div class="ttname"><a href="Messages_8c.html#ab0c342273f8f7d3c206314ae8215a14c">Messages_get</a></div><div class="ttdeci">const char * Messages_get(int index, enum LOG_LEVELS log_level)</div><div class="ttdoc">Get a log message by its index.</div><div class="ttdef"><b>Definition:</b> Messages.c:95</div></div>
  671. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a6240108041774c99720c17afa45d4814"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a6240108041774c99720c17afa45d4814">MQTTAsync_SSLOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1080</div></div>
  672. <div class="ttc" id="aMQTTPacket_8c_html_a132d2d5b304d37cd2348a973f7b315de"><div class="ttname"><a href="MQTTPacket_8c.html#a132d2d5b304d37cd2348a973f7b315de">readInt</a></div><div class="ttdeci">int readInt(char **pptr)</div><div class="ttdoc">Calculates an integer from two bytes read from the input buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:362</div></div>
  673. <div class="ttc" id="astructtrace__settings__type_html"><div class="ttname"><a href="structtrace__settings__type.html">trace_settings_type</a></div><div class="ttdef"><b>Definition:</b> Log.h:63</div></div>
  674. <div class="ttc" id="aTree_8c_html_afa8473167abb71831644bf8a322bc3b6"><div class="ttname"><a href="Tree_8c.html#afa8473167abb71831644bf8a322bc3b6">TreeAddByIndex</a></div><div class="ttdeci">void * TreeAddByIndex(Tree *aTree, void *content, size_t size, int index)</div><div class="ttdoc">Add an item to a tree.</div><div class="ttdef"><b>Definition:</b> Tree.c:210</div></div>
  675. <div class="ttc" id="astructnetworkHandles_html_a01839c3f477c9f737c13f7e2c994e5cc"><div class="ttname"><a href="structnetworkHandles.html#a01839c3f477c9f737c13f7e2c994e5cc">networkHandles::websocket</a></div><div class="ttdeci">int websocket</div><div class="ttdoc">socket has been upgraded to use web sockets</div><div class="ttdef"><b>Definition:</b> Clients.h:93</div></div>
  676. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a183af235478d93a6b14c204e9e291bab"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a183af235478d93a6b14c204e9e291bab">MQTTClient_SSLOptions::privateKeyPassword</a></div><div class="ttdeci">const char * privateKeyPassword</div><div class="ttdoc">The password to load the client's privateKey if encrypted.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:699</div></div>
  677. <div class="ttc" id="astructMQTTAsync__init__options_html"><div class="ttname"><a href="structMQTTAsync__init__options.html">MQTTAsync_init_options</a></div><div class="ttdoc">Initialization options.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:231</div></div>
  678. <div class="ttc" id="astructMQTTClient__persistence_html_a4eb919940dcc01a005abcdeb08a7eb10"><div class="ttname"><a href="structMQTTClient__persistence.html#a4eb919940dcc01a005abcdeb08a7eb10">MQTTClient_persistence::pclear</a></div><div class="ttdeci">Persistence_clear pclear</div><div class="ttdoc">A function pointer to an implementation of Persistence_clear().</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:247</div></div>
  679. <div class="ttc" id="aMQTTPersistence_8c_html_adbf5881a3c6ce9bd7062182dfffe27fa"><div class="ttname"><a href="MQTTPersistence_8c.html#adbf5881a3c6ce9bd7062182dfffe27fa">MQTTPersistence_wrapMsgID</a></div><div class="ttdeci">void MQTTPersistence_wrapMsgID(Clients *client)</div><div class="ttdoc">Checks whether the message IDs wrapped by looking for the largest gap between two consecutive message...</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:605</div></div>
  680. <div class="ttc" id="astructMQTTAsync__message_html_a6e0971dbde0f04b6dd3bfab97ad5cdb7"><div class="ttname"><a href="structMQTTAsync__message.html#a6e0971dbde0f04b6dd3bfab97ad5cdb7">MQTTAsync_message::qos</a></div><div class="ttdeci">int qos</div><div class="ttdoc">The quality of service (QoS) assigned to the message.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:295</div></div>
  681. <div class="ttc" id="astructMQTTAsync__failureData_html_a9f3af8dc8c24876c319bc466188440d7"><div class="ttname"><a href="structMQTTAsync__failureData.html#a9f3af8dc8c24876c319bc466188440d7">MQTTAsync_failureData::token</a></div><div class="ttdeci">MQTTAsync_token token</div><div class="ttdoc">A token identifying the failed request.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:538</div></div>
  682. <div class="ttc" id="astructPublish_html_ac1076c8b1dc5793c498f098f0a0d78cd"><div class="ttname"><a href="structPublish.html#ac1076c8b1dc5793c498f098f0a0d78cd">Publish::msgId</a></div><div class="ttdeci">int msgId</div><div class="ttdoc">MQTT message id.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:202</div></div>
  683. <div class="ttc" id="aHeap_8c_html_a20b83c8e52be131ca41d22b8bf2c3b38"><div class="ttname"><a href="Heap_8c.html#a20b83c8e52be131ca41d22b8bf2c3b38">state</a></div><div class="ttdeci">static heap_info state</div><div class="ttdoc">global heap state information</div><div class="ttdef"><b>Definition:</b> Heap.c:58</div></div>
  684. <div class="ttc" id="astructMQTTClient__connectOptions_html_aabeb07cc7a2aa18fc1fb365503185c62"><div class="ttname"><a href="structMQTTClient__connectOptions.html#aabeb07cc7a2aa18fc1fb365503185c62">MQTTClient_connectOptions::retryInterval</a></div><div class="ttdeci">int retryInterval</div><div class="ttdoc">The time interval in seconds after which unacknowledged publish requests are retried during a TCP ses...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:910</div></div>
  685. <div class="ttc" id="astructTree_html_a9c7cc2fbf66ff51c0d90be03f3562c84"><div class="ttname"><a href="structTree.html#a9c7cc2fbf66ff51c0d90be03f3562c84">Tree::compare</a></div><div class="ttdeci">int(* compare)(void *, void *, int)</div><div class="ttdoc">comparison function</div><div class="ttdef"><b>Definition:</b> Tree.h:81</div></div>
  686. <div class="ttc" id="astructMQTTAsync__responseOptions_html_aaf6926989620579f2590cdaf1ff16bfe"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#aaf6926989620579f2590cdaf1ff16bfe">MQTTAsync_responseOptions::token</a></div><div class="ttdeci">MQTTAsync_token token</div><div class="ttdoc">A token is returned from the call.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:739</div></div>
  687. <div class="ttc" id="astructSuback_html_a7769bd0751e462641636354d36505c28"><div class="ttname"><a href="structSuback.html#a7769bd0751e462641636354d36505c28">Suback::qoss</a></div><div class="ttdeci">List * qoss</div><div class="ttdoc">list of granted QoSs (MQTT 3/4) / reason codes (MQTT 5)</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:177</div></div>
  688. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_a9947024802d3fb16fc050f4741a46e04"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#a9947024802d3fb16fc050f4741a46e04">MQTTAsync_SSLOptions::protos</a></div><div class="ttdeci">const unsigned char * protos</div><div class="ttdoc">The protocol-lists must be in wire-format, which is defined as a vector of non-empty,...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1170</div></div>
  689. <div class="ttc" id="aThread_8c_html_a7e92185eb22775c76e1b6b8865468f17"><div class="ttname"><a href="Thread_8c.html#a7e92185eb22775c76e1b6b8865468f17">Thread_lock_mutex</a></div><div class="ttdeci">int Thread_lock_mutex(mutex_type mutex)</div><div class="ttdoc">Lock a mutex which has alrea.</div><div class="ttdef"><b>Definition:</b> Thread.c:137</div></div>
  690. <div class="ttc" id="aSocketBuffer_8c_html_a39f1ee9c98bc12a7be4d7a40b03550d5"><div class="ttname"><a href="SocketBuffer_8c.html#a39f1ee9c98bc12a7be4d7a40b03550d5">pending_socketcompare</a></div><div class="ttdeci">int pending_socketcompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing pending_writes by socket.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:388</div></div>
  691. <div class="ttc" id="astructClients_html_a429110f440ce0de51d60324fa8b8cc57"><div class="ttname"><a href="structClients.html#a429110f440ce0de51d60324fa8b8cc57">Clients::afterRead_context</a></div><div class="ttdeci">void * afterRead_context</div><div class="ttdoc">context to be used with the persistence afterRead callback</div><div class="ttdef"><b>Definition:</b> Clients.h:150</div></div>
  692. <div class="ttc" id="aMQTTClient_8c_html_a58356c13867f18df60fd4c7ec9457c48"><div class="ttname"><a href="MQTTClient_8c.html#a58356c13867f18df60fd4c7ec9457c48">MQTTClient_unsubscribe5</a></div><div class="ttdeci">MQTTResponse MQTTClient_unsubscribe5(MQTTClient handle, const char *topic, MQTTProperties *props)</div><div class="ttdoc">This function attempts to remove an existing subscription made by the specified client using MQTT 5....</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2306</div></div>
  693. <div class="ttc" id="astructClients_html_ad0aaa6d9fce1f8196ff859df00716055"><div class="ttname"><a href="structClients.html#ad0aaa6d9fce1f8196ff859df00716055">Clients::msgID</a></div><div class="ttdeci">int msgID</div><div class="ttdoc">the MQTT message id</div><div class="ttdef"><b>Definition:</b> Clients.h:133</div></div>
  694. <div class="ttc" id="astructMQTTClient__SSLOptions_html_ad3db47e7874990570d03758a3fa28dad"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#ad3db47e7874990570d03758a3fa28dad">MQTTClient_SSLOptions::protos</a></div><div class="ttdeci">const unsigned char * protos</div><div class="ttdoc">The protocol-lists must be in wire-format, which is defined as a vector of non-empty,...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:773</div></div>
  695. <div class="ttc" id="aMQTTPersistence_8c_html_a6f6056b7418b66a3786a5028b2357a86"><div class="ttname"><a href="MQTTPersistence_8c.html#a6f6056b7418b66a3786a5028b2357a86">MQTTPersistence_clear</a></div><div class="ttdeci">int MQTTPersistence_clear(Clients *c)</div><div class="ttdoc">Clears the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:166</div></div>
  696. <div class="ttc" id="aSocketBuffer_8c_html_ace376d23d15b97a487298fa0c8a238ea"><div class="ttname"><a href="SocketBuffer_8c.html#ace376d23d15b97a487298fa0c8a238ea">def_queue</a></div><div class="ttdeci">static socket_queue * def_queue</div><div class="ttdoc">Default input queue buffer.</div><div class="ttdef"><b>Definition:</b> SocketBuffer.c:45</div></div>
  697. <div class="ttc" id="astructPublish_html_a8a70d60f90d1418ebf501ad33eba2e11"><div class="ttname"><a href="structPublish.html#a8a70d60f90d1418ebf501ad33eba2e11">Publish::mask</a></div><div class="ttdeci">uint8_t mask[4]</div><div class="ttdoc">the websockets mask the payload is masked with, if any</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:207</div></div>
  698. <div class="ttc" id="aLog_8c_html_aeb93e137086d574a96548cecca9e9217"><div class="ttname"><a href="Log_8c.html#aeb93e137086d574a96548cecca9e9217">Log_stackTrace</a></div><div class="ttdeci">void Log_stackTrace(enum LOG_LEVELS log_level, int msgno, thread_id_type thread_id, int current_depth, const char *name, int line, int *rc)</div><div class="ttdoc">The reason for this function is to make trace logging as fast as possible so that the function exit/e...</div><div class="ttdef"><b>Definition:</b> Log.c:456</div></div>
  699. <div class="ttc" id="aMQTTPacket_8c_html_ad89e627a37f7f7eb4355b076cd46e0b0"><div class="ttname"><a href="MQTTPacket_8c.html#ad89e627a37f7f7eb4355b076cd46e0b0">MQTTPacket_send_ack</a></div><div class="ttdeci">static int MQTTPacket_send_ack(int MQTTVersion, int type, int msgid, int dup, networkHandles *net)</div><div class="ttdoc">Send an MQTT acknowledgement packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:647</div></div>
  700. <div class="ttc" id="astructClients_html_a9fc28cb6abab3247752403043c346aa1"><div class="ttname"><a href="structClients.html#a9fc28cb6abab3247752403043c346aa1">Clients::passwordlen</a></div><div class="ttdeci">int passwordlen</div><div class="ttdoc">MQTT password length.</div><div class="ttdef"><b>Definition:</b> Clients.h:122</div></div>
  701. <div class="ttc" id="astructMQTTClient__message_html_aa24d24d388481c0616a704cabb041f95"><div class="ttname"><a href="structMQTTClient__message.html#aa24d24d388481c0616a704cabb041f95">MQTTClient_message::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">The MQTT V5 properties associated with the message.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:329</div></div>
  702. <div class="ttc" id="astructMQTTAsync__nameValue_html_ad14f405ef73f1f2aa632bb22e6b26f51"><div class="ttname"><a href="structMQTTAsync__nameValue.html#ad14f405ef73f1f2aa632bb22e6b26f51">MQTTAsync_nameValue::name</a></div><div class="ttdeci">const char * name</div><div class="ttdoc">name string</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1184</div></div>
  703. <div class="ttc" id="astructPacketBuffers_html_a3cd5992bdafa89f7e7a7083b20ff9390"><div class="ttname"><a href="structPacketBuffers.html#a3cd5992bdafa89f7e7a7083b20ff9390">PacketBuffers::frees</a></div><div class="ttdeci">int * frees</div><div class="ttdoc">array of lengths of buffers</div><div class="ttdef"><b>Definition:</b> Socket.h:104</div></div>
  704. <div class="ttc" id="aMQTTClient_8c_html_a2a617c6b0492c04a4ddea592f5e53604"><div class="ttname"><a href="MQTTClient_8c.html#a2a617c6b0492c04a4ddea592f5e53604">MQTTClient_getPendingDeliveryTokens</a></div><div class="ttdeci">int MQTTClient_getPendingDeliveryTokens(MQTTClient handle, MQTTClient_deliveryToken **tokens)</div><div class="ttdoc">This function sets a pointer to an array of delivery tokens for messages that are currently in-flight...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2894</div></div>
  705. <div class="ttc" id="aMQTTPersistence_8c_html_a385b6c191dbf51652d3e3a81813848f1"><div class="ttname"><a href="MQTTPersistence_8c.html#a385b6c191dbf51652d3e3a81813848f1">MQTTPersistence_close</a></div><div class="ttdeci">int MQTTPersistence_close(Clients *c)</div><div class="ttdoc">Close persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:137</div></div>
  706. <div class="ttc" id="astructMQTTAsync__message_html_a48ff43122b16a12b6b8a9890ebfb6410"><div class="ttname"><a href="structMQTTAsync__message.html#a48ff43122b16a12b6b8a9890ebfb6410">MQTTAsync_message::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">The MQTT V5 properties associated with the message.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:331</div></div>
  707. <div class="ttc" id="astructSuback_html_a57c418a7021b10c92aec4c4d010b7f67"><div class="ttname"><a href="structSuback.html#a57c418a7021b10c92aec4c4d010b7f67">Suback::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT 5.0 properties.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:176</div></div>
  708. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a48bd502d8028bb13afbce0793ebe3c76"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a48bd502d8028bb13afbce0793ebe3c76">MQTTAsync_connectOptions::onFailure5</a></div><div class="ttdeci">MQTTAsync_onFailure5 * onFailure5</div><div class="ttdoc">A pointer to a callback function to be called if the connect fails.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1368</div></div>
  709. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a64b106b9a2778f97d271af7c9a7940f2"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a64b106b9a2778f97d271af7c9a7940f2">pstremove</a></div><div class="ttdeci">int pstremove(void *handle, char *key)</div><div class="ttdoc">Delete a persisted message from the client persistence directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:322</div></div>
  710. <div class="ttc" id="astructMQTTAsync__failureData5_html_a9c1807e86e398de6f4846d90b4a5eda6"><div class="ttname"><a href="structMQTTAsync__failureData5.html#a9c1807e86e398de6f4846d90b4a5eda6">MQTTAsync_failureData5::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">The MQTT properties on the ack, if any.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:558</div></div>
  711. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ab72dbcdcff60e5dd79ac8fcea0e31478"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ab72dbcdcff60e5dd79ac8fcea0e31478">MQTTAsync_connectOptions::willProperties</a></div><div class="ttdeci">MQTTProperties * willProperties</div><div class="ttdoc">MQTT V5 properties for the will message in the connect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1356</div></div>
  712. <div class="ttc" id="astructMQTTAsync__successData_html"><div class="ttname"><a href="structMQTTAsync__successData.html">MQTTAsync_successData</a></div><div class="ttdoc">The data returned on completion of a successful API call in the response callback onSuccess.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:570</div></div>
  713. <div class="ttc" id="astructMQTTClient__persistence_html"><div class="ttname"><a href="structMQTTClient__persistence.html">MQTTClient_persistence</a></div><div class="ttdoc">A structure containing the function pointers to a persistence implementation and the context or state...</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:215</div></div>
  714. <div class="ttc" id="astructClients_html_a0c9720f6d2df33e40ca5a28ced0036bb"><div class="ttname"><a href="structClients.html#a0c9720f6d2df33e40ca5a28ced0036bb">Clients::keepAliveInterval</a></div><div class="ttdeci">int keepAliveInterval</div><div class="ttdoc">the MQTT keep alive interval</div><div class="ttdef"><b>Definition:</b> Clients.h:134</div></div>
  715. <div class="ttc" id="astructMQTTAsync__successData5_html_ab3131c77b8bf772ea06ee580816ebc32"><div class="ttname"><a href="structMQTTAsync__successData5.html#ab3131c77b8bf772ea06ee580816ebc32">MQTTAsync_successData5::sub</a></div><div class="ttdeci">struct MQTTAsync_successData5::@4::@5 sub</div><div class="ttdoc">For subscribeMany, the list of reasonCodes returned by the server.</div></div>
  716. <div class="ttc" id="astructUnsuback_html_a25413381d1f688248d64a82e67746108"><div class="ttname"><a href="structUnsuback.html#a25413381d1f688248d64a82e67746108">Unsuback::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">the version of MQTT</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:188</div></div>
  717. <div class="ttc" id="astructMQTTAsync__failureData_html"><div class="ttname"><a href="structMQTTAsync__failureData.html">MQTTAsync_failureData</a></div><div class="ttdoc">The data returned on completion of an unsuccessful API call in the response callback onFailure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:535</div></div>
  718. <div class="ttc" id="aunionHeader_html"><div class="ttname"><a href="unionHeader.html">Header</a></div><div class="ttdoc">Bitfields for the MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:63</div></div>
  719. <div class="ttc" id="astructList_html"><div class="ttname"><a href="structList.html">List</a></div><div class="ttdoc">Structure to hold all data for one list.</div><div class="ttdef"><b>Definition:</b> LinkedList.h:67</div></div>
  720. <div class="ttc" id="aSocket_8c_html_a65be62649c8529bcafa111e37ffcb5d2"><div class="ttname"><a href="Socket_8c.html#a65be62649c8529bcafa111e37ffcb5d2">Socket_addPendingWrite</a></div><div class="ttdeci">void Socket_addPendingWrite(SOCKET socket)</div><div class="ttdoc">Add a socket to the pending write list, so that it is checked for writing in select.</div><div class="ttdef"><b>Definition:</b> Socket.c:836</div></div>
  721. <div class="ttc" id="astructMQTTProperty_html"><div class="ttname"><a href="structMQTTProperty.html">MQTTProperty</a></div><div class="ttdoc">Structure to hold an MQTT version 5 property of any type.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:94</div></div>
  722. <div class="ttc" id="aMQTTClientPersistence_8h_html"><div class="ttname"><a href="MQTTClientPersistence_8h.html">MQTTClientPersistence.h</a></div><div class="ttdoc">This structure represents a persistent data store, used to store outbound and inbound messages,...</div></div>
  723. <div class="ttc" id="astructMQTTClient__connectOptions_html_a4c801d96d7a0013928d6a475fd48fe3c"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a4c801d96d7a0013928d6a475fd48fe3c">MQTTClient_connectOptions::httpProxy</a></div><div class="ttdeci">const char * httpProxy</div><div class="ttdoc">HTTP proxy.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:974</div></div>
  724. <div class="ttc" id="astructcond__type__struct_html"><div class="ttname"><a href="structcond__type__struct.html">cond_type_struct</a></div><div class="ttdef"><b>Definition:</b> Thread.h:55</div></div>
  725. <div class="ttc" id="aMQTTClient_8c_html_a3c0ca97b393eee10d4f441ba68830e83"><div class="ttname"><a href="MQTTClient_8c.html#a3c0ca97b393eee10d4f441ba68830e83">MQTTClient_publish5</a></div><div class="ttdeci">MQTTResponse MQTTClient_publish5(MQTTClient handle, const char *topicName, int payloadlen, const void *payload, int qos, int retained, MQTTProperties *properties, MQTTClient_deliveryToken *deliveryToken)</div><div class="ttdoc">Attempts to publish a message to a given topic using MQTT version 5.0 (see also MQTTClient_publishMes...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2323</div></div>
  726. <div class="ttc" id="astructMQTTClient__willOptions_html_af367d507f25f09942ff12376b50a5ffb"><div class="ttname"><a href="structMQTTClient__willOptions.html#af367d507f25f09942ff12376b50a5ffb">MQTTClient_willOptions::message</a></div><div class="ttdeci">const char * message</div><div class="ttdoc">The LWT payload in string form.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:634</div></div>
  727. <div class="ttc" id="astructClients_html_acb5a2bdb04148e714a123b6a14b34cb9"><div class="ttname"><a href="structClients.html#acb5a2bdb04148e714a123b6a14b34cb9">Clients::beforeWrite</a></div><div class="ttdeci">MQTTPersistence_beforeWrite * beforeWrite</div><div class="ttdoc">persistence write callback</div><div class="ttdef"><b>Definition:</b> Clients.h:147</div></div>
  728. <div class="ttc" id="astructMQTTAsync__disconnectOptions_html_af99498836b80011b4e38a9aa18772921"><div class="ttname"><a href="structMQTTAsync__disconnectOptions.html#af99498836b80011b4e38a9aa18772921">MQTTAsync_disconnectOptions::reasonCode</a></div><div class="ttdeci">enum MQTTReasonCodes reasonCode</div><div class="ttdoc">Reason code for MQTTV5 disconnect.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1463</div></div>
  729. <div class="ttc" id="astructConnack_html_ab5d35213eadd6bbecd56627b9680ac0c"><div class="ttname"><a href="structConnack.html#ab5d35213eadd6bbecd56627b9680ac0c">Connack::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT 5.0 properties.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:155</div></div>
  730. <div class="ttc" id="astructMQTTAsync__connectData_html_a8643b5dacde868343c91cf6ad68d56b8"><div class="ttname"><a href="structMQTTAsync__connectData.html#a8643b5dacde868343c91cf6ad68d56b8">MQTTAsync_connectData::binarypwd</a></div><div class="ttdeci">struct MQTTAsync_connectData::@0 binarypwd</div><div class="ttdoc">The password parameter of the MQTT authentication.</div></div>
  731. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a71b40f4b4aeb26270f4d5df001656d41"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a71b40f4b4aeb26270f4d5df001656d41">MQTTAsync_connectOptions::binarypwd</a></div><div class="ttdeci">struct MQTTAsync_connectOptions::@10 binarypwd</div><div class="ttdoc">Optional binary password.</div></div>
  732. <div class="ttc" id="aMQTTPacket_8c_html_a28f1754fe1f090d54bc3b5687fb2dd8c"><div class="ttname"><a href="MQTTPacket_8c.html#a28f1754fe1f090d54bc3b5687fb2dd8c">MQTTPacket_free_packet</a></div><div class="ttdeci">void MQTTPacket_free_packet(MQTTPacket *pack)</div><div class="ttdoc">Free allocated storage for a various packet tyoes.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:925</div></div>
  733. <div class="ttc" id="astructMQTTAsync__connectOptions_html_ad4937ddf0e089fb0e0e054ae3a3aea55"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#ad4937ddf0e089fb0e0e054ae3a3aea55">MQTTAsync_connectOptions::httpsProxy</a></div><div class="ttdeci">const char * httpsProxy</div><div class="ttdoc">HTTPS proxy.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1380</div></div>
  734. <div class="ttc" id="aHeap_8c_html_a59e53a989d69c3da767487596d9bfa1f"><div class="ttname"><a href="Heap_8c.html#a59e53a989d69c3da767487596d9bfa1f">mymalloc</a></div><div class="ttdeci">void * mymalloc(char *file, int line, size_t size)</div><div class="ttdoc">Allocates a block of memory.</div><div class="ttdef"><b>Definition:</b> Heap.c:158</div></div>
  735. <div class="ttc" id="autf-8_8c_html_afed088663f8704004425cdae2120b9b3"><div class="ttname"><a href="utf-8_8c.html#afed088663f8704004425cdae2120b9b3">len</a></div><div class="ttdeci">int len</div><div class="ttdoc">number of elements in the following array (1 to 4)</div><div class="ttdef"><b>Definition:</b> utf-8.c:46</div></div>
  736. <div class="ttc" id="astructMQTTAsync__connectOptions_html"><div class="ttname"><a href="structMQTTAsync__connectOptions.html">MQTTAsync_connectOptions</a></div><div class="ttdoc">MQTTAsync_connectOptions defines several settings that control the way the client connects to an MQTT...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1198</div></div>
  737. <div class="ttc" id="aSocket_8c_html_a12c397b0fb6187db7a66a44041055a13"><div class="ttname"><a href="Socket_8c.html#a12c397b0fb6187db7a66a44041055a13">Socket_getdata</a></div><div class="ttdeci">char * Socket_getdata(SOCKET socket, size_t bytes, size_t *actual_len, int *rc)</div><div class="ttdoc">Attempts to read a number of bytes from a socket, non-blocking.</div><div class="ttdef"><b>Definition:</b> Socket.c:627</div></div>
  738. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a1d39a3f47712791b00ec7faab14c839a"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a1d39a3f47712791b00ec7faab14c839a">MQTTAsync_responseOptions::context</a></div><div class="ttdeci">void * context</div><div class="ttdoc">A pointer to any application-specific context.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:732</div></div>
  739. <div class="ttc" id="astructsocket__queue_html_ab38f6d48de7c8905c3124ee1de4eac71"><div class="ttname"><a href="structsocket__queue.html#ab38f6d48de7c8905c3124ee1de4eac71">socket_queue::buflen</a></div><div class="ttdeci">size_t buflen</div><div class="ttdoc">total length of the buffer</div><div class="ttdef"><b>Definition:</b> SocketBuffer.h:39</div></div>
  740. <div class="ttc" id="astructMQTTResponse_html"><div class="ttname"><a href="structMQTTResponse.html">MQTTResponse</a></div><div class="ttdoc">MQTT version 5.0 response information.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:1024</div></div>
  741. <div class="ttc" id="astructMQTTAsync__SSLOptions_html_ad9e390b02afbf856c5a9267d30f09208"><div class="ttname"><a href="structMQTTAsync__SSLOptions.html#ad9e390b02afbf856c5a9267d30f09208">MQTTAsync_SSLOptions::protos_len</a></div><div class="ttdeci">unsigned int protos_len</div><div class="ttdoc">The length of the vector protos vector Exists only if struct_version &gt;= 5.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1176</div></div>
  742. <div class="ttc" id="astructList_html_a7be27419b0df1734d1028fa1729eb96c"><div class="ttname"><a href="structList.html#a7be27419b0df1734d1028fa1729eb96c">List::last</a></div><div class="ttdeci">ListElement * last</div><div class="ttdoc">last element in the list</div><div class="ttdef"><b>Definition:</b> LinkedList.h:70</div></div>
  743. <div class="ttc" id="astructMQTTClient__createOptions_html_ada7ad105de2fd2307a48a75fa598854f"><div class="ttname"><a href="structMQTTClient__createOptions.html#ada7ad105de2fd2307a48a75fa598854f">MQTTClient_createOptions::struct_id</a></div><div class="ttdeci">char struct_id[4]</div><div class="ttdoc">The eyecatcher for this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:551</div></div>
  744. <div class="ttc" id="astructClients_html"><div class="ttname"><a href="structClients.html">Clients</a></div><div class="ttdoc">Data related to one client.</div><div class="ttdef"><b>Definition:</b> Clients.h:118</div></div>
  745. <div class="ttc" id="astructClients_html_a6b2188e352433ff089b1b7d08976a63b"><div class="ttname"><a href="structClients.html#a6b2188e352433ff089b1b7d08976a63b">Clients::retryInterval</a></div><div class="ttdeci">int retryInterval</div><div class="ttdoc">the MQTT retry interval for QoS &gt; 0</div><div class="ttdef"><b>Definition:</b> Clients.h:135</div></div>
  746. <div class="ttc" id="aLinkedList_8c_html_ad2879a10b723fb7c1f95c0ad0abdbc50"><div class="ttname"><a href="LinkedList_8c.html#ad2879a10b723fb7c1f95c0ad0abdbc50">ListFind</a></div><div class="ttdeci">ListElement * ListFind(List *aList, void *content)</div><div class="ttdoc">Finds an element in a list by comparing the content pointers, rather than the contents.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:140</div></div>
  747. <div class="ttc" id="aHeap_8c_html_a5f453bffe39551109e282c904a6f2902"><div class="ttname"><a href="Heap_8c.html#a5f453bffe39551109e282c904a6f2902">Heap_unlink</a></div><div class="ttdeci">void Heap_unlink(char *file, int line, void *p)</div><div class="ttdoc">Remove an item from the recorded heap without actually freeing it.</div><div class="ttdef"><b>Definition:</b> Heap.c:300</div></div>
  748. <div class="ttc" id="astructws__frame_html_a03099256dd943b73f0558039b6ff4c6b"><div class="ttname"><a href="structws__frame.html#a03099256dd943b73f0558039b6ff4c6b">ws_frame::pos</a></div><div class="ttdeci">size_t pos</div><div class="ttdoc">current position within the buffer</div><div class="ttdef"><b>Definition:</b> WebSocket.c:147</div></div>
  749. <div class="ttc" id="aThread_8c_html_a5faf758226199e7cf93f6b489aca07f7"><div class="ttname"><a href="Thread_8c.html#a5faf758226199e7cf93f6b489aca07f7">Thread_unlock_mutex</a></div><div class="ttdeci">int Thread_unlock_mutex(mutex_type mutex)</div><div class="ttdoc">Unlock a mutex which has already been locked.</div><div class="ttdef"><b>Definition:</b> Thread.c:158</div></div>
  750. <div class="ttc" id="astructList_html_ab6dd52dbb617d263723015ef055caffe"><div class="ttname"><a href="structList.html#ab6dd52dbb617d263723015ef055caffe">List::first</a></div><div class="ttdeci">ListElement * first</div><div class="ttdoc">first element in the list</div><div class="ttdef"><b>Definition:</b> LinkedList.h:69</div></div>
  751. <div class="ttc" id="aMQTTPacket_8c_html_a210a7b616c27aa7247824022285da784"><div class="ttname"><a href="MQTTPacket_8c.html#a210a7b616c27aa7247824022285da784">new_packets</a></div><div class="ttdeci">pf new_packets[]</div><div class="ttdoc">Array of functions to build packets, indexed according to packet code.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:73</div></div>
  752. <div class="ttc" id="astructMQTTClient__persistence_html_a2066e737e00f3fcb016152b4a9cedad6"><div class="ttname"><a href="structMQTTClient__persistence.html#a2066e737e00f3fcb016152b4a9cedad6">MQTTClient_persistence::context</a></div><div class="ttdeci">void * context</div><div class="ttdoc">A pointer to any data required to initialize the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:219</div></div>
  753. <div class="ttc" id="aHeap_8c_html_a7fb8bd5f7469fc9c1e48c3a1f17de88a"><div class="ttname"><a href="Heap_8c.html#a7fb8bd5f7469fc9c1e48c3a1f17de88a">Heap_initialize</a></div><div class="ttdeci">int Heap_initialize(void)</div><div class="ttdoc">Heap initialization.</div><div class="ttdef"><b>Definition:</b> Heap.c:406</div></div>
  754. <div class="ttc" id="astructConnect_html_a8e0ff745f3800cf1a56a0cd467b5138e"><div class="ttname"><a href="structConnect.html#a8e0ff745f3800cf1a56a0cd467b5138e">Connect::willTopic</a></div><div class="ttdeci">char * willTopic</div><div class="ttdoc">will topic</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:122</div></div>
  755. <div class="ttc" id="astructMQTTAsync__willOptions_html_a9e18ae16bb17c09708e7f767390a9638"><div class="ttname"><a href="structMQTTAsync__willOptions.html#a9e18ae16bb17c09708e7f767390a9638">MQTTAsync_willOptions::data</a></div><div class="ttdeci">const void * data</div><div class="ttdoc">binary payload data</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1045</div></div>
  756. <div class="ttc" id="aThread_8c_html_a6c1b6aaeb2f7e1d5b4a4936f0568b868"><div class="ttname"><a href="Thread_8c.html#a6c1b6aaeb2f7e1d5b4a4936f0568b868">Thread_create_mutex</a></div><div class="ttdeci">mutex_type Thread_create_mutex(int *rc)</div><div class="ttdoc">Create a new mutex.</div><div class="ttdef"><b>Definition:</b> Thread.c:114</div></div>
  757. <div class="ttc" id="astructMQTTSubscribe__options_html_a52989a1198bc251aad22638e85f2b7b4"><div class="ttname"><a href="structMQTTSubscribe__options.html#a52989a1198bc251aad22638e85f2b7b4">MQTTSubscribe_options::noLocal</a></div><div class="ttdeci">unsigned char noLocal</div><div class="ttdoc">To not receive our own publications, set to 1.</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:45</div></div>
  758. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a703d2a77602f3737eccf5123e16bb428"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a703d2a77602f3737eccf5123e16bb428">MQTTAsync_connectOptions::onFailure</a></div><div class="ttdeci">MQTTAsync_onFailure * onFailure</div><div class="ttdoc">A pointer to a callback function to be called if the connect fails.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1296</div></div>
  759. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a134555eea729d1eeeb9427057834fa38"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a134555eea729d1eeeb9427057834fa38">MQTTAsync_responseOptions::onFailure5</a></div><div class="ttdeci">MQTTAsync_onFailure5 * onFailure5</div><div class="ttdoc">A pointer to a callback function to be called if the API call successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:751</div></div>
  760. <div class="ttc" id="aMQTTPacket_8c_html_a642e5f62d21f14e81f8fc70b491d89c8"><div class="ttname"><a href="MQTTPacket_8c.html#a642e5f62d21f14e81f8fc70b491d89c8">MQTTPacket_freePublish</a></div><div class="ttdeci">void MQTTPacket_freePublish(Publish *pack)</div><div class="ttdoc">Free allocated storage for a publish packet.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:612</div></div>
  761. <div class="ttc" id="aMQTTPacket_8c_html_af0fcaa11ac05ce448a433a53f9cae420"><div class="ttname"><a href="MQTTPacket_8c.html#af0fcaa11ac05ce448a433a53f9cae420">writeUTF</a></div><div class="ttdeci">void writeUTF(char **pptr, const char *string)</div><div class="ttdoc">Writes a &quot;UTF&quot; string to an output buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:467</div></div>
  762. <div class="ttc" id="aLinkedList_8c_html_a371f4a5021e6aa639bab6ab1457fc1d2"><div class="ttname"><a href="LinkedList_8c.html#a371f4a5021e6aa639bab6ab1457fc1d2">ListPrevElement</a></div><div class="ttdeci">ListElement * ListPrevElement(List *aList, ListElement **pos)</div><div class="ttdoc">Backward iteration through a list.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:424</div></div>
  763. <div class="ttc" id="astructMQTTProperties_html_a0eaa838640c90af2a963d7e0b23ff4e5"><div class="ttname"><a href="structMQTTProperties.html#a0eaa838640c90af2a963d7e0b23ff4e5">MQTTProperties::count</a></div><div class="ttdeci">int count</div><div class="ttdoc">number of property entries in the array</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:114</div></div>
  764. <div class="ttc" id="aSocket_8c_html_a6caeed4a8d4f884c57a815034cee275e"><div class="ttname"><a href="Socket_8c.html#a6caeed4a8d4f884c57a815034cee275e">mod_s</a></div><div class="ttdeci">Sockets mod_s</div><div class="ttdoc">Structure to hold all socket data for this module.</div><div class="ttdef"><b>Definition:</b> Socket.c:72</div></div>
  765. <div class="ttc" id="astructConnect_html_ab87417598de200c235ce28e8947f8804"><div class="ttname"><a href="structConnect.html#ab87417598de200c235ce28e8947f8804">Connect::Protocol</a></div><div class="ttdeci">char * Protocol</div><div class="ttdoc">MQTT protocol name.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:120</div></div>
  766. <div class="ttc" id="aMQTTPacket_8c_html_a9f9e58aba3ed5d513862d76bc5e29743"><div class="ttname"><a href="MQTTPacket_8c.html#a9f9e58aba3ed5d513862d76bc5e29743">MQTTPacket_name</a></div><div class="ttdeci">const char * MQTTPacket_name(int ptype)</div><div class="ttdoc">Converts an MQTT packet code into its name.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:65</div></div>
  767. <div class="ttc" id="aMQTTPacket_8c_html_a07aa0146eda3d32979142e7df8ad5fc3"><div class="ttname"><a href="MQTTPacket_8c.html#a07aa0146eda3d32979142e7df8ad5fc3">writeInt</a></div><div class="ttdeci">void writeInt(char **pptr, int anInt)</div><div class="ttdoc">Writes an integer as 2 bytes to an output buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:453</div></div>
  768. <div class="ttc" id="aMQTTPacket_8c_html_adec2c812b12255dab78f75163a4f1960"><div class="ttname"><a href="MQTTPacket_8c.html#adec2c812b12255dab78f75163a4f1960">MQTTPacket_send_pubrel</a></div><div class="ttdeci">int MQTTPacket_send_pubrel(int MQTTVersion, int msgid, int dup, networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PUBREL packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:754</div></div>
  769. <div class="ttc" id="astructMQTTProperties_html_af2d57fd95f759ef758ff77b07e8683cd"><div class="ttname"><a href="structMQTTProperties.html#af2d57fd95f759ef758ff77b07e8683cd">MQTTProperties::array</a></div><div class="ttdeci">MQTTProperty * array</div><div class="ttdoc">array of properties</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:117</div></div>
  770. <div class="ttc" id="aMQTTClient_8c_html_a2bc00ce11e0cac5dbc0938c512b4ab31"><div class="ttname"><a href="MQTTClient_8c.html#a2bc00ce11e0cac5dbc0938c512b4ab31">MQTTClient_freeMessage</a></div><div class="ttdeci">void MQTTClient_freeMessage(MQTTClient_message **message)</div><div class="ttdoc">This function frees memory allocated to an MQTT message, including the additional memory allocated to...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:628</div></div>
  771. <div class="ttc" id="astructMQTTAsync__connectOptions_html_aad75b20bff67aa3462602fe41465931a"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#aad75b20bff67aa3462602fe41465931a">MQTTAsync_connectOptions::data</a></div><div class="ttdeci">const void * data</div><div class="ttdoc">binary password data</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1343</div></div>
  772. <div class="ttc" id="aMQTTProtocolClient_8c_html_a9aa163c85710d4936ae368b8b9412440"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a9aa163c85710d4936ae368b8b9412440">MQTTProtocol_handlePubcomps</a></div><div class="ttdeci">int MQTTProtocol_handlePubcomps(void *pack, SOCKET sock, Publications **pubToRemove)</div><div class="ttdoc">Process an incoming pubcomp packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:642</div></div>
  773. <div class="ttc" id="astructConnack_html_a296f82b2061fa92586c8c2212ffd6efd"><div class="ttname"><a href="structConnack.html#a296f82b2061fa92586c8c2212ffd6efd">Connack::flags</a></div><div class="ttdeci">union Connack::@23 flags</div><div class="ttdoc">connack flags byte</div></div>
  774. <div class="ttc" id="aunionHeader_html_a75d550e644fb0f4ae2be1a33d0d89ec6"><div class="ttname"><a href="unionHeader.html#a75d550e644fb0f4ae2be1a33d0d89ec6">Header::byte</a></div><div class="ttdeci">char byte</div><div class="ttdoc">the whole byte</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:65</div></div>
  775. <div class="ttc" id="astructthreadEntry_html"><div class="ttname"><a href="structthreadEntry.html">threadEntry</a></div><div class="ttdef"><b>Definition:</b> StackTrace.c:53</div></div>
  776. <div class="ttc" id="astructMQTTAsync__command_html_aab15c3354653ca0d03644bcaa98f77fb"><div class="ttname"><a href="structMQTTAsync__command.html#aab15c3354653ca0d03644bcaa98f77fb">MQTTAsync_command::MQTTVersion</a></div><div class="ttdeci">int MQTTVersion</div><div class="ttdoc">current MQTT version being used to connect</div><div class="ttdef"><b>Definition:</b> MQTTAsyncUtils.h:84</div></div>
  777. <div class="ttc" id="aLog_8c_html_aa46cc371a2f34c92be9e5df8ac162566"><div class="ttname"><a href="Log_8c.html#aa46cc371a2f34c92be9e5df8ac162566">trace_destination_name</a></div><div class="ttdeci">static char * trace_destination_name</div><div class="ttdoc">the name of the trace file</div><div class="ttdef"><b>Definition:</b> Log.c:104</div></div>
  778. <div class="ttc" id="aMQTTProtocolClient_8c_html_aa9f454819a84c7a43009253fabcea3f3"><div class="ttname"><a href="MQTTProtocolClient_8c.html#aa9f454819a84c7a43009253fabcea3f3">MQTTProtocol_handlePubacks</a></div><div class="ttdeci">int MQTTProtocol_handlePubacks(void *pack, SOCKET sock, Publications **pubToRemove)</div><div class="ttdoc">Process an incoming puback packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:436</div></div>
  779. <div class="ttc" id="astructMQTTAsync__successData5_html_a83d34de369f169d5c1ee099720b964cf"><div class="ttname"><a href="structMQTTAsync__successData5.html#a83d34de369f169d5c1ee099720b964cf">MQTTAsync_successData5::message</a></div><div class="ttdeci">MQTTAsync_message message</div><div class="ttdoc">the message being sent to the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:621</div></div>
  780. <div class="ttc" id="autf-8_8c_html_a716463de5d02ad40678f2376abcdd90a"><div class="ttname"><a href="utf-8_8c.html#a716463de5d02ad40678f2376abcdd90a">upper</a></div><div class="ttdeci">char upper</div><div class="ttdoc">upper limit of valid range</div><div class="ttdef"><b>Definition:</b> utf-8.c:50</div></div>
  781. <div class="ttc" id="astructMQTTClient__message_html_aad83220f265db124174ad79f528bb367"><div class="ttname"><a href="structMQTTClient__message.html#aad83220f265db124174ad79f528bb367">MQTTClient_message::retained</a></div><div class="ttdeci">int retained</div><div class="ttdoc">The retained flag serves two purposes depending on whether the message it is associated with is being...</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:314</div></div>
  782. <div class="ttc" id="aLinkedList_8c_html_a9ed745f7ba486d16d009e86433fece7b"><div class="ttname"><a href="LinkedList_8c.html#a9ed745f7ba486d16d009e86433fece7b">ListDetachItem</a></div><div class="ttdeci">int ListDetachItem(List *aList, void *content, int(*callback)(void *, void *))</div><div class="ttdoc">Removes but does not free an element in a list by comparing the content.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:335</div></div>
  783. <div class="ttc" id="aMQTTClient_8c_html_aaa8ae61cd65c9dc0846df10122d7bd4e"><div class="ttname"><a href="MQTTClient_8c.html#aaa8ae61cd65c9dc0846df10122d7bd4e">MQTTClient_connect</a></div><div class="ttdeci">int MQTTClient_connect(MQTTClient handle, MQTTClient_connectOptions *options)</div><div class="ttdoc">This function attempts to connect a previously-created client (see MQTTClient_create()) to an MQTT se...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:1700</div></div>
  784. <div class="ttc" id="astructMQTTAsync__successData5_html_a0bfa041c9ce783614786235c650a80aa"><div class="ttname"><a href="structMQTTAsync__successData5.html#a0bfa041c9ce783614786235c650a80aa">MQTTAsync_successData5::reasonCodeCount</a></div><div class="ttdeci">int reasonCodeCount</div><div class="ttdoc">the number of reason codes in the reasonCodes array</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:615</div></div>
  785. <div class="ttc" id="aSocket_8c_html_a42a217310f6f55473525764038ac367d"><div class="ttname"><a href="Socket_8c.html#a42a217310f6f55473525764038ac367d">isReady</a></div><div class="ttdeci">int isReady(int index)</div><div class="ttdoc">Don't accept work from a client unless it is accepting work back, i.e.</div><div class="ttdef"><b>Definition:</b> Socket.c:344</div></div>
  786. <div class="ttc" id="astructMQTTClient__SSLOptions_html_a770248be4bf5020b0f57f770afdaca7d"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#a770248be4bf5020b0f57f770afdaca7d">MQTTClient_SSLOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:683</div></div>
  787. <div class="ttc" id="aHeap_8c_html_ac23c370399a3c7b9aa9fa9d0672be122"><div class="ttname"><a href="Heap_8c.html#ac23c370399a3c7b9aa9fa9d0672be122">Internal_heap_unlink</a></div><div class="ttdeci">static int Internal_heap_unlink(char *file, int line, void *p)</div><div class="ttdoc">Remove an item from the recorded heap without actually freeing it.</div><div class="ttdef"><b>Definition:</b> Heap.c:245</div></div>
  788. <div class="ttc" id="aMQTTVersion_8c_html_a60231c316988ddb6d3ecf20a3195fe8d"><div class="ttname"><a href="MQTTVersion_8c.html#a60231c316988ddb6d3ecf20a3195fe8d">FindString</a></div><div class="ttdeci">char * FindString(char *filename, const char *eyecatcher_input)</div><div class="ttdoc">Finds an eyecatcher in a binary file and returns the following value.</div><div class="ttdef"><b>Definition:</b> MQTTVersion.c:74</div></div>
  789. <div class="ttc" id="astructMQTTAsync__responseOptions_html_abc19c474b6908b2bcbd42f8410d46336"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#abc19c474b6908b2bcbd42f8410d46336">MQTTAsync_responseOptions::properties</a></div><div class="ttdeci">MQTTProperties properties</div><div class="ttdoc">MQTT V5 input properties.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:755</div></div>
  790. <div class="ttc" id="aMQTTClientPersistence_8h_html_a4c7d332bb16907058ae3b375488b6008"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a4c7d332bb16907058ae3b375488b6008">Persistence_open</a></div><div class="ttdeci">int(* Persistence_open)(void **handle, const char *clientID, const char *serverURI, void *context)</div><div class="ttdoc">Initialize the persistent store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:113</div></div>
  791. <div class="ttc" id="astructtraceEntry_html"><div class="ttname"><a href="structtraceEntry.html">traceEntry</a></div><div class="ttdef"><b>Definition:</b> Log.c:80</div></div>
  792. <div class="ttc" id="aMQTTPacket_8c_html_af922033c495b05fe4242afc54211f20d"><div class="ttname"><a href="MQTTPacket_8c.html#af922033c495b05fe4242afc54211f20d">MQTTPacket_Factory</a></div><div class="ttdeci">void * MQTTPacket_Factory(int MQTTVersion, networkHandles *net, int *error)</div><div class="ttdoc">Reads one MQTT packet from a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:103</div></div>
  793. <div class="ttc" id="astructMQTTClient__SSLOptions_html_ace536bef1f2e763f28e761c0e3e3bdbe"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#ace536bef1f2e763f28e761c0e3e3bdbe">MQTTClient_SSLOptions::sslVersion</a></div><div class="ttdeci">int sslVersion</div><div class="ttdoc">The SSL/TLS version to use.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:718</div></div>
  794. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_a919cf4710a1f7d7ce0878599e9aa4700"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#a919cf4710a1f7d7ce0878599e9aa4700">pstopen</a></div><div class="ttdeci">int pstopen(void **handle, const char *clientID, const char *serverURI, void *context)</div><div class="ttdoc">Create persistence directory for the client: context/clientID-serverURI.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:65</div></div>
  795. <div class="ttc" id="astructSHA__CTX__S_html"><div class="ttname"><a href="structSHA__CTX__S.html">SHA_CTX_S</a></div><div class="ttdef"><b>Definition:</b> SHA1.h:39</div></div>
  796. <div class="ttc" id="aMQTTClient_8c_html_ab8786efdd6c3a50c6ca33cfb5d8fc283"><div class="ttname"><a href="MQTTClient_8c.html#ab8786efdd6c3a50c6ca33cfb5d8fc283">MQTTClient_waitForCompletion</a></div><div class="ttdeci">int MQTTClient_waitForCompletion(MQTTClient handle, MQTTClient_deliveryToken mdt, unsigned long timeout)</div><div class="ttdoc">This function is called by the client application to synchronize execution of the main thread with co...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2852</div></div>
  797. <div class="ttc" id="astructMQTTAsync__struct_html"><div class="ttname"><a href="structMQTTAsync__struct.html">MQTTAsync_struct</a></div><div class="ttdef"><b>Definition:</b> MQTTAsyncUtils.h:89</div></div>
  798. <div class="ttc" id="astructMQTTAsync__init__options_html_a97caac4b94254b6b9251c07e9532f18b"><div class="ttname"><a href="structMQTTAsync__init__options.html#a97caac4b94254b6b9251c07e9532f18b">MQTTAsync_init_options::do_openssl_init</a></div><div class="ttdeci">int do_openssl_init</div><div class="ttdoc">1 = we do openssl init, 0 = leave it to the application</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:238</div></div>
  799. <div class="ttc" id="aMQTTPacket_8c_html_a4fc1ee4d2cf8fd9bd59d89aadab222df"><div class="ttname"><a href="MQTTPacket_8c.html#a4fc1ee4d2cf8fd9bd59d89aadab222df">MQTTPacket_VBIdecode</a></div><div class="ttdeci">int MQTTPacket_VBIdecode(int(*getcharfn)(char *, int), unsigned int *value)</div><div class="ttdoc">Decodes the message length according to the MQTT algorithm.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:1032</div></div>
  800. <div class="ttc" id="aMQTTClient_8c_html_a01bd2c5f98ec5c0636a106db33f2b01b"><div class="ttname"><a href="MQTTClient_8c.html#a01bd2c5f98ec5c0636a106db33f2b01b">MQTTResponse_free</a></div><div class="ttdeci">void MQTTResponse_free(MQTTResponse response)</div><div class="ttdoc">Frees the storage associated with the MQTT response.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:647</div></div>
  801. <div class="ttc" id="astructPublish_html_a05131ded5e4a7768aee72f66df37f67d"><div class="ttname"><a href="structPublish.html#a05131ded5e4a7768aee72f66df37f67d">Publish::header</a></div><div class="ttdeci">Header header</div><div class="ttdoc">MQTT header byte.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:199</div></div>
  802. <div class="ttc" id="astructMQTTAsync__connectOptions_html_acc2d253ca78b0c32813dbdc24b0c5f7a"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#acc2d253ca78b0c32813dbdc24b0c5f7a">MQTTAsync_connectOptions::automaticReconnect</a></div><div class="ttdeci">int automaticReconnect</div><div class="ttdoc">Reconnect automatically in the case of a connection being lost.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1329</div></div>
  803. <div class="ttc" id="aSocket_8c_html_aa24d7c85b03f09f16c78de0c1a9b3580"><div class="ttname"><a href="Socket_8c.html#aa24d7c85b03f09f16c78de0c1a9b3580">Socket_abortWrite</a></div><div class="ttdeci">int Socket_abortWrite(SOCKET socket)</div><div class="ttdoc">Continue an outstanding write for a particular socket.</div><div class="ttdef"><b>Definition:</b> Socket.c:1317</div></div>
  804. <div class="ttc" id="aSocket_8c_html_a457d9a6a9d8e886c46fcd0c096f45614"><div class="ttname"><a href="Socket_8c.html#a457d9a6a9d8e886c46fcd0c096f45614">Socket_noPendingWrites</a></div><div class="ttdeci">int Socket_noPendingWrites(SOCKET socket)</div><div class="ttdoc">Indicate whether any data is pending outbound for a socket.</div><div class="ttdef"><b>Definition:</b> Socket.c:674</div></div>
  805. <div class="ttc" id="astructMQTTAsync__responseOptions_html_a1294e96bc2d81fca8808fdca3bf4dd2e"><div class="ttname"><a href="structMQTTAsync__responseOptions.html#a1294e96bc2d81fca8808fdca3bf4dd2e">MQTTAsync_responseOptions::onSuccess5</a></div><div class="ttdeci">MQTTAsync_onSuccess5 * onSuccess5</div><div class="ttdoc">A pointer to a callback function to be called if the API call successfully completes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:745</div></div>
  806. <div class="ttc" id="aMQTTPersistenceDefault_8c_html_aecfbfa761dfca1b551d9ade325f480b1"><div class="ttname"><a href="MQTTPersistenceDefault_8c.html#aecfbfa761dfca1b551d9ade325f480b1">pstmkdir</a></div><div class="ttdeci">int pstmkdir(char *pPathname)</div><div class="ttdoc">Function to create a directory.</div><div class="ttdef"><b>Definition:</b> MQTTPersistenceDefault.c:165</div></div>
  807. <div class="ttc" id="aMQTTClientPersistence_8h_html_ab865640a1cc53b68622004c5a2d29fae"><div class="ttname"><a href="MQTTClientPersistence_8h.html#ab865640a1cc53b68622004c5a2d29fae">MQTTPersistence_beforeWrite</a></div><div class="ttdeci">int MQTTPersistence_beforeWrite(void *context, int bufcount, char *buffers[], int buflens[])</div><div class="ttdoc">A callback which is invoked just before a write to persistence.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:264</div></div>
  808. <div class="ttc" id="astructMQTTAsync__message_html_af79efdfc9a4e082cbbafaed8fd333ce1"><div class="ttname"><a href="structMQTTAsync__message.html#af79efdfc9a4e082cbbafaed8fd333ce1">MQTTAsync_message::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:277</div></div>
  809. <div class="ttc" id="aMQTTPacket_8c_html_aefc0aa52c1cb13fa7bfcd77810d6a617"><div class="ttname"><a href="MQTTPacket_8c.html#aefc0aa52c1cb13fa7bfcd77810d6a617">writeInt4</a></div><div class="ttdeci">void writeInt4(char **pptr, int anInt)</div><div class="ttdoc">Writes an integer as 4 bytes to an output buffer.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:945</div></div>
  810. <div class="ttc" id="aLinkedList_8c_html_a276950531b3f54e0dda27d597572c192"><div class="ttname"><a href="LinkedList_8c.html#a276950531b3f54e0dda27d597572c192">ListFree</a></div><div class="ttdeci">void ListFree(List *aList)</div><div class="ttdoc">Removes and frees all items in a list, and frees the list itself.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:381</div></div>
  811. <div class="ttc" id="aMQTTPacket_8c_html_a8b93325a6a336406497b20b489d6c46a"><div class="ttname"><a href="MQTTPacket_8c.html#a8b93325a6a336406497b20b489d6c46a">MQTTPacket_send_puback</a></div><div class="ttdeci">int MQTTPacket_send_puback(int MQTTVersion, int msgid, networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PUBACK packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:679</div></div>
  812. <div class="ttc" id="astructstorageElement_html_aa13f42ed8f43459d289dec1bc4e259dd"><div class="ttname"><a href="structstorageElement.html#aa13f42ed8f43459d289dec1bc4e259dd">storageElement::file</a></div><div class="ttdeci">char * file</div><div class="ttdoc">the name of the source file where the storage was allocated</div><div class="ttdef"><b>Definition:</b> Heap.c:70</div></div>
  813. <div class="ttc" id="aMQTTClient_8c_html_a96067a2fb74d2a61c7e93015629548e0"><div class="ttname"><a href="MQTTClient_8c.html#a96067a2fb74d2a61c7e93015629548e0">MQTTClient_setCommandTimeout</a></div><div class="ttdeci">int MQTTClient_setCommandTimeout(MQTTClient handle, unsigned long milliSeconds)</div><div class="ttdoc">Sets the timeout value for un/subscribe commands when waiting for the un/suback response from the ser...</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:2947</div></div>
  814. <div class="ttc" id="aMQTTClientPersistence_8h_html_a753a0f9a9c51284d63a907af19c7bbba"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a753a0f9a9c51284d63a907af19c7bbba">Persistence_containskey</a></div><div class="ttdeci">int(* Persistence_containskey)(void *handle, char *key)</div><div class="ttdoc">Returns whether any data has been persisted using the specified key.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:208</div></div>
  815. <div class="ttc" id="astructMQTTAsync__willOptions_html_af6f445357e4993806ceedbe7bafb2c20"><div class="ttname"><a href="structMQTTAsync__willOptions.html#af6f445357e4993806ceedbe7bafb2c20">MQTTAsync_willOptions::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">binary payload length</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1044</div></div>
  816. <div class="ttc" id="astructMQTTClient__connectOptions_html_ab6713be91e99a94a7168bbcac02f6beb"><div class="ttname"><a href="structMQTTClient__connectOptions.html#ab6713be91e99a94a7168bbcac02f6beb">MQTTClient_connectOptions::connectTimeout</a></div><div class="ttdeci">int connectTimeout</div><div class="ttdoc">The time interval in seconds to allow a connect to complete.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:902</div></div>
  817. <div class="ttc" id="aMQTTPacketOut_8c_html_acf4b3402e224ac22ffbe74731f374fe0"><div class="ttname"><a href="MQTTPacketOut_8c.html#acf4b3402e224ac22ffbe74731f374fe0">MQTTPacket_send_pingreq</a></div><div class="ttdeci">int MQTTPacket_send_pingreq(networkHandles *net, const char *clientID)</div><div class="ttdoc">Send an MQTT PINGREQ packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacketOut.c:201</div></div>
  818. <div class="ttc" id="aThread_8c_html_a25288643d5e1a2ab1369132a80c58ce4"><div class="ttname"><a href="Thread_8c.html#a25288643d5e1a2ab1369132a80c58ce4">Thread_start</a></div><div class="ttdeci">void Thread_start(thread_fn fn, void *parameter)</div><div class="ttdoc">Start a new thread.</div><div class="ttdef"><b>Definition:</b> Thread.c:59</div></div>
  819. <div class="ttc" id="astructMQTTAsync__successData5_html_a8f6209416359018b215c22008f08bc9c"><div class="ttname"><a href="structMQTTAsync__successData5.html#a8f6209416359018b215c22008f08bc9c">MQTTAsync_successData5::unsub</a></div><div class="ttdeci">struct MQTTAsync_successData5::@4::@8 unsub</div><div class="ttdoc">For unsubscribeMany, the list of reasonCodes returned by the server.</div></div>
  820. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a60bb7a0c6afaaff456f7fa4f18c84b66"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a60bb7a0c6afaaff456f7fa4f18c84b66">MQTTAsync_connectOptions::minRetryInterval</a></div><div class="ttdeci">int minRetryInterval</div><div class="ttdoc">The minimum automatic reconnect retry interval in seconds.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1333</div></div>
  821. <div class="ttc" id="aMQTTClient_8c_html_ac35494adea1f11d3480b50b8a7f0c17d"><div class="ttname"><a href="MQTTClient_8c.html#ac35494adea1f11d3480b50b8a7f0c17d">clientSockCompare</a></div><div class="ttdeci">static int clientSockCompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing clients by socket.</div><div class="ttdef"><b>Definition:</b> MQTTClient.c:687</div></div>
  822. <div class="ttc" id="aMQTTPersistence_8c_html_a6bc55eebf10d7a7f7e2849b3e33716d1"><div class="ttname"><a href="MQTTPersistence_8c.html#a6bc55eebf10d7a7f7e2849b3e33716d1">MQTTPersistence_restorePacket</a></div><div class="ttdeci">void * MQTTPersistence_restorePacket(int MQTTVersion, char *buffer, size_t buflen)</div><div class="ttdoc">Returns a MQTT packet restored from persisted data.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:363</div></div>
  823. <div class="ttc" id="astructMQTTClient__SSLOptions_html_ad459c7e3ab9f4558e9f239bf9b15f131"><div class="ttname"><a href="structMQTTClient__SSLOptions.html#ad459c7e3ab9f4558e9f239bf9b15f131">MQTTClient_SSLOptions::ssl_psk_context</a></div><div class="ttdeci">void * ssl_psk_context</div><div class="ttdoc">Application-specific contex for ssl_psk_cb Exists only if struct_version &gt;= 4.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:757</div></div>
  824. <div class="ttc" id="aMQTTProtocolClient_8c_html_a900fa28a8774ad6f5535104bb62e7abf"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a900fa28a8774ad6f5535104bb62e7abf">MQTTProtocol_removePublication</a></div><div class="ttdeci">void MQTTProtocol_removePublication(Publications *p)</div><div class="ttdoc">Remove stored message data.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:295</div></div>
  825. <div class="ttc" id="astructSockets_html_a852db7c3edf654d8ee451be18b3f5743"><div class="ttname"><a href="structSockets.html#a852db7c3edf654d8ee451be18b3f5743">Sockets::write_pending</a></div><div class="ttdeci">List * write_pending</div><div class="ttdoc">list of sockets for which a write is pending</div><div class="ttdef"><b>Definition:</b> Socket.h:115</div></div>
  826. <div class="ttc" id="aHeap_8c_html_a6cdadd76da21b7269cf5d9fc92dedb68"><div class="ttname"><a href="Heap_8c.html#a6cdadd76da21b7269cf5d9fc92dedb68">HeapDumpString</a></div><div class="ttdeci">int HeapDumpString(FILE *file, char *str)</div><div class="ttdoc">Dump a string from the heap so that it can be displayed conveniently.</div><div class="ttdef"><b>Definition:</b> Heap.c:443</div></div>
  827. <div class="ttc" id="aMQTTPacket_8c_html_a58feb89ee5616f2ea6d222bbbef927bb"><div class="ttname"><a href="MQTTPacket_8c.html#a58feb89ee5616f2ea6d222bbbef927bb">MQTTPacket_publish</a></div><div class="ttdeci">void * MQTTPacket_publish(int MQTTVersion, unsigned char aHeader, char *data, size_t datalen)</div><div class="ttdoc">Function used in the new packets table to create publish packets.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:556</div></div>
  828. <div class="ttc" id="astructMQTTClient__connectOptions_html_a3e0d107b093f17c9623f4d1b76d18db6"><div class="ttname"><a href="structMQTTClient__connectOptions.html#a3e0d107b093f17c9623f4d1b76d18db6">MQTTClient_connectOptions::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">binary password length</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:956</div></div>
  829. <div class="ttc" id="astructListElementStruct_html_ae087afc0ce4e6e17592420764902f301"><div class="ttname"><a href="structListElementStruct.html#ae087afc0ce4e6e17592420764902f301">ListElementStruct::next</a></div><div class="ttdeci">struct ListElementStruct * next</div><div class="ttdoc">pointer to next list element</div><div class="ttdef"><b>Definition:</b> LinkedList.h:75</div></div>
  830. <div class="ttc" id="astructConnect_html_a68d27f5f6b5fad14969d69340acfc5e9"><div class="ttname"><a href="structConnect.html#a68d27f5f6b5fad14969d69340acfc5e9">Connect::username</a></div><div class="ttdeci">bool username</div><div class="ttdoc">3.1 user name</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:115</div></div>
  831. <div class="ttc" id="autf-8_8c_html_abf4b7aec66b165e9a0a8e3a4ad69f863"><div class="ttname"><a href="utf-8_8c.html#abf4b7aec66b165e9a0a8e3a4ad69f863">bytes</a></div><div class="ttdeci">struct @34::@35 bytes[4]</div><div class="ttdoc">up to 4 bytes can be used per character</div></div>
  832. <div class="ttc" id="astructMQTTAsync__message_html_a9271900e2789ff81e382a47842aaee8f"><div class="ttname"><a href="structMQTTAsync__message.html#a9271900e2789ff81e382a47842aaee8f">MQTTAsync_message::payloadlen</a></div><div class="ttdeci">int payloadlen</div><div class="ttdoc">The length of the MQTT message payload in bytes.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:279</div></div>
  833. <div class="ttc" id="astructMQTTAsync__init__options_html_ad2a3507b60ec188dff83962192153991"><div class="ttname"><a href="structMQTTAsync__init__options.html#ad2a3507b60ec188dff83962192153991">MQTTAsync_init_options::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:236</div></div>
  834. <div class="ttc" id="aMQTTPacket_8c_html_aa9e17261b4d09d802dba6a65bcdc44fa"><div class="ttname"><a href="MQTTPacket_8c.html#aa9e17261b4d09d802dba6a65bcdc44fa">MQTTPacket_send_disconnect</a></div><div class="ttdeci">int MQTTPacket_send_disconnect(Clients *client, enum MQTTReasonCodes reason, MQTTProperties *props)</div><div class="ttdoc">Send an MQTT disconnect packet down a socket.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:511</div></div>
  835. <div class="ttc" id="aMQTTProtocolClient_8c_html_a0fa824f9702cb6b0d7c800fd65198fce"><div class="ttname"><a href="MQTTProtocolClient_8c.html#a0fa824f9702cb6b0d7c800fd65198fce">MQTTProtocol_assignMsgId</a></div><div class="ttdeci">int MQTTProtocol_assignMsgId(Clients *client)</div><div class="ttdoc">Assign a new message id for a client.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolClient.c:86</div></div>
  836. <div class="ttc" id="astructMQTTAsync__successData5_html_ab8a0f5e336f3abe06921a22a5a134ab2"><div class="ttname"><a href="structMQTTAsync__successData5.html#ab8a0f5e336f3abe06921a22a5a134ab2">MQTTAsync_successData5::sessionPresent</a></div><div class="ttdeci">int sessionPresent</div><div class="ttdoc">the session present flag returned from the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:629</div></div>
  837. <div class="ttc" id="aSocket_8c_html_accf7d8d1529e31b2ad8286627cb662c0"><div class="ttname"><a href="Socket_8c.html#accf7d8d1529e31b2ad8286627cb662c0">Socket_new</a></div><div class="ttdeci">int Socket_new(const char *addr, size_t addr_len, int port, SOCKET *sock)</div><div class="ttdoc">Create a new socket and TCP connect to an address/port.</div><div class="ttdef"><b>Definition:</b> Socket.c:1025</div></div>
  838. <div class="ttc" id="astructMQTTProperty_html_af08778d86fb08643620cefabd205bc11"><div class="ttname"><a href="structMQTTProperty.html#af08778d86fb08643620cefabd205bc11">MQTTProperty::data</a></div><div class="ttdeci">MQTTLenString data</div><div class="ttdoc">The value of a string property, or the name of a user property.</div><div class="ttdef"><b>Definition:</b> MQTTProperties.h:103</div></div>
  839. <div class="ttc" id="astructMQTTAsync__successData_html_a71879fec2eb0c6b891a48ed813b2a9da"><div class="ttname"><a href="structMQTTAsync__successData.html#a71879fec2eb0c6b891a48ed813b2a9da">MQTTAsync_successData::sessionPresent</a></div><div class="ttdeci">int sessionPresent</div><div class="ttdoc">the session present flag returned from the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:594</div></div>
  840. <div class="ttc" id="astructMQTTAsync__successData5_html_ab31fe8cffc2ff14c1ebaee1a12feb787"><div class="ttname"><a href="structMQTTAsync__successData5.html#ab31fe8cffc2ff14c1ebaee1a12feb787">MQTTAsync_successData5::token</a></div><div class="ttdeci">MQTTAsync_token token</div><div class="ttdoc">A token identifying the successful request.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:606</div></div>
  841. <div class="ttc" id="aHeap_8c_html_a699e6722cc8f195f853f09ac274413a3"><div class="ttname"><a href="Heap_8c.html#a699e6722cc8f195f853f09ac274413a3">myrealloc</a></div><div class="ttdeci">void * myrealloc(char *file, int line, void *p, size_t size)</div><div class="ttdoc">Reallocates a block of memory.</div><div class="ttdef"><b>Definition:</b> Heap.c:320</div></div>
  842. <div class="ttc" id="astructMQTTAsync__willOptions_html_a359707f9e88d705bce91d482d9816e33"><div class="ttname"><a href="structMQTTAsync__willOptions.html#a359707f9e88d705bce91d482d9816e33">MQTTAsync_willOptions::payload</a></div><div class="ttdeci">struct MQTTAsync_willOptions::@9 payload</div><div class="ttdoc">The LWT payload in binary form.</div></div>
  843. <div class="ttc" id="astructListElementStruct_html_a808c5a8a407bec041d0817705561ffd5"><div class="ttname"><a href="structListElementStruct.html#a808c5a8a407bec041d0817705561ffd5">ListElementStruct::content</a></div><div class="ttdeci">void * content</div><div class="ttdoc">pointer to element content</div><div class="ttdef"><b>Definition:</b> LinkedList.h:76</div></div>
  844. <div class="ttc" id="astructMQTTAsync__willOptions_html_a1b53c99ddd236e4b796bb90e035ed30b"><div class="ttname"><a href="structMQTTAsync__willOptions.html#a1b53c99ddd236e4b796bb90e035ed30b">MQTTAsync_willOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1027</div></div>
  845. <div class="ttc" id="aMQTTPersistence_8c_html_a3e607d17e088a493097af07e9c7b0006"><div class="ttname"><a href="MQTTPersistence_8c.html#a3e607d17e088a493097af07e9c7b0006">MQTTPersistence_restorePackets</a></div><div class="ttdeci">int MQTTPersistence_restorePackets(Clients *c)</div><div class="ttdoc">Restores the persisted records to the outbound and inbound message queues of the client.</div><div class="ttdef"><b>Definition:</b> MQTTPersistence.c:185</div></div>
  846. <div class="ttc" id="astructMQTTAsync__successData5_html_ad5af721250d01a2d0a4d1cd7932b81eb"><div class="ttname"><a href="structMQTTAsync__successData5.html#ad5af721250d01a2d0a4d1cd7932b81eb">MQTTAsync_successData5::serverURI</a></div><div class="ttdeci">char * serverURI</div><div class="ttdoc">the connection string of the server</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:627</div></div>
  847. <div class="ttc" id="aHeap_8c_html_a25214c297c998eba3cfc8282b1162c69"><div class="ttname"><a href="Heap_8c.html#a25214c297c998eba3cfc8282b1162c69">myfree</a></div><div class="ttdeci">void myfree(char *file, int line, void *p)</div><div class="ttdoc">Frees a block of memory.</div><div class="ttdef"><b>Definition:</b> Heap.c:277</div></div>
  848. <div class="ttc" id="astructMQTTAsync__connectOptions_html_a013018a3b17149d482051a1be78ac984"><div class="ttname"><a href="structMQTTAsync__connectOptions.html#a013018a3b17149d482051a1be78ac984">MQTTAsync_connectOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:1212</div></div>
  849. <div class="ttc" id="aMQTTPacket_8c_html_ac1f61e571640513a9785b3164141dfbc"><div class="ttname"><a href="MQTTPacket_8c.html#ac1f61e571640513a9785b3164141dfbc">MQTTPacket_decode</a></div><div class="ttdeci">int MQTTPacket_decode(networkHandles *net, size_t *value)</div><div class="ttdoc">Decodes the message length according to the MQTT algorithm.</div><div class="ttdef"><b>Definition:</b> MQTTPacket.c:328</div></div>
  850. <div class="ttc" id="astructPacketBuffers_html_a359895b0df7be5369344eb2e6122c067"><div class="ttname"><a href="structPacketBuffers.html#a359895b0df7be5369344eb2e6122c067">PacketBuffers::buflens</a></div><div class="ttdeci">size_t * buflens</div><div class="ttdoc">array of byte buffers</div><div class="ttdef"><b>Definition:</b> Socket.h:103</div></div>
  851. <div class="ttc" id="astructClients_html_aab6a37dbb279f1f1819bd89f75695e92"><div class="ttname"><a href="structClients.html#aab6a37dbb279f1f1819bd89f75695e92">Clients::clientID</a></div><div class="ttdeci">char * clientID</div><div class="ttdoc">the string id of the client</div><div class="ttdef"><b>Definition:</b> Clients.h:120</div></div>
  852. <div class="ttc" id="astructMQTTSubscribe__options_html"><div class="ttname"><a href="structMQTTSubscribe__options.html">MQTTSubscribe_options</a></div><div class="ttdoc">The MQTT V5 subscribe options, apart from QoS which existed before V5.</div><div class="ttdef"><b>Definition:</b> MQTTSubscribeOpts.h:21</div></div>
  853. <div class="ttc" id="astructConnack_html_af1a10784220b77ccfbf549b2443f2332"><div class="ttname"><a href="structConnack.html#af1a10784220b77ccfbf549b2443f2332">Connack::MQTTVersion</a></div><div class="ttdeci">unsigned int MQTTVersion</div><div class="ttdoc">the version of MQTT</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:154</div></div>
  854. <div class="ttc" id="astructMQTTProtocol_html"><div class="ttname"><a href="structMQTTProtocol.html">MQTTProtocol</a></div><div class="ttdef"><b>Definition:</b> MQTTProtocol.h:35</div></div>
  855. <div class="ttc" id="astructMQTTAsync__failureData5_html_af3be141ec32e131429a1ea9df6386eb5"><div class="ttname"><a href="structMQTTAsync__failureData5.html#af3be141ec32e131429a1ea9df6386eb5">MQTTAsync_failureData5::token</a></div><div class="ttdeci">MQTTAsync_token token</div><div class="ttdoc">A token identifying the failed request.</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:554</div></div>
  856. <div class="ttc" id="astructNodeStruct_html_a1a00514fc5241f8b1391fa0eb433a128"><div class="ttname"><a href="structNodeStruct.html#a1a00514fc5241f8b1391fa0eb433a128">NodeStruct::parent</a></div><div class="ttdeci">struct NodeStruct * parent</div><div class="ttdoc">pointer to parent tree node, in case we need it</div><div class="ttdef"><b>Definition:</b> Tree.h:79</div></div>
  857. <div class="ttc" id="astructMessages_html"><div class="ttname"><a href="structMessages.html">Messages</a></div><div class="ttdoc">Client publication message data.</div><div class="ttdef"><b>Definition:</b> Clients.h:54</div></div>
  858. <div class="ttc" id="astructMQTTClient__createOptions_html_ae94f345f0f147ed31b8fbd0cb6ebc784"><div class="ttname"><a href="structMQTTClient__createOptions.html#ae94f345f0f147ed31b8fbd0cb6ebc784">MQTTClient_createOptions::struct_version</a></div><div class="ttdeci">int struct_version</div><div class="ttdoc">The version number of this structure.</div><div class="ttdef"><b>Definition:</b> MQTTClient.h:553</div></div>
  859. <div class="ttc" id="aLinkedList_8c_html_a1738915a6d6f10022e9ee1481c0ae452"><div class="ttname"><a href="LinkedList_8c.html#a1738915a6d6f10022e9ee1481c0ae452">intcompare</a></div><div class="ttdeci">int intcompare(void *a, void *b)</div><div class="ttdoc">List callback function for comparing integers.</div><div class="ttdef"><b>Definition:</b> LinkedList.c:436</div></div>
  860. <div class="ttc" id="astructConnect_html_a91e5dd7084da0e9a40397c5532de5ef9"><div class="ttname"><a href="structConnect.html#a91e5dd7084da0e9a40397c5532de5ef9">Connect::willQoS</a></div><div class="ttdeci">unsigned int willQoS</div><div class="ttdoc">will QoS value</div><div class="ttdef"><b>Definition:</b> MQTTPacket.h:112</div></div>
  861. <div class="ttc" id="aHeap_8c_html_a0f10ff94faca02a6f81953c889802954"><div class="ttname"><a href="Heap_8c.html#a0f10ff94faca02a6f81953c889802954">Heap_findItem</a></div><div class="ttdeci">void * Heap_findItem(void *p)</div><div class="ttdoc">Utility to find an item in the heap.</div><div class="ttdef"><b>Definition:</b> Heap.c:368</div></div>
  862. <div class="ttc" id="aMQTTProtocolOut_8c_html_a5424115bf427436c2d40058f15261ed0"><div class="ttname"><a href="MQTTProtocolOut_8c.html#a5424115bf427436c2d40058f15261ed0">MQTTProtocol_handleSubacks</a></div><div class="ttdeci">int MQTTProtocol_handleSubacks(void *pack, SOCKET sock)</div><div class="ttdoc">Process an incoming suback packet for a socket.</div><div class="ttdef"><b>Definition:</b> MQTTProtocolOut.c:406</div></div>
  863. <div class="ttc" id="astructMQTTAsync__successData_html_aa4ad4a4023c5b9796e44b9dfd0df53e7"><div class="ttname"><a href="structMQTTAsync__successData.html#aa4ad4a4023c5b9796e44b9dfd0df53e7">MQTTAsync_successData::qosList</a></div><div class="ttdeci">int * qosList</div><div class="ttdoc">For subscribeMany, if more than one subscription was requested, the list of granted QoSs of the subsc...</div><div class="ttdef"><b>Definition:</b> MQTTAsync.h:582</div></div>
  864. <div class="ttc" id="aMQTTClientPersistence_8h_html_a73350bf7208658bf5434a59f7bdbae90"><div class="ttname"><a href="MQTTClientPersistence_8h.html#a73350bf7208658bf5434a59f7bdbae90">Persistence_remove</a></div><div class="ttdeci">int(* Persistence_remove)(void *handle, char *key)</div><div class="ttdoc">Remove the data for the specified key from the store.</div><div class="ttdef"><b>Definition:</b> MQTTClientPersistence.h:169</div></div>
  865. <!-- start footer part -->
  866. <hr class="footer"/><address class="footer"><small>
  867. Generated on Thu Sep 29 2022 11:34:46 for MQTT C Client Libraries Internals by &#160;<a href="http://www.doxygen.org/index.html">
  868. <img class="footer" src="doxygen.png" alt="doxygen"/>
  869. </a> 1.8.17
  870. </small></address>
  871. </body>
  872. </html>