blob: 3d5970bb0597b8f3cc3ec1f4d437fb50a65a8ef4 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Qpid Proton C API: proton/transport.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Qpid Proton C API
&#160;<span id="projectnumber">0.21.0</span>
</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('transport_8h_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">transport.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="transport_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#ifndef PROTON_TRANSPORT_H</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#define PROTON_TRANSPORT_H 1</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * distributed with this work for additional information</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * &quot;License&quot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * software distributed under the License is distributed on an</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * KIND, either express or implied. See the License for the</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * specific language governing permissions and limitations</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * under the License.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &lt;proton/import_export.h&gt;</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &lt;proton/type_compat.h&gt;</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="condition_8h.html">proton/condition.h</a>&gt;</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="group__transport.html#ga4695788da8491f0c7104bfe36634ff94"> 57</a></span>&#160;<span class="keyword">typedef</span> <span class="keywordtype">int</span> <a class="code" href="group__transport.html#ga4695788da8491f0c7104bfe36634ff94">pn_trace_t</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="group__transport.html#gae9b49fcbf6397e6916eb4e1357c90ff3"> 62</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="group__transport.html#gae9b49fcbf6397e6916eb4e1357c90ff3">pn_tracer_t</a>)(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *message);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="group__transport.html#gae8f32e46e94953bab10bee530eee9044"> 67</a></span>&#160;<span class="preprocessor">#define PN_TRACE_OFF (0)</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="group__transport.html#gafde0eb3c73fb98816f4238d42d48f3d8"> 72</a></span>&#160;<span class="preprocessor">#define PN_TRACE_RAW (1)</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="group__transport.html#gab8e04b4c128379ff27e6b801c0bce494"> 77</a></span>&#160;<span class="preprocessor">#define PN_TRACE_FRM (2)</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="group__transport.html#ga7065ad65f95c995a24e416edc95aead4"> 83</a></span>&#160;<span class="preprocessor">#define PN_TRACE_DRV (4)</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="group__transport.html#ga3bde88d15fcfda400a36d8f9e5d51688"> 88</a></span>&#160;<span class="preprocessor">#define PN_TRACE_EVT (8)</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;PN_EXTERN <a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *<a class="code" href="group__transport.html#gaf9833d93faf6a6ed68039e4a909cdd77">pn_transport</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gac5bebd26c0942bc17d7fad36577110f8">pn_transport_set_server</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga6ab28051242631d9bea4814e8670ab90">pn_transport_free</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;PN_EXTERN <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__transport.html#ga6b2750a2d313c65aabe5dc8a99f1de58">pn_transport_get_user</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga285b4cced59c665ae178adf26128d3fc">pn_transport_require_auth</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">bool</span> required);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#ga8a60f6a48e4bd2d090f5bd264cf7f90d">pn_transport_is_authenticated</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gaeb7e30ead4a6ab080d0005379be20e34">pn_transport_require_encryption</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">bool</span> required);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#ga737021ca419e948932071aad2ad38c5b">pn_transport_is_encrypted</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;PN_EXTERN <a class="code" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> *<a class="code" href="group__transport.html#gac458d9fdb684f9501e89b96fc51f5c34">pn_transport_condition</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;PN_EXTERN <a class="code" href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a> *<a class="code" href="group__transport.html#gaede0bc2a0038ccdc7e1b193e322147fa">pn_transport_error</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#ga1a769e2e6c900c78c710407296cb4e13">pn_transport_bind</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <a class="code" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> *connection);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#ga2a66ff267333651eb166f3f6fa4ede50">pn_transport_unbind</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gaa83f8c30fc0e7518c6ef214bb7b4ea56">pn_transport_trace</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, pn_trace_t trace);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga7eb7915459eb433e68ff5ce80c5020a7">pn_transport_set_tracer</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <a class="code" href="group__transport.html#gae9b49fcbf6397e6916eb4e1357c90ff3">pn_tracer_t</a> tracer);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;PN_EXTERN <a class="code" href="group__transport.html#gae9b49fcbf6397e6916eb4e1357c90ff3">pn_tracer_t</a> <a class="code" href="group__transport.html#ga30d129d04a387ea34515c1641b83521b">pn_transport_get_tracer</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;PN_EXTERN <span class="keywordtype">void</span> *<a class="code" href="group__transport.html#ga000b2b9ab82139defb1a103f220ec58e">pn_transport_get_context</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gac22041ff85d1a1f5287ac2ba826edb74">pn_transport_set_context</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">void</span> *context);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;PN_EXTERN pn_record_t *<a class="code" href="group__transport.html#gabdd6d56837a028097b1676350d65a864">pn_transport_attachments</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gad603e8d72578bcedd2d9235f74f28f37">pn_transport_log</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *message);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gac773c1b9226783f36e2f2d4770e90e3f">pn_transport_vlogf</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, va_list ap);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga26cff9ffda93e2ffc8606e19eefe7f84">pn_transport_logf</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *fmt, ...);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;PN_EXTERN uint16_t <a class="code" href="group__transport.html#gac14e93cc5e8bc949fe7a0800ebd6e052">pn_transport_get_channel_max</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#ga8f080d7fb1e7fea2c93391d0b8f59773">pn_transport_set_channel_max</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, uint16_t channel_max);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;PN_EXTERN uint16_t <a class="code" href="group__transport.html#gaff7c08aeb92596ad9d269468d1557647">pn_transport_remote_channel_max</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;PN_EXTERN uint32_t <a class="code" href="group__transport.html#ga46552ed46e59de6530d2eee03707a51b">pn_transport_get_max_frame</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga51573625b6940884fed214b615f42e0f">pn_transport_set_max_frame</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, uint32_t size);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;PN_EXTERN uint32_t <a class="code" href="group__transport.html#ga351823e18e043576078f361d7dfe1cce">pn_transport_get_remote_max_frame</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;PN_EXTERN <a class="code" href="group__api__types.html#ga9a701bc6dc9af9f42c3f4679172a723c">pn_millis_t</a> <a class="code" href="group__transport.html#ga6980396c3d890b86656167c3a063eee7">pn_transport_get_idle_timeout</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#gafb1c98602d17524eb40e48bf610362d7">pn_transport_set_idle_timeout</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <a class="code" href="group__api__types.html#ga9a701bc6dc9af9f42c3f4679172a723c">pn_millis_t</a> timeout);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;PN_EXTERN <a class="code" href="group__api__types.html#ga9a701bc6dc9af9f42c3f4679172a723c">pn_millis_t</a> <a class="code" href="group__transport.html#gabdcbd5d08c5b5cd3603dee74421985b5">pn_transport_get_remote_idle_timeout</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#ga93f5efd9d63ebd1b1498fdace388ec3d">pn_transport_input</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *bytes, <span class="keywordtype">size_t</span> available);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#gae72fdee3b8aae3cb484b0ed98c2b802e">pn_transport_output</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">char</span> *bytes, <span class="keywordtype">size_t</span> size);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#gaa079bb5f5b9ea10734c9d8af26fba333">pn_transport_capacity</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;PN_EXTERN <span class="keywordtype">char</span> *<a class="code" href="group__transport.html#ga4a9e6c6b207c41647ff988b5ae090d85">pn_transport_tail</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#ga50c63f26b8b16f45e6e7912ca54de94b">pn_transport_push</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keyword">const</span> <span class="keywordtype">char</span> *src, <span class="keywordtype">size_t</span> size);</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#ga1f52a6f11322873e74b9daf004269a91">pn_transport_process</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">size_t</span> size);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#gaa8304f8719610e384aa9a3f5f3c98289">pn_transport_close_tail</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#ga81adf1fd6fa28054f2f80c424aa98122">pn_transport_pending</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;PN_EXTERN <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="group__transport.html#ga3ef8b0032b2a012c697e853e363338ea">pn_transport_head</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;PN_EXTERN ssize_t <a class="code" href="group__transport.html#ga09a0d15514ca9a14eb40f12425a52797">pn_transport_peek</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">char</span> *dst, <span class="keywordtype">size_t</span> size);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;PN_EXTERN <span class="keywordtype">void</span> <a class="code" href="group__transport.html#ga31470f0b0dbfd2c8c2929cc170858dc9">pn_transport_pop</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <span class="keywordtype">size_t</span> size);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;PN_EXTERN <span class="keywordtype">int</span> <a class="code" href="group__transport.html#gab8d0c7878d3d8ecda627678a6ec55072">pn_transport_close_head</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#gab8d9e4729b8835d3740de8d2c78831ef">pn_transport_quiesced</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#ga3eb018b426d168de8c8d9b3441be036c">pn_transport_head_closed</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#ga65e4c70675f7e94dfaa9d58b2a590694">pn_transport_tail_closed</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;PN_EXTERN <span class="keywordtype">bool</span> <a class="code" href="group__transport.html#ga55c589d9b3e69057b130036c3c2173df">pn_transport_closed</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;PN_EXTERN <a class="code" href="group__amqp__types.html#gad337c365b498106064ec28e00e5fb6dd">pn_timestamp_t</a> <a class="code" href="group__transport.html#ga0f2abc6827e9370c0aebb2e5dd7535a9">pn_transport_tick</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport, <a class="code" href="group__amqp__types.html#gad337c365b498106064ec28e00e5fb6dd">pn_timestamp_t</a> now);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;PN_EXTERN uint64_t <a class="code" href="group__transport.html#ga3887e8d8c60d06df9978947edaf4d461">pn_transport_get_frames_output</a>(<span class="keyword">const</span> <a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;PN_EXTERN uint64_t <a class="code" href="group__transport.html#ga92ce0b44ab956c182d646824b4e9ed61">pn_transport_get_frames_input</a>(<span class="keyword">const</span> <a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;PN_EXTERN <a class="code" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> *<a class="code" href="group__transport.html#ga2b98f594e012c24e7b17dcc91e3d4caf">pn_transport_connection</a>(<a class="code" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a> *transport);</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;}</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* transport.h */</span><span class="preprocessor"></span></div><div class="ttc" id="group__api__types_html_ga9a701bc6dc9af9f42c3f4679172a723c"><div class="ttname"><a href="group__api__types.html#ga9a701bc6dc9af9f42c3f4679172a723c">pn_millis_t</a></div><div class="ttdeci">uint32_t pn_millis_t</div><div class="ttdoc">A span of time in milliseconds. </div><div class="ttdef"><b>Definition:</b> types.h:145</div></div>
<div class="ttc" id="group__transport_html_gabdd6d56837a028097b1676350d65a864"><div class="ttname"><a href="group__transport.html#gabdd6d56837a028097b1676350d65a864">pn_transport_attachments</a></div><div class="ttdeci">pn_record_t * pn_transport_attachments(pn_transport_t *transport)</div><div class="ttdoc">Get the attachments that are associated with a transport object. </div></div>
<div class="ttc" id="group__transport_html_gac773c1b9226783f36e2f2d4770e90e3f"><div class="ttname"><a href="group__transport.html#gac773c1b9226783f36e2f2d4770e90e3f">pn_transport_vlogf</a></div><div class="ttdeci">void pn_transport_vlogf(pn_transport_t *transport, const char *fmt, va_list ap)</div><div class="ttdoc">Log a printf formatted message using a transport&amp;#39;s logging mechanism. </div></div>
<div class="ttc" id="group__transport_html_gafb1c98602d17524eb40e48bf610362d7"><div class="ttname"><a href="group__transport.html#gafb1c98602d17524eb40e48bf610362d7">pn_transport_set_idle_timeout</a></div><div class="ttdeci">void pn_transport_set_idle_timeout(pn_transport_t *transport, pn_millis_t timeout)</div><div class="ttdoc">Set the idle timeout for a transport. </div></div>
<div class="ttc" id="group__transport_html_ga65e4c70675f7e94dfaa9d58b2a590694"><div class="ttname"><a href="group__transport.html#ga65e4c70675f7e94dfaa9d58b2a590694">pn_transport_tail_closed</a></div><div class="ttdeci">bool pn_transport_tail_closed(pn_transport_t *transport)</div><div class="ttdoc">True if pn_transport_close_tail() has been called. </div></div>
<div class="ttc" id="group__transport_html_ga285b4cced59c665ae178adf26128d3fc"><div class="ttname"><a href="group__transport.html#ga285b4cced59c665ae178adf26128d3fc">pn_transport_require_auth</a></div><div class="ttdeci">void pn_transport_require_auth(pn_transport_t *transport, bool required)</div><div class="ttdoc">Set whether a non-authenticated transport connection is allowed. </div></div>
<div class="ttc" id="group__transport_html_ga26cff9ffda93e2ffc8606e19eefe7f84"><div class="ttname"><a href="group__transport.html#ga26cff9ffda93e2ffc8606e19eefe7f84">pn_transport_logf</a></div><div class="ttdeci">void pn_transport_logf(pn_transport_t *transport, const char *fmt,...)</div><div class="ttdoc">Log a printf formatted message using a transport&amp;#39;s logging mechanism. </div></div>
<div class="ttc" id="group__transport_html_ga4a9e6c6b207c41647ff988b5ae090d85"><div class="ttname"><a href="group__transport.html#ga4a9e6c6b207c41647ff988b5ae090d85">pn_transport_tail</a></div><div class="ttdeci">char * pn_transport_tail(pn_transport_t *transport)</div><div class="ttdoc">Get the transport&amp;#39;s tail pointer. </div></div>
<div class="ttc" id="group__transport_html_gac26eda05f649bbf0399f3d8d78d12fa8"><div class="ttname"><a href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a></div><div class="ttdeci">struct pn_transport_t pn_transport_t</div><div class="ttdoc">A network channel supporting an AMQP connection. </div><div class="ttdef"><b>Definition:</b> types.h:431</div></div>
<div class="ttc" id="group__transport_html_ga09a0d15514ca9a14eb40f12425a52797"><div class="ttname"><a href="group__transport.html#ga09a0d15514ca9a14eb40f12425a52797">pn_transport_peek</a></div><div class="ttdeci">ssize_t pn_transport_peek(pn_transport_t *transport, char *dst, size_t size)</div><div class="ttdoc">Copies size bytes from the head of the transport to the dst pointer. </div></div>
<div class="ttc" id="group__transport_html_ga3887e8d8c60d06df9978947edaf4d461"><div class="ttname"><a href="group__transport.html#ga3887e8d8c60d06df9978947edaf4d461">pn_transport_get_frames_output</a></div><div class="ttdeci">uint64_t pn_transport_get_frames_output(const pn_transport_t *transport)</div><div class="ttdoc">Get the number of frames output by a transport. </div></div>
<div class="ttc" id="group__transport_html_gaa83f8c30fc0e7518c6ef214bb7b4ea56"><div class="ttname"><a href="group__transport.html#gaa83f8c30fc0e7518c6ef214bb7b4ea56">pn_transport_trace</a></div><div class="ttdeci">void pn_transport_trace(pn_transport_t *transport, pn_trace_t trace)</div><div class="ttdoc">Update a transports trace flags. </div></div>
<div class="ttc" id="group__error_html_ga24a289d5b32c9bd8a775600a5af83d52"><div class="ttname"><a href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a></div><div class="ttdeci">struct pn_error_t pn_error_t</div><div class="ttdoc">An int error code and some string text to describe the error. </div><div class="ttdef"><b>Definition:</b> error.h:44</div></div>
<div class="ttc" id="group__transport_html_ga1a769e2e6c900c78c710407296cb4e13"><div class="ttname"><a href="group__transport.html#ga1a769e2e6c900c78c710407296cb4e13">pn_transport_bind</a></div><div class="ttdeci">int pn_transport_bind(pn_transport_t *transport, pn_connection_t *connection)</div><div class="ttdoc">Binds the transport to an AMQP connection. </div></div>
<div class="ttc" id="group__transport_html_ga55c589d9b3e69057b130036c3c2173df"><div class="ttname"><a href="group__transport.html#ga55c589d9b3e69057b130036c3c2173df">pn_transport_closed</a></div><div class="ttdeci">bool pn_transport_closed(pn_transport_t *transport)</div><div class="ttdoc">Equivalent to pn_transport_head_closed(transport) &amp;&amp; pn_transport_tail_closed(transport) ...</div></div>
<div class="ttc" id="group__transport_html_ga93f5efd9d63ebd1b1498fdace388ec3d"><div class="ttname"><a href="group__transport.html#ga93f5efd9d63ebd1b1498fdace388ec3d">pn_transport_input</a></div><div class="ttdeci">ssize_t pn_transport_input(pn_transport_t *transport, const char *bytes, size_t available)</div><div class="ttdoc">Deprecated </div></div>
<div class="ttc" id="group__transport_html_ga31470f0b0dbfd2c8c2929cc170858dc9"><div class="ttname"><a href="group__transport.html#ga31470f0b0dbfd2c8c2929cc170858dc9">pn_transport_pop</a></div><div class="ttdeci">void pn_transport_pop(pn_transport_t *transport, size_t size)</div><div class="ttdoc">Removes size bytes of output from the pending output queue following the transport&amp;#39;s head pointer...</div></div>
<div class="ttc" id="group__transport_html_ga6b2750a2d313c65aabe5dc8a99f1de58"><div class="ttname"><a href="group__transport.html#ga6b2750a2d313c65aabe5dc8a99f1de58">pn_transport_get_user</a></div><div class="ttdeci">const char * pn_transport_get_user(pn_transport_t *transport)</div><div class="ttdoc">Retrieve the authenticated user. </div></div>
<div class="ttc" id="group__transport_html_gaa079bb5f5b9ea10734c9d8af26fba333"><div class="ttname"><a href="group__transport.html#gaa079bb5f5b9ea10734c9d8af26fba333">pn_transport_capacity</a></div><div class="ttdeci">ssize_t pn_transport_capacity(pn_transport_t *transport)</div><div class="ttdoc">Get the amount of free space for input following the transport&amp;#39;s tail pointer. </div></div>
<div class="ttc" id="group__transport_html_ga000b2b9ab82139defb1a103f220ec58e"><div class="ttname"><a href="group__transport.html#ga000b2b9ab82139defb1a103f220ec58e">pn_transport_get_context</a></div><div class="ttdeci">void * pn_transport_get_context(pn_transport_t *transport)</div><div class="ttdoc">Deprecated - Use pn_transport_attachments(). </div></div>
<div class="ttc" id="group__transport_html_ga0f2abc6827e9370c0aebb2e5dd7535a9"><div class="ttname"><a href="group__transport.html#ga0f2abc6827e9370c0aebb2e5dd7535a9">pn_transport_tick</a></div><div class="ttdeci">pn_timestamp_t pn_transport_tick(pn_transport_t *transport, pn_timestamp_t now)</div><div class="ttdoc">Process any pending transport timer events. </div></div>
<div class="ttc" id="group__transport_html_gaeb7e30ead4a6ab080d0005379be20e34"><div class="ttname"><a href="group__transport.html#gaeb7e30ead4a6ab080d0005379be20e34">pn_transport_require_encryption</a></div><div class="ttdeci">void pn_transport_require_encryption(pn_transport_t *transport, bool required)</div><div class="ttdoc">Set whether a non encrypted transport connection is allowed. </div></div>
<div class="ttc" id="condition_8h_html"><div class="ttname"><a href="condition_8h.html">condition.h</a></div><div class="ttdoc">An endpoint error state. </div></div>
<div class="ttc" id="group__transport_html_ga6980396c3d890b86656167c3a063eee7"><div class="ttname"><a href="group__transport.html#ga6980396c3d890b86656167c3a063eee7">pn_transport_get_idle_timeout</a></div><div class="ttdeci">pn_millis_t pn_transport_get_idle_timeout(pn_transport_t *transport)</div><div class="ttdoc">Get the idle timeout for a transport. </div></div>
<div class="ttc" id="group__transport_html_gabdcbd5d08c5b5cd3603dee74421985b5"><div class="ttname"><a href="group__transport.html#gabdcbd5d08c5b5cd3603dee74421985b5">pn_transport_get_remote_idle_timeout</a></div><div class="ttdeci">pn_millis_t pn_transport_get_remote_idle_timeout(pn_transport_t *transport)</div><div class="ttdoc">Get the idle timeout for a transport&amp;#39;s remote peer. </div></div>
<div class="ttc" id="group__transport_html_gac14e93cc5e8bc949fe7a0800ebd6e052"><div class="ttname"><a href="group__transport.html#gac14e93cc5e8bc949fe7a0800ebd6e052">pn_transport_get_channel_max</a></div><div class="ttdeci">uint16_t pn_transport_get_channel_max(pn_transport_t *transport)</div><div class="ttdoc">Get the maximum allowed channel for a transport. </div></div>
<div class="ttc" id="group__transport_html_ga92ce0b44ab956c182d646824b4e9ed61"><div class="ttname"><a href="group__transport.html#ga92ce0b44ab956c182d646824b4e9ed61">pn_transport_get_frames_input</a></div><div class="ttdeci">uint64_t pn_transport_get_frames_input(const pn_transport_t *transport)</div><div class="ttdoc">Get the number of frames input by a transport. </div></div>
<div class="ttc" id="group__transport_html_ga51573625b6940884fed214b615f42e0f"><div class="ttname"><a href="group__transport.html#ga51573625b6940884fed214b615f42e0f">pn_transport_set_max_frame</a></div><div class="ttdeci">void pn_transport_set_max_frame(pn_transport_t *transport, uint32_t size)</div><div class="ttdoc">Set the maximum frame size of a transport. </div></div>
<div class="ttc" id="group__transport_html_ga8f080d7fb1e7fea2c93391d0b8f59773"><div class="ttname"><a href="group__transport.html#ga8f080d7fb1e7fea2c93391d0b8f59773">pn_transport_set_channel_max</a></div><div class="ttdeci">int pn_transport_set_channel_max(pn_transport_t *transport, uint16_t channel_max)</div><div class="ttdoc">Set the maximum allowed channel number for a transport. </div></div>
<div class="ttc" id="group__transport_html_gab8d0c7878d3d8ecda627678a6ec55072"><div class="ttname"><a href="group__transport.html#gab8d0c7878d3d8ecda627678a6ec55072">pn_transport_close_head</a></div><div class="ttdeci">int pn_transport_close_head(pn_transport_t *transport)</div><div class="ttdoc">Indicate that the output has closed. </div></div>
<div class="ttc" id="group__transport_html_gaff7c08aeb92596ad9d269468d1557647"><div class="ttname"><a href="group__transport.html#gaff7c08aeb92596ad9d269468d1557647">pn_transport_remote_channel_max</a></div><div class="ttdeci">uint16_t pn_transport_remote_channel_max(pn_transport_t *transport)</div><div class="ttdoc">Get the maximum allowed channel of a transport&amp;#39;s remote peer. </div></div>
<div class="ttc" id="group__transport_html_gac22041ff85d1a1f5287ac2ba826edb74"><div class="ttname"><a href="group__transport.html#gac22041ff85d1a1f5287ac2ba826edb74">pn_transport_set_context</a></div><div class="ttdeci">void pn_transport_set_context(pn_transport_t *transport, void *context)</div><div class="ttdoc">Deprecated - Use pn_transport_attachments(). </div></div>
<div class="ttc" id="group__transport_html_ga7eb7915459eb433e68ff5ce80c5020a7"><div class="ttname"><a href="group__transport.html#ga7eb7915459eb433e68ff5ce80c5020a7">pn_transport_set_tracer</a></div><div class="ttdeci">void pn_transport_set_tracer(pn_transport_t *transport, pn_tracer_t tracer)</div><div class="ttdoc">Set the tracing function used by a transport. </div></div>
<div class="ttc" id="group__transport_html_ga30d129d04a387ea34515c1641b83521b"><div class="ttname"><a href="group__transport.html#ga30d129d04a387ea34515c1641b83521b">pn_transport_get_tracer</a></div><div class="ttdeci">pn_tracer_t pn_transport_get_tracer(pn_transport_t *transport)</div><div class="ttdoc">Get the tracing function used by a transport. </div></div>
<div class="ttc" id="group__transport_html_gaede0bc2a0038ccdc7e1b193e322147fa"><div class="ttname"><a href="group__transport.html#gaede0bc2a0038ccdc7e1b193e322147fa">pn_transport_error</a></div><div class="ttdeci">pn_error_t * pn_transport_error(pn_transport_t *transport)</div><div class="ttdoc">Deprecated </div></div>
<div class="ttc" id="group__transport_html_gad603e8d72578bcedd2d9235f74f28f37"><div class="ttname"><a href="group__transport.html#gad603e8d72578bcedd2d9235f74f28f37">pn_transport_log</a></div><div class="ttdeci">void pn_transport_log(pn_transport_t *transport, const char *message)</div><div class="ttdoc">Log a message using a transport&amp;#39;s logging mechanism. </div></div>
<div class="ttc" id="group__transport_html_ga4695788da8491f0c7104bfe36634ff94"><div class="ttname"><a href="group__transport.html#ga4695788da8491f0c7104bfe36634ff94">pn_trace_t</a></div><div class="ttdeci">int pn_trace_t</div><div class="ttdoc">Holds the trace flags for an AMQP transport. </div><div class="ttdef"><b>Definition:</b> transport.h:57</div></div>
<div class="ttc" id="group__transport_html_ga1f52a6f11322873e74b9daf004269a91"><div class="ttname"><a href="group__transport.html#ga1f52a6f11322873e74b9daf004269a91">pn_transport_process</a></div><div class="ttdeci">int pn_transport_process(pn_transport_t *transport, size_t size)</div><div class="ttdoc">Process input data following the tail pointer. </div></div>
<div class="ttc" id="group__transport_html_ga50c63f26b8b16f45e6e7912ca54de94b"><div class="ttname"><a href="group__transport.html#ga50c63f26b8b16f45e6e7912ca54de94b">pn_transport_push</a></div><div class="ttdeci">ssize_t pn_transport_push(pn_transport_t *transport, const char *src, size_t size)</div><div class="ttdoc">Pushes the supplied bytes into the tail of the transport. </div></div>
<div class="ttc" id="group__transport_html_ga737021ca419e948932071aad2ad38c5b"><div class="ttname"><a href="group__transport.html#ga737021ca419e948932071aad2ad38c5b">pn_transport_is_encrypted</a></div><div class="ttdeci">bool pn_transport_is_encrypted(pn_transport_t *transport)</div><div class="ttdoc">Tell whether the transport connection is encrypted. </div></div>
<div class="ttc" id="group__transport_html_ga351823e18e043576078f361d7dfe1cce"><div class="ttname"><a href="group__transport.html#ga351823e18e043576078f361d7dfe1cce">pn_transport_get_remote_max_frame</a></div><div class="ttdeci">uint32_t pn_transport_get_remote_max_frame(pn_transport_t *transport)</div><div class="ttdoc">Get the maximum frame size of a transport&amp;#39;s remote peer. </div></div>
<div class="ttc" id="group__transport_html_ga3ef8b0032b2a012c697e853e363338ea"><div class="ttname"><a href="group__transport.html#ga3ef8b0032b2a012c697e853e363338ea">pn_transport_head</a></div><div class="ttdeci">const char * pn_transport_head(pn_transport_t *transport)</div><div class="ttdoc">Get the transport&amp;#39;s head pointer. </div></div>
<div class="ttc" id="group__transport_html_gae9b49fcbf6397e6916eb4e1357c90ff3"><div class="ttname"><a href="group__transport.html#gae9b49fcbf6397e6916eb4e1357c90ff3">pn_tracer_t</a></div><div class="ttdeci">void(* pn_tracer_t)(pn_transport_t *transport, const char *message)</div><div class="ttdoc">Callback for customizing logging behaviour. </div><div class="ttdef"><b>Definition:</b> transport.h:62</div></div>
<div class="ttc" id="group__transport_html_ga81adf1fd6fa28054f2f80c424aa98122"><div class="ttname"><a href="group__transport.html#ga81adf1fd6fa28054f2f80c424aa98122">pn_transport_pending</a></div><div class="ttdeci">ssize_t pn_transport_pending(pn_transport_t *transport)</div><div class="ttdoc">Get the number of pending output bytes following the transport&amp;#39;s head pointer. </div></div>
<div class="ttc" id="group__connection_html_ga886351d81ff3a977a284a206526c5aff"><div class="ttname"><a href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a></div><div class="ttdeci">struct pn_connection_t pn_connection_t</div><div class="ttdoc">An AMQP Connection object. </div><div class="ttdef"><b>Definition:</b> types.h:281</div></div>
<div class="ttc" id="group__transport_html_gae72fdee3b8aae3cb484b0ed98c2b802e"><div class="ttname"><a href="group__transport.html#gae72fdee3b8aae3cb484b0ed98c2b802e">pn_transport_output</a></div><div class="ttdeci">ssize_t pn_transport_output(pn_transport_t *transport, char *bytes, size_t size)</div><div class="ttdoc">Deprecated </div></div>
<div class="ttc" id="group__transport_html_gac458d9fdb684f9501e89b96fc51f5c34"><div class="ttname"><a href="group__transport.html#gac458d9fdb684f9501e89b96fc51f5c34">pn_transport_condition</a></div><div class="ttdeci">pn_condition_t * pn_transport_condition(pn_transport_t *transport)</div><div class="ttdoc">Get additional information about the condition of the transport. </div></div>
<div class="ttc" id="group__condition_html_ga11eb7db7d2c205169fe3d47c996a95a5"><div class="ttname"><a href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a></div><div class="ttdeci">struct pn_condition_t pn_condition_t</div><div class="ttdoc">An AMQP Condition object. </div><div class="ttdef"><b>Definition:</b> condition.h:64</div></div>
<div class="ttc" id="group__transport_html_ga6ab28051242631d9bea4814e8670ab90"><div class="ttname"><a href="group__transport.html#ga6ab28051242631d9bea4814e8670ab90">pn_transport_free</a></div><div class="ttdeci">void pn_transport_free(pn_transport_t *transport)</div><div class="ttdoc">Free a transport object. </div></div>
<div class="ttc" id="group__transport_html_gaa8304f8719610e384aa9a3f5f3c98289"><div class="ttname"><a href="group__transport.html#gaa8304f8719610e384aa9a3f5f3c98289">pn_transport_close_tail</a></div><div class="ttdeci">int pn_transport_close_tail(pn_transport_t *transport)</div><div class="ttdoc">Indicate that the input has reached End Of Stream (EOS). </div></div>
<div class="ttc" id="group__transport_html_gab8d9e4729b8835d3740de8d2c78831ef"><div class="ttname"><a href="group__transport.html#gab8d9e4729b8835d3740de8d2c78831ef">pn_transport_quiesced</a></div><div class="ttdeci">bool pn_transport_quiesced(pn_transport_t *transport)</div><div class="ttdoc">Check if a transport has buffered data. </div></div>
<div class="ttc" id="group__transport_html_ga8a60f6a48e4bd2d090f5bd264cf7f90d"><div class="ttname"><a href="group__transport.html#ga8a60f6a48e4bd2d090f5bd264cf7f90d">pn_transport_is_authenticated</a></div><div class="ttdeci">bool pn_transport_is_authenticated(pn_transport_t *transport)</div><div class="ttdoc">Tell whether the transport connection is authenticated. </div></div>
<div class="ttc" id="group__transport_html_ga3eb018b426d168de8c8d9b3441be036c"><div class="ttname"><a href="group__transport.html#ga3eb018b426d168de8c8d9b3441be036c">pn_transport_head_closed</a></div><div class="ttdeci">bool pn_transport_head_closed(pn_transport_t *transport)</div><div class="ttdoc">True if pn_transport_close_head() has been called. </div></div>
<div class="ttc" id="group__transport_html_gaf9833d93faf6a6ed68039e4a909cdd77"><div class="ttname"><a href="group__transport.html#gaf9833d93faf6a6ed68039e4a909cdd77">pn_transport</a></div><div class="ttdeci">pn_transport_t * pn_transport(void)</div><div class="ttdoc">Factory for creating a transport. </div></div>
<div class="ttc" id="group__transport_html_gac5bebd26c0942bc17d7fad36577110f8"><div class="ttname"><a href="group__transport.html#gac5bebd26c0942bc17d7fad36577110f8">pn_transport_set_server</a></div><div class="ttdeci">void pn_transport_set_server(pn_transport_t *transport)</div><div class="ttdoc">Configure a transport as a server. </div></div>
<div class="ttc" id="group__amqp__types_html_gad337c365b498106064ec28e00e5fb6dd"><div class="ttname"><a href="group__amqp__types.html#gad337c365b498106064ec28e00e5fb6dd">pn_timestamp_t</a></div><div class="ttdeci">int64_t pn_timestamp_t</div><div class="ttdoc">A 64-bit timestamp in milliseconds since the Unix epoch. </div><div class="ttdef"><b>Definition:</b> types.h:166</div></div>
<div class="ttc" id="group__transport_html_ga2a66ff267333651eb166f3f6fa4ede50"><div class="ttname"><a href="group__transport.html#ga2a66ff267333651eb166f3f6fa4ede50">pn_transport_unbind</a></div><div class="ttdeci">int pn_transport_unbind(pn_transport_t *transport)</div><div class="ttdoc">Unbinds a transport from its AMQP connection. </div></div>
<div class="ttc" id="group__transport_html_ga2b98f594e012c24e7b17dcc91e3d4caf"><div class="ttname"><a href="group__transport.html#ga2b98f594e012c24e7b17dcc91e3d4caf">pn_transport_connection</a></div><div class="ttdeci">pn_connection_t * pn_transport_connection(pn_transport_t *transport)</div><div class="ttdoc">Access the AMQP Connection associated with the transport. </div></div>
<div class="ttc" id="group__transport_html_ga46552ed46e59de6530d2eee03707a51b"><div class="ttname"><a href="group__transport.html#ga46552ed46e59de6530d2eee03707a51b">pn_transport_get_max_frame</a></div><div class="ttdeci">uint32_t pn_transport_get_max_frame(pn_transport_t *transport)</div><div class="ttdoc">Get the maximum frame size of a transport. </div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_25143d27009f52d175c1d192441a738a.html">proton</a></li><li class="navelem"><a class="el" href="transport_8h.html">transport.h</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
</ul>
</div>
</body>
</html>