http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection.js 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection.js
new file mode 100755
index 0000000..98e1fb9
--- /dev/null
+++ b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection.js
@@ -0,0 +1,44 @@
+var group__connection =
+[
+    [ "PN_LOCAL_UNINIT", 
"group__connection.html#gac83dd8123b992813be86fe0f7eaf8f61", null ],
+    [ "PN_LOCAL_ACTIVE", 
"group__connection.html#ga0c3bf54f0991944a2f6eea36b561fa2b", null ],
+    [ "PN_LOCAL_CLOSED", 
"group__connection.html#ga602c2c870ebed1d9bfe100876909225b", null ],
+    [ "PN_REMOTE_UNINIT", 
"group__connection.html#ga4c35fcb0aacd254d586df8594ee770d3", null ],
+    [ "PN_REMOTE_ACTIVE", 
"group__connection.html#gad96220f2886c21a4f2eebc9487f53a87", null ],
+    [ "PN_REMOTE_CLOSED", 
"group__connection.html#ga764c602a20457f9aa8862825b6d13a8d", null ],
+    [ "PN_LOCAL_MASK", 
"group__connection.html#ga32329c4bb3e23607a243cd8100c01264", null ],
+    [ "PN_REMOTE_MASK", 
"group__connection.html#ga695af0c2d90d50f4baf403ea60710fa3", null ],
+    [ "pn_state_t", 
"group__connection.html#gaa83193a655e32bffc18624acc2c39233", null ],
+    [ "pn_connection_t", 
"group__connection.html#ga886351d81ff3a977a284a206526c5aff", null ],
+    [ "pn_connection", 
"group__connection.html#gaa9e59c468ec0568b1528f5f83c4b301d", null ],
+    [ "pn_connection_free", 
"group__connection.html#ga00cbef1a9f5062a6e1f113fda923f65e", null ],
+    [ "pn_connection_release", 
"group__connection.html#ga7c88b4833cf81d801b27d00b45d137b5", null ],
+    [ "pn_connection_error", 
"group__connection.html#gad3aad758ccb4690e78d40c1a73567d73", null ],
+    [ "pn_connection_collect", 
"group__connection.html#ga2fd2089e8eaa2a362606498f233ada61", null ],
+    [ "pn_connection_collector", 
"group__connection.html#ga663c29ee6de4d522ba061224bc6240ad", null ],
+    [ "pn_connection_get_context", 
"group__connection.html#ga50613e6c09186dc3f1a2f36238c61f07", null ],
+    [ "pn_connection_set_context", 
"group__connection.html#gad3203b366cb1ff5becd1778a8dd6b1a6", null ],
+    [ "pn_connection_attachments", 
"group__connection.html#gad8b6c777b525c9da9401e3a770db15da", null ],
+    [ "pn_connection_state", 
"group__connection.html#ga277d01dc2f87870ee260d43cf40abe13", null ],
+    [ "pn_connection_open", 
"group__connection.html#ga4c0a2d40bb95202477ccc5aaa7456670", null ],
+    [ "pn_connection_close", 
"group__connection.html#gac25afdf810ad188b2cb3bf31a7482ca0", null ],
+    [ "pn_connection_reset", 
"group__connection.html#ga3a76135d214e12a0735441c1ba2c28d3", null ],
+    [ "pn_connection_condition", 
"group__connection.html#gaace04a030192f34747bb1ff3675c58f1", null ],
+    [ "pn_connection_remote_condition", 
"group__connection.html#ga72a362389b99d8e891bf2e4fb4290754", null ],
+    [ "pn_connection_get_container", 
"group__connection.html#ga61e1f6386d18a568da50b998200eb87b", null ],
+    [ "pn_connection_set_container", 
"group__connection.html#gac4a34e0b1fc5665b26ae47a80a422a1a", null ],
+    [ "pn_connection_set_user", 
"group__connection.html#gafb84dd2ef7551ad864be08cb31010d19", null ],
+    [ "pn_connection_set_password", 
"group__connection.html#ga8be7fdeb5a229d16e45fa122844fb285", null ],
+    [ "pn_connection_get_user", 
"group__connection.html#ga5f4b94211f97bbc3bb64642f6f597fe8", null ],
+    [ "pn_connection_get_hostname", 
"group__connection.html#ga3ab6a8a556270cff74c39da910a89b5c", null ],
+    [ "pn_connection_set_hostname", 
"group__connection.html#ga0c3bed8e6764915a137a9daff199ecbb", null ],
+    [ "pn_connection_remote_container", 
"group__connection.html#gabb5b585ee8bae0e88d2b42b87772082a", null ],
+    [ "pn_connection_remote_hostname", 
"group__connection.html#gabf25d7b763951b4a9c856536d6db0600", null ],
+    [ "pn_connection_offered_capabilities", 
"group__connection.html#gabc8d505108a850837a0d2fb204875390", null ],
+    [ "pn_connection_desired_capabilities", 
"group__connection.html#ga241faafc5a98cf9b91aa919263bd9bd8", null ],
+    [ "pn_connection_properties", 
"group__connection.html#gac26de255ed04e73295d6aa973a663142", null ],
+    [ "pn_connection_remote_offered_capabilities", 
"group__connection.html#ga9bf90f0f395d26e320293063b70d040f", null ],
+    [ "pn_connection_remote_desired_capabilities", 
"group__connection.html#ga722d53b6063278fbcab5f814613c70ec", null ],
+    [ "pn_connection_remote_properties", 
"group__connection.html#ga24a2d5aba432db549257993bfaa761dd", null ],
+    [ "pn_connection_transport", 
"group__connection.html#gad8bd46661ca997b9b2c2c38cb6983c59", null ]
+];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.html
 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.html
new file mode 100755
index 0000000..42d3e6e
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.html
@@ -0,0 +1,648 @@
+<!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: Connection driver</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('group__connection__driver.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="summary">
+<a href="#nested-classes">Classes</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">Connection driver<div class="ingroups"><a class="el" 
href="group__io.html">IO</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><b>Unsettled API</b> - An API for low-level IO integration.  
+<a href="#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:structpn__connection__driver__t"><td class="memItemLeft" 
align="right" valign="top">struct &#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a></td></tr>
+<tr class="memdesc:structpn__connection__driver__t"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">The elements needed to 
drive AMQP IO and events.  <a 
href="group__connection__driver.html#structpn__connection__driver__t">More...</a><br
 /></td></tr>
+<tr class="separator:structpn__connection__driver__t"><td class="memSeparator" 
colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ga56e55c7d0343529b7fb3002b930a36b2"><td class="memItemLeft" 
align="right" valign="top">#define&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga56e55c7d0343529b7fb3002b930a36b2">PN_TRANSPORT_WRITE_CLOSED</a></td></tr>
+<tr class="memdesc:ga56e55c7d0343529b7fb3002b930a36b2"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">The write side of the 
transport is closed, it will no longer produce bytes to write to external IO.  
<a href="#ga56e55c7d0343529b7fb3002b930a36b2">More...</a><br /></td></tr>
+<tr class="separator:ga56e55c7d0343529b7fb3002b930a36b2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9a331416719994f6cb0971acce5208fb"><td class="memItemLeft" 
align="right" valign="top">#define&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga9a331416719994f6cb0971acce5208fb">PN_TRANSPORT_READ_CLOSED</a></td></tr>
+<tr class="memdesc:ga9a331416719994f6cb0971acce5208fb"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">The read side of the 
transport is closed, it will no longer read bytes from external IO.  <a 
href="#ga9a331416719994f6cb0971acce5208fb">More...</a><br /></td></tr>
+<tr class="separator:ga9a331416719994f6cb0971acce5208fb"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ga9793522a25c9741e8d17a570a47e9711"><td class="memItemLeft" 
align="right" valign="top"><a id="ga9793522a25c9741e8d17a570a47e9711"></a>
+typedef struct <a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>&#160;</td><td
 class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga9793522a25c9741e8d17a570a47e9711">pn_connection_driver_t</a></td></tr>
+<tr class="memdesc:ga9793522a25c9741e8d17a570a47e9711"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">The elements needed to 
drive AMQP IO and events. <br /></td></tr>
+<tr class="separator:ga9793522a25c9741e8d17a570a47e9711"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ga2330d329e295da740ef8d126657470c6"><td class="memItemLeft" 
align="right" valign="top">int&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga2330d329e295da740ef8d126657470c6">pn_connection_driver_init</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *, <a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *, <a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *)</td></tr>
+<tr class="memdesc:ga2330d329e295da740ef8d126657470c6"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Set connection and 
transport to the provided values, or create a new <a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 or <a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 if either is NULL.  <a 
href="#ga2330d329e295da740ef8d126657470c6">More...</a><br /></td></tr>
+<tr class="separator:ga2330d329e295da740ef8d126657470c6"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad2bdef0f5abe7cf593afcee237c6af56"><td class="memItemLeft" 
align="right" valign="top">int&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#gad2bdef0f5abe7cf593afcee237c6af56">pn_connection_driver_bind</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d)</td></tr>
+<tr class="memdesc:gad2bdef0f5abe7cf593afcee237c6af56"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Force binding of the 
transport.  <a href="#gad2bdef0f5abe7cf593afcee237c6af56">More...</a><br 
/></td></tr>
+<tr class="separator:gad2bdef0f5abe7cf593afcee237c6af56"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3e8959d7897cd9415f687981c1d94c96"><td class="memItemLeft" 
align="right" valign="top">void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga3e8959d7897cd9415f687981c1d94c96">pn_connection_driver_destroy</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga3e8959d7897cd9415f687981c1d94c96"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Unbind, release and free 
the connection and transport.  <a 
href="#ga3e8959d7897cd9415f687981c1d94c96">More...</a><br /></td></tr>
+<tr class="separator:ga3e8959d7897cd9415f687981c1d94c96"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga96a6bf8efc2dd7b76734cb2432441333"><td class="memItemLeft" 
align="right" valign="top"><a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga96a6bf8efc2dd7b76734cb2432441333">pn_connection_driver_release_connection</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d)</td></tr>
+<tr class="memdesc:ga96a6bf8efc2dd7b76734cb2432441333"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Disassociate the driver's 
connection from its transport and collector and sets d-&gt;connection = NULL.  
<a href="#ga96a6bf8efc2dd7b76734cb2432441333">More...</a><br /></td></tr>
+<tr class="separator:ga96a6bf8efc2dd7b76734cb2432441333"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0dd152968de6ec06de352e1cbc51c438"><td class="memItemLeft" 
align="right" valign="top"><a class="el" 
href="group__api__types.html#structpn__rwbytes__t">pn_rwbytes_t</a>&#160;</td><td
 class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga0dd152968de6ec06de352e1cbc51c438">pn_connection_driver_read_buffer</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga0dd152968de6ec06de352e1cbc51c438"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the read buffer.  <a 
href="#ga0dd152968de6ec06de352e1cbc51c438">More...</a><br /></td></tr>
+<tr class="separator:ga0dd152968de6ec06de352e1cbc51c438"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa164510528ce160efddbde2245c438b1"><td class="memItemLeft" 
align="right" valign="top"><a id="gaa164510528ce160efddbde2245c438b1"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gaa164510528ce160efddbde2245c438b1">pn_connection_driver_read_done</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *, size_t n)</td></tr>
+<tr class="memdesc:gaa164510528ce160efddbde2245c438b1"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Process the first n bytes 
of data in <a class="el" 
href="group__connection__driver.html#ga0dd152968de6ec06de352e1cbc51c438" 
title="Get the read buffer. ">pn_connection_driver_read_buffer()</a> and 
reclaim the buffer space. <br /></td></tr>
+<tr class="separator:gaa164510528ce160efddbde2245c438b1"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga11b59aec2b54acdefd63dfbce8d09a3f"><td class="memItemLeft" 
align="right" valign="top">void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga11b59aec2b54acdefd63dfbce8d09a3f">pn_connection_driver_read_close</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga11b59aec2b54acdefd63dfbce8d09a3f"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Close the read side.  <a 
href="#ga11b59aec2b54acdefd63dfbce8d09a3f">More...</a><br /></td></tr>
+<tr class="separator:ga11b59aec2b54acdefd63dfbce8d09a3f"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga56ccde529842f18774fdf827e86afa23"><td class="memItemLeft" 
align="right" valign="top"><a id="ga56ccde529842f18774fdf827e86afa23"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga56ccde529842f18774fdf827e86afa23">pn_connection_driver_read_closed</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga56ccde529842f18774fdf827e86afa23"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">True if read side is 
closed. <br /></td></tr>
+<tr class="separator:ga56ccde529842f18774fdf827e86afa23"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga3e5795e14572eec632231fe9f916ca5f"><td class="memItemLeft" 
align="right" valign="top"><a class="el" 
href="group__api__types.html#structpn__bytes__t">pn_bytes_t</a>&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga3e5795e14572eec632231fe9f916ca5f">pn_connection_driver_write_buffer</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga3e5795e14572eec632231fe9f916ca5f"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the write buffer.  <a 
href="#ga3e5795e14572eec632231fe9f916ca5f">More...</a><br /></td></tr>
+<tr class="separator:ga3e5795e14572eec632231fe9f916ca5f"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaead42b6a9356214d9e2bb591af009243"><td class="memItemLeft" 
align="right" valign="top">void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#gaead42b6a9356214d9e2bb591af009243">pn_connection_driver_write_done</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *, size_t n)</td></tr>
+<tr class="memdesc:gaead42b6a9356214d9e2bb591af009243"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Call when the first n bytes 
of <a class="el" 
href="group__connection__driver.html#ga3e5795e14572eec632231fe9f916ca5f" 
title="Get the write buffer. ">pn_connection_driver_write_buffer()</a> have 
been written to IO.  <a 
href="#gaead42b6a9356214d9e2bb591af009243">More...</a><br /></td></tr>
+<tr class="separator:gaead42b6a9356214d9e2bb591af009243"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafdca1cd72d6da760d3df7981085b36ce"><td class="memItemLeft" 
align="right" valign="top">void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#gafdca1cd72d6da760d3df7981085b36ce">pn_connection_driver_write_close</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:gafdca1cd72d6da760d3df7981085b36ce"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Close the write side.  <a 
href="#gafdca1cd72d6da760d3df7981085b36ce">More...</a><br /></td></tr>
+<tr class="separator:gafdca1cd72d6da760d3df7981085b36ce"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga001b2f3c1bfe4d24d53b93d79dccbfe3"><td class="memItemLeft" 
align="right" valign="top"><a id="ga001b2f3c1bfe4d24d53b93d79dccbfe3"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga001b2f3c1bfe4d24d53b93d79dccbfe3">pn_connection_driver_write_closed</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga001b2f3c1bfe4d24d53b93d79dccbfe3"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">True if write side is 
closed. <br /></td></tr>
+<tr class="separator:ga001b2f3c1bfe4d24d53b93d79dccbfe3"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad0c98415e0105efb71e8c1a8c4c1e5fb"><td class="memItemLeft" 
align="right" valign="top"><a id="gad0c98415e0105efb71e8c1a8c4c1e5fb"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gad0c98415e0105efb71e8c1a8c4c1e5fb">pn_connection_driver_close</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *c)</td></tr>
+<tr class="memdesc:gad0c98415e0105efb71e8c1a8c4c1e5fb"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Close both sides. <br 
/></td></tr>
+<tr class="separator:gad0c98415e0105efb71e8c1a8c4c1e5fb"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga00b32ae810a25ba6e172d6ed870982a5"><td class="memItemLeft" 
align="right" valign="top"><a class="el" 
href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> 
*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga00b32ae810a25ba6e172d6ed870982a5">pn_connection_driver_next_event</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga00b32ae810a25ba6e172d6ed870982a5"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the next event to 
handle.  <a href="#ga00b32ae810a25ba6e172d6ed870982a5">More...</a><br 
/></td></tr>
+<tr class="separator:ga00b32ae810a25ba6e172d6ed870982a5"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae51f2124706bb1674e2c623a2dc62da7"><td class="memItemLeft" 
align="right" valign="top"><a id="gae51f2124706bb1674e2c623a2dc62da7"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gae51f2124706bb1674e2c623a2dc62da7">pn_connection_driver_has_event</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:gae51f2124706bb1674e2c623a2dc62da7"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">True if <a class="el" 
href="group__connection__driver.html#ga00b32ae810a25ba6e172d6ed870982a5" 
title="Get the next event to handle. ">pn_connection_driver_next_event()</a> 
will return a non-NULL event. <br /></td></tr>
+<tr class="separator:gae51f2124706bb1674e2c623a2dc62da7"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga38f56836858b2d4a04ab961f650950d4"><td class="memItemLeft" 
align="right" valign="top">bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga38f56836858b2d4a04ab961f650950d4">pn_connection_driver_finished</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *)</td></tr>
+<tr class="memdesc:ga38f56836858b2d4a04ab961f650950d4"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Return true if the the 
driver is closed for reading and writing and there are no more events.  <a 
href="#ga38f56836858b2d4a04ab961f650950d4">More...</a><br /></td></tr>
+<tr class="separator:ga38f56836858b2d4a04ab961f650950d4"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga373eb1f632468582d025f5d6acf9655e"><td class="memItemLeft" 
align="right" valign="top">void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__driver.html#ga373eb1f632468582d025f5d6acf9655e">pn_connection_driver_errorf</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, const char *name, const char *fmt,...)</td></tr>
+<tr class="memdesc:ga373eb1f632468582d025f5d6acf9655e"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Set transport error.  <a 
href="#ga373eb1f632468582d025f5d6acf9655e">More...</a><br /></td></tr>
+<tr class="separator:ga373eb1f632468582d025f5d6acf9655e"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad774f90adceaf86748a0ae781f66daf2"><td class="memItemLeft" 
align="right" valign="top"><a id="gad774f90adceaf86748a0ae781f66daf2"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gad774f90adceaf86748a0ae781f66daf2">pn_connection_driver_verrorf</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, const char *name, const char *fmt, va_list)</td></tr>
+<tr class="memdesc:gad774f90adceaf86748a0ae781f66daf2"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Set transport error via a 
va_list, see <a class="el" 
href="group__connection__driver.html#ga373eb1f632468582d025f5d6acf9655e" 
title="Set transport error. ">pn_connection_driver_errorf()</a> <br /></td></tr>
+<tr class="separator:gad774f90adceaf86748a0ae781f66daf2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gada5c75a658ae2814f253a91723be9baf"><td class="memItemLeft" 
align="right" valign="top"><a id="gada5c75a658ae2814f253a91723be9baf"></a>
+<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gada5c75a658ae2814f253a91723be9baf">pn_event_batch_connection_driver</a>
 (<a class="el" 
href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a>
 *batch)</td></tr>
+<tr class="memdesc:gada5c75a658ae2814f253a91723be9baf"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">If batch is part of a 
connection_driver, return the connection_driver address, else return NULL. <br 
/></td></tr>
+<tr class="separator:gada5c75a658ae2814f253a91723be9baf"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadb682f03cb66b5898c4b285353e0005e"><td class="memItemLeft" 
align="right" valign="top"><a id="gadb682f03cb66b5898c4b285353e0005e"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gadb682f03cb66b5898c4b285353e0005e">pn_connection_driver_log</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, const char *msg)</td></tr>
+<tr class="memdesc:gadb682f03cb66b5898c4b285353e0005e"><td 
class="mdescLeft">&#160;</td><td class="mdescRight"><b>Deprecated</b> - Use <a 
class="el" href="group__transport.html#gad603e8d72578bcedd2d9235f74f28f37" 
title="Log a message using a transport&#39;s logging mechanism. 
">pn_transport_log()</a>. <br /></td></tr>
+<tr class="separator:gadb682f03cb66b5898c4b285353e0005e"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga756d1d7130b79f639d71d331f9005cab"><td class="memItemLeft" 
align="right" valign="top"><a id="ga756d1d7130b79f639d71d331f9005cab"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga756d1d7130b79f639d71d331f9005cab">pn_connection_driver_logf</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, const char *fmt,...)</td></tr>
+<tr class="memdesc:ga756d1d7130b79f639d71d331f9005cab"><td 
class="mdescLeft">&#160;</td><td class="mdescRight"><b>Deprecated</b> - Use <a 
class="el" href="group__transport.html#ga26cff9ffda93e2ffc8606e19eefe7f84" 
title="Log a printf formatted message using a transport&#39;s logging 
mechanism. ">pn_transport_logf()</a>. <br /></td></tr>
+<tr class="separator:ga756d1d7130b79f639d71d331f9005cab"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabf97a6a0b608fd096fcaa4f2692c2c63"><td class="memItemLeft" 
align="right" valign="top"><a id="gabf97a6a0b608fd096fcaa4f2692c2c63"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gabf97a6a0b608fd096fcaa4f2692c2c63">pn_connection_driver_vlogf</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, const char *fmt, va_list ap)</td></tr>
+<tr class="memdesc:gabf97a6a0b608fd096fcaa4f2692c2c63"><td 
class="mdescLeft">&#160;</td><td class="mdescRight"><b>Deprecated</b> - Use <a 
class="el" href="group__transport.html#gac773c1b9226783f36e2f2d4770e90e3f" 
title="Log a printf formatted message using a transport&#39;s logging 
mechanism. ">pn_transport_vlogf()</a>. <br /></td></tr>
+<tr class="separator:gabf97a6a0b608fd096fcaa4f2692c2c63"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab9d4f3255c83d7792fc17e5a020ff1c0"><td class="memItemLeft" 
align="right" valign="top"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#gab9d4f3255c83d7792fc17e5a020ff1c0">pn_connection_driver_ptr</a>
 (<a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *connection)</td></tr>
+<tr class="memdesc:gab9d4f3255c83d7792fc17e5a020ff1c0"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Associate a pn_connection_t 
with its <a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t" 
title="The elements needed to drive AMQP IO and events. 
">pn_connection_driver_t</a>.  <a 
href="#gab9d4f3255c83d7792fc17e5a020ff1c0">More...</a><br /></td></tr>
+<tr class="separator:gab9d4f3255c83d7792fc17e5a020ff1c0"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<p><b>Unsettled API</b> - An API for low-level IO integration. </p>
+<p>Associate a <a class="el" href="group__connection.html">Connection</a> and 
<a class="el" href="group__transport.html">Transport</a> with AMQP byte streams 
from any source.</p>
+<ul>
+<li>process AMQP-encoded bytes from some input byte stream</li>
+<li>generate <a class="el" 
href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8" title="Notification 
of a state change in the protocol engine. ">pn_event_t</a> events for your 
application to handle</li>
+<li>encode resulting AMQP output bytes for some output byte stream</li>
+</ul>
+<p>The <code>pn_connection_driver_*</code> functions provide a simplified API 
and extra logic to use <a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff" title="An AMQP 
Connection object. ">pn_connection_t</a> and <a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8" title="A 
network channel supporting an AMQP connection. ">pn_transport_t</a> as a unit. 
You can also access them directly for features that do not have 
<code>pn_connection_driver_*</code> functions.</p>
+<p>The driver buffers events and data. You should run it until <a class="el" 
href="group__connection__driver.html#ga38f56836858b2d4a04ab961f650950d4" 
title="Return true if the the driver is closed for reading and writing and 
there are no more events...">pn_connection_driver_finished()</a> is true, to 
ensure all reading, writing, and event handling (including <code>ERROR</code> 
and <code>FINAL</code> events) is finished.</p>
+<h2>Error handling</h2>
+<p>The <code>pn_connection_driver_*</code> functions do not return an error 
code. IO errors are set on the transport condition and are returned as a 
<code>PN_TRANSPORT_ERROR</code>. The integration code can set errors using <a 
class="el" 
href="group__connection__driver.html#ga373eb1f632468582d025f5d6acf9655e" 
title="Set transport error. ">pn_connection_driver_errorf()</a>.</p>
+<h2>IO patterns</h2>
+<p>This API supports asynchronous, proactive, non-blocking and reactive IO. An 
integration does not have to follow the dispatch-read-write sequence above, but 
note that you should handle all available events before calling <a class="el" 
href="group__connection__driver.html#ga0dd152968de6ec06de352e1cbc51c438" 
title="Get the read buffer. ">pn_connection_driver_read_buffer()</a> and check 
that <code>size</code> is non-zero before starting a blocking or asynchronous 
read call. A <code>read</code> started while there are unprocessed 
<code>CLOSE</code> events in the buffer may never complete.</p>
+<p>AMQP is a full-duplex, asynchronous protocol. The "read" and "write" sides 
of an AMQP connection can close separately.</p>
+<h2>Thread safety</h2>
+<p>The <a class="el" href="group__connection__driver.html">Connection 
driver</a> types are not thread safe, but each connection and its associated 
types form an independent unit. Different connections can be processed 
concurrently by different threads. </p>
+<hr/><h2 class="groupheader">Class Documentation</h2>
+<a name="structpn__connection__driver__t" 
id="structpn__connection__driver__t"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#structpn__connection__driver__t">&#9670;&nbsp;</a></span>pn_connection_driver_t</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">struct pn_connection_driver_t</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<div class="textblock"><p>The elements needed to drive AMQP IO and events. </p>
+</div><table class="fieldtable">
+<tr><th colspan="3">Class Members</th></tr>
+<tr><td class="fieldtype">
+<a id="a274eb4e9f62c87e615e8f1d0041a6f61"></a><a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *</td>
+<td class="fieldname">
+connection</td>
+<td class="fielddoc">
+</td></tr>
+<tr><td class="fieldtype">
+<a id="aa07ae8b40e8e06ed2e1532c089c4b779"></a><a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *</td>
+<td class="fieldname">
+transport</td>
+<td class="fielddoc">
+</td></tr>
+<tr><td class="fieldtype">
+<a id="a98dc9098e6258677bcb7e87d324858ac"></a><a class="el" 
href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> 
*</td>
+<td class="fieldname">
+collector</td>
+<td class="fielddoc">
+</td></tr>
+<tr><td class="fieldtype">
+<a id="a68f8277114ef53d411b76ff3a424f4c5"></a><a class="el" 
href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a></td>
+<td class="fieldname">
+batch</td>
+<td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="ga56e55c7d0343529b7fb3002b930a36b2"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga56e55c7d0343529b7fb3002b930a36b2">&#9670;&nbsp;</a></span>PN_TRANSPORT_WRITE_CLOSED</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define PN_TRANSPORT_WRITE_CLOSED</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>The write side of the transport is closed, it will no longer produce bytes 
to write to external IO. </p>
+<p>Synonym for PN_TRANSPORT_HEAD_CLOSED </p>
+
+</div>
+</div>
+<a id="ga9a331416719994f6cb0971acce5208fb"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga9a331416719994f6cb0971acce5208fb">&#9670;&nbsp;</a></span>PN_TRANSPORT_READ_CLOSED</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define PN_TRANSPORT_READ_CLOSED</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>The read side of the transport is closed, it will no longer read bytes from 
external IO. </p>
+<p>Alias for PN_TRANSPORT_TAIL_CLOSED </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ga2330d329e295da740ef8d126657470c6"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga2330d329e295da740ef8d126657470c6">&#9670;&nbsp;</a></span>pn_connection_driver_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_connection_driver_init </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname">, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *&#160;</td>
+          <td class="paramname">, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *&#160;</td>
+          <td class="paramname">&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Set connection and transport to the provided values, or create a new <a 
class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 or <a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 if either is NULL. </p>
+<p>The provided values belong to the connection driver and will be freed by <a 
class="el" 
href="group__connection__driver.html#ga3e8959d7897cd9415f687981c1d94c96" 
title="Unbind, release and free the connection and transport. 
">pn_connection_driver_destroy()</a>.</p>
+<p>The transport is bound automatically after the PN_CONNECTION_INIT has been 
is handled by the application. It can be bound earlier with <a class="el" 
href="group__connection__driver.html#gad2bdef0f5abe7cf593afcee237c6af56" 
title="Force binding of the transport. ">pn_connection_driver_bind()</a>.</p>
+<p>The following functions must be called before the transport is bound to 
have effect: pn_connection_set_username(), <a class="el" 
href="group__connection.html#ga8be7fdeb5a229d16e45fa122844fb285" title="Set the 
authentication password for a client connection. 
">pn_connection_set_password()</a>, <a class="el" 
href="group__transport.html#gac5bebd26c0942bc17d7fad36577110f8" 
title="Configure a transport as a server. ">pn_transport_set_server()</a>.</p>
+<dl class="section return"><dt>Returns</dt><dd>PN_OUT_OF_MEMORY if any 
allocation fails. </dd></dl>
+
+</div>
+</div>
+<a id="gad2bdef0f5abe7cf593afcee237c6af56"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#gad2bdef0f5abe7cf593afcee237c6af56">&#9670;&nbsp;</a></span>pn_connection_driver_bind()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_connection_driver_bind </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Force binding of the transport. </p>
+<p>This happens automatically after the PN_CONNECTION_INIT is processed.</p>
+<dl class="section return"><dt>Returns</dt><dd>PN_STATE_ERR if the transport 
is already bound. </dd></dl>
+
+</div>
+</div>
+<a id="ga3e8959d7897cd9415f687981c1d94c96"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga3e8959d7897cd9415f687981c1d94c96">&#9670;&nbsp;</a></span>pn_connection_driver_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_connection_driver_destroy </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Unbind, release and free the connection and transport. </p>
+<p>Set all pointers to NULL. Does not free the <a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 struct itself. </p>
+
+</div>
+</div>
+<a id="ga96a6bf8efc2dd7b76734cb2432441333"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga96a6bf8efc2dd7b76734cb2432441333">&#9670;&nbsp;</a></span>pn_connection_driver_release_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>*
 pn_connection_driver_release_connection </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"><em>d</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Disassociate the driver's connection from its transport and collector and 
sets d-&gt;connection = NULL. </p>
+<p>Returns the previous value, which must be freed by the caller.</p>
+<p>The transport and collector are still owned by the driver and will be freed 
by <a class="el" 
href="group__connection__driver.html#ga3e8959d7897cd9415f687981c1d94c96" 
title="Unbind, release and free the connection and transport. 
">pn_connection_driver_destroy()</a>.</p>
+<dl class="section note"><dt>Note</dt><dd>This has nothing to do with <a 
class="el" href="group__connection.html#ga7c88b4833cf81d801b27d00b45d137b5" 
title="Release a connection object. ">pn_connection_release()</a> </dd></dl>
+
+</div>
+</div>
+<a id="ga0dd152968de6ec06de352e1cbc51c438"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga0dd152968de6ec06de352e1cbc51c438">&#9670;&nbsp;</a></span>pn_connection_driver_read_buffer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" 
href="group__api__types.html#structpn__rwbytes__t">pn_rwbytes_t</a> 
pn_connection_driver_read_buffer </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the read buffer. </p>
+<p>Copy data from your input byte source to buf.start, up to buf.size. Call <a 
class="el" 
href="group__connection__driver.html#gaa164510528ce160efddbde2245c438b1" 
title="Process the first n bytes of data in pn_connection_driver_read_buffer() 
and reclaim the buffer space...">pn_connection_driver_read_done()</a> when 
reading is complete.</p>
+<p>buf.size==0 means reading is not possible: no buffer space or the read side 
is closed. </p>
+
+</div>
+</div>
+<a id="ga11b59aec2b54acdefd63dfbce8d09a3f"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga11b59aec2b54acdefd63dfbce8d09a3f">&#9670;&nbsp;</a></span>pn_connection_driver_read_close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_connection_driver_read_close </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Close the read side. </p>
+<p>Call when the IO can no longer be read. </p>
+
+</div>
+</div>
+<a id="ga3e5795e14572eec632231fe9f916ca5f"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga3e5795e14572eec632231fe9f916ca5f">&#9670;&nbsp;</a></span>pn_connection_driver_write_buffer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" 
href="group__api__types.html#structpn__bytes__t">pn_bytes_t</a> 
pn_connection_driver_write_buffer </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the write buffer. </p>
+<p>Write data from buf.start to your IO destination, up to a max of buf.size. 
Call <a class="el" 
href="group__connection__driver.html#gaead42b6a9356214d9e2bb591af009243" 
title="Call when the first n bytes of pn_connection_driver_write_buffer() have 
been written to IO...">pn_connection_driver_write_done()</a> when writing is 
complete.</p>
+<p>buf.size==0 means there is nothing to write. </p>
+
+</div>
+</div>
+<a id="gaead42b6a9356214d9e2bb591af009243"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#gaead42b6a9356214d9e2bb591af009243">&#9670;&nbsp;</a></span>pn_connection_driver_write_done()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_connection_driver_write_done </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname">, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Call when the first n bytes of <a class="el" 
href="group__connection__driver.html#ga3e5795e14572eec632231fe9f916ca5f" 
title="Get the write buffer. ">pn_connection_driver_write_buffer()</a> have 
been written to IO. </p>
+<p>Reclaims the buffer space and reset the write buffer. </p>
+
+</div>
+</div>
+<a id="gafdca1cd72d6da760d3df7981085b36ce"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#gafdca1cd72d6da760d3df7981085b36ce">&#9670;&nbsp;</a></span>pn_connection_driver_write_close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_connection_driver_write_close </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Close the write side. </p>
+<p>Call when IO can no longer be written to. </p>
+
+</div>
+</div>
+<a id="ga00b32ae810a25ba6e172d6ed870982a5"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga00b32ae810a25ba6e172d6ed870982a5">&#9670;&nbsp;</a></span>pn_connection_driver_next_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" 
href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* 
pn_connection_driver_next_event </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the next event to handle. </p>
+<dl class="section return"><dt>Returns</dt><dd>pointer is valid till the next 
call of pn_connection_driver_next(). NULL if there are no more events available 
now, reading/writing may produce more. </dd></dl>
+
+</div>
+</div>
+<a id="ga38f56836858b2d4a04ab961f650950d4"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga38f56836858b2d4a04ab961f650950d4">&#9670;&nbsp;</a></span>pn_connection_driver_finished()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_connection_driver_finished </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Return true if the the driver is closed for reading and writing and there 
are no more events. </p>
+<p>Call pn_connection_driver_free() to free all related memory. </p>
+
+</div>
+</div>
+<a id="ga373eb1f632468582d025f5d6acf9655e"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#ga373eb1f632468582d025f5d6acf9655e">&#9670;&nbsp;</a></span>pn_connection_driver_errorf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_connection_driver_errorf </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *&#160;</td>
+          <td class="paramname"><em>d</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>fmt</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">&#160;</td>
+          <td class="paramname"><em>...</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Set transport error. </p>
+<p>The name and formatted description are set on the transport condition, and 
returned as a PN_TRANSPORT_ERROR event from <a class="el" 
href="group__connection__driver.html#ga00b32ae810a25ba6e172d6ed870982a5" 
title="Get the next event to handle. 
">pn_connection_driver_next_event()</a>.</p>
+<p>You must call this <em>before</em> <a class="el" 
href="group__connection__driver.html#ga11b59aec2b54acdefd63dfbce8d09a3f" 
title="Close the read side. ">pn_connection_driver_read_close()</a> or <a 
class="el" 
href="group__connection__driver.html#gafdca1cd72d6da760d3df7981085b36ce" 
title="Close the write side. ">pn_connection_driver_write_close()</a> to ensure 
the error is processed. </p>
+
+</div>
+</div>
+<a id="gab9d4f3255c83d7792fc17e5a020ff1c0"></a>
+<h2 class="memtitle"><span class="permalink"><a 
href="#gab9d4f3255c83d7792fc17e5a020ff1c0">&#9670;&nbsp;</a></span>pn_connection_driver_ptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>**
 pn_connection_driver_ptr </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *&#160;</td>
+          <td class="paramname"><em>connection</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Associate a pn_connection_t with its <a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t" 
title="The elements needed to drive AMQP IO and events. 
">pn_connection_driver_t</a>. </p>
+<p><b>NOTE</b>: this is only for use by IO integration writers. If you are 
using the standard pn_proactor_t you <em>must not</em> use this function.</p>
+<dl class="section return"><dt>Returns</dt><dd>pointer to the 
pn_connection_driver_t* field in a pn_connection_t.</dd></dl>
+<p>Return type is pointer to a pointer so that the caller can (if desired) use 
atomic operations when loading and storing the value. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <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>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.js 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.js
new file mode 100755
index 0000000..31840dc
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver.js
@@ -0,0 +1,35 @@
+var group__connection__driver =
+[
+    [ "pn_connection_driver_t", 
"group__connection__driver.html#structpn__connection__driver__t", [
+      [ "connection", 
"group__connection__driver.html#a274eb4e9f62c87e615e8f1d0041a6f61", null ],
+      [ "transport", 
"group__connection__driver.html#aa07ae8b40e8e06ed2e1532c089c4b779", null ],
+      [ "collector", 
"group__connection__driver.html#a98dc9098e6258677bcb7e87d324858ac", null ],
+      [ "batch", 
"group__connection__driver.html#a68f8277114ef53d411b76ff3a424f4c5", null ]
+    ] ],
+    [ "PN_TRANSPORT_WRITE_CLOSED", 
"group__connection__driver.html#ga56e55c7d0343529b7fb3002b930a36b2", null ],
+    [ "PN_TRANSPORT_READ_CLOSED", 
"group__connection__driver.html#ga9a331416719994f6cb0971acce5208fb", null ],
+    [ "pn_connection_driver_t", 
"group__connection__driver.html#ga9793522a25c9741e8d17a570a47e9711", null ],
+    [ "pn_connection_driver_init", 
"group__connection__driver.html#ga2330d329e295da740ef8d126657470c6", null ],
+    [ "pn_connection_driver_bind", 
"group__connection__driver.html#gad2bdef0f5abe7cf593afcee237c6af56", null ],
+    [ "pn_connection_driver_destroy", 
"group__connection__driver.html#ga3e8959d7897cd9415f687981c1d94c96", null ],
+    [ "pn_connection_driver_release_connection", 
"group__connection__driver.html#ga96a6bf8efc2dd7b76734cb2432441333", null ],
+    [ "pn_connection_driver_read_buffer", 
"group__connection__driver.html#ga0dd152968de6ec06de352e1cbc51c438", null ],
+    [ "pn_connection_driver_read_done", 
"group__connection__driver.html#gaa164510528ce160efddbde2245c438b1", null ],
+    [ "pn_connection_driver_read_close", 
"group__connection__driver.html#ga11b59aec2b54acdefd63dfbce8d09a3f", null ],
+    [ "pn_connection_driver_read_closed", 
"group__connection__driver.html#ga56ccde529842f18774fdf827e86afa23", null ],
+    [ "pn_connection_driver_write_buffer", 
"group__connection__driver.html#ga3e5795e14572eec632231fe9f916ca5f", null ],
+    [ "pn_connection_driver_write_done", 
"group__connection__driver.html#gaead42b6a9356214d9e2bb591af009243", null ],
+    [ "pn_connection_driver_write_close", 
"group__connection__driver.html#gafdca1cd72d6da760d3df7981085b36ce", null ],
+    [ "pn_connection_driver_write_closed", 
"group__connection__driver.html#ga001b2f3c1bfe4d24d53b93d79dccbfe3", null ],
+    [ "pn_connection_driver_close", 
"group__connection__driver.html#gad0c98415e0105efb71e8c1a8c4c1e5fb", null ],
+    [ "pn_connection_driver_next_event", 
"group__connection__driver.html#ga00b32ae810a25ba6e172d6ed870982a5", null ],
+    [ "pn_connection_driver_has_event", 
"group__connection__driver.html#gae51f2124706bb1674e2c623a2dc62da7", null ],
+    [ "pn_connection_driver_finished", 
"group__connection__driver.html#ga38f56836858b2d4a04ab961f650950d4", null ],
+    [ "pn_connection_driver_errorf", 
"group__connection__driver.html#ga373eb1f632468582d025f5d6acf9655e", null ],
+    [ "pn_connection_driver_verrorf", 
"group__connection__driver.html#gad774f90adceaf86748a0ae781f66daf2", null ],
+    [ "pn_event_batch_connection_driver", 
"group__connection__driver.html#gada5c75a658ae2814f253a91723be9baf", null ],
+    [ "pn_connection_driver_log", 
"group__connection__driver.html#gadb682f03cb66b5898c4b285353e0005e", null ],
+    [ "pn_connection_driver_logf", 
"group__connection__driver.html#ga756d1d7130b79f639d71d331f9005cab", null ],
+    [ "pn_connection_driver_vlogf", 
"group__connection__driver.html#gabf97a6a0b608fd096fcaa4f2692c2c63", null ],
+    [ "pn_connection_driver_ptr", 
"group__connection__driver.html#gab9d4f3255c83d7792fc17e5a020ff1c0", null ]
+];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver_structpn__connection__driver__t.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver_structpn__connection__driver__t.js
 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver_structpn__connection__driver__t.js
new file mode 100755
index 0000000..1c89093
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__connection__driver_structpn__connection__driver__t.js
@@ -0,0 +1,7 @@
+var group__connection__driver_structpn__connection__driver__t =
+[
+    [ "connection", 
"group__connection__driver.html#a274eb4e9f62c87e615e8f1d0041a6f61", null ],
+    [ "transport", 
"group__connection__driver.html#aa07ae8b40e8e06ed2e1532c089c4b779", null ],
+    [ "collector", 
"group__connection__driver.html#a98dc9098e6258677bcb7e87d324858ac", null ],
+    [ "batch", 
"group__connection__driver.html#a68f8277114ef53d411b76ff3a424f4c5", null ]
+];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.html 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.html
new file mode 100755
index 0000000..5b28420
--- /dev/null
+++ b/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.html
@@ -0,0 +1,154 @@
+<!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: Core</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('group__core.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="summary">
+<a href="#groups">Modules</a>  </div>
+  <div class="headertitle">
+<div class="title">Core</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Core protocol entities and event handling.  
+<a href="#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="groups"></a>
+Modules</h2></td></tr>
+<tr class="memitem:group__connection"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection.html">Connection</a></td></tr>
+<tr class="memdesc:group__connection"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A connection to a remote AMQP peer. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__session"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__session.html">Session</a></td></tr>
+<tr class="memdesc:group__session"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A container of links. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__link"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__link.html">Link</a></td></tr>
+<tr class="memdesc:group__link"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A channel for transferring messages. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__terminus"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__terminus.html">Terminus</a></td></tr>
+<tr class="memdesc:group__terminus"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A source or target for messages. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__message"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__message.html">Message</a></td></tr>
+<tr class="memdesc:group__message"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A mutable holder of application content. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__delivery"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__delivery.html">Delivery</a></td></tr>
+<tr class="memdesc:group__delivery"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A message transfer. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__condition"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__condition.html">Condition</a></td></tr>
+<tr class="memdesc:group__condition"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">An endpoint error state. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__event"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__event.html">Event</a></td></tr>
+<tr class="memdesc:group__event"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">Protocol and transport events. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__transport"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__transport.html">Transport</a></td></tr>
+<tr class="memdesc:group__transport"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A network channel supporting an AMQP connection. <br 
/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__sasl"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__sasl.html">SASL</a></td></tr>
+<tr class="memdesc:group__sasl"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">SASL secure transport layer. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__ssl"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__ssl.html">SSL</a></td></tr>
+<tr class="memdesc:group__ssl"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">SSL secure transport layer. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:group__error"><td class="memItemLeft" align="right" 
valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__error.html">Error</a></td></tr>
+<tr class="memdesc:group__error"><td class="mdescLeft">&#160;</td><td 
class="mdescRight">A Proton API error. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<p>Core protocol entities and event handling. </p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <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>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.js
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.js 
b/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.js
new file mode 100755
index 0000000..81e1fe1
--- /dev/null
+++ b/content/releases/qpid-proton-0.21.0/proton/c/api/group__core.js
@@ -0,0 +1,15 @@
+var group__core =
+[
+    [ "Connection", "group__connection.html", "group__connection" ],
+    [ "Session", "group__session.html", "group__session" ],
+    [ "Link", "group__link.html", "group__link" ],
+    [ "Terminus", "group__terminus.html", "group__terminus" ],
+    [ "Message", "group__message.html", "group__message" ],
+    [ "Delivery", "group__delivery.html", "group__delivery" ],
+    [ "Condition", "group__condition.html", "group__condition" ],
+    [ "Event", "group__event.html", "group__event" ],
+    [ "Transport", "group__transport.html", "group__transport" ],
+    [ "SASL", "group__sasl.html", "group__sasl" ],
+    [ "SSL", "group__ssl.html", "group__ssl" ],
+    [ "Error", "group__error.html", "group__error" ]
+];
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to