http://git-wip-us.apache.org/repos/asf/qpid-site/blob/f180d00b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection.js 
b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection.js
new file mode 100755
index 0000000..8b47a6a
--- /dev/null
+++ b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection.js
@@ -0,0 +1,44 @@
+var group__connection =
+[
+    [ "PN_LOCAL_ACTIVE", 
"group__connection.html#ga0c3bf54f0991944a2f6eea36b561fa2b", null ],
+    [ "PN_LOCAL_CLOSED", 
"group__connection.html#ga602c2c870ebed1d9bfe100876909225b", null ],
+    [ "PN_LOCAL_MASK", 
"group__connection.html#ga32329c4bb3e23607a243cd8100c01264", null ],
+    [ "PN_LOCAL_UNINIT", 
"group__connection.html#gac83dd8123b992813be86fe0f7eaf8f61", null ],
+    [ "PN_REMOTE_ACTIVE", 
"group__connection.html#gad96220f2886c21a4f2eebc9487f53a87", null ],
+    [ "PN_REMOTE_CLOSED", 
"group__connection.html#ga764c602a20457f9aa8862825b6d13a8d", null ],
+    [ "PN_REMOTE_MASK", 
"group__connection.html#ga695af0c2d90d50f4baf403ea60710fa3", null ],
+    [ "PN_REMOTE_UNINIT", 
"group__connection.html#ga4c35fcb0aacd254d586df8594ee770d3", null ],
+    [ "pn_connection_t", 
"group__connection.html#ga886351d81ff3a977a284a206526c5aff", null ],
+    [ "pn_state_t", 
"group__connection.html#gaa83193a655e32bffc18624acc2c39233", null ],
+    [ "pn_connection", 
"group__connection.html#gaa9e59c468ec0568b1528f5f83c4b301d", null ],
+    [ "pn_connection_attachments", 
"group__connection.html#gad8b6c777b525c9da9401e3a770db15da", null ],
+    [ "pn_connection_close", 
"group__connection.html#gac25afdf810ad188b2cb3bf31a7482ca0", null ],
+    [ "pn_connection_collect", 
"group__connection.html#ga2fd2089e8eaa2a362606498f233ada61", null ],
+    [ "pn_connection_collector", 
"group__connection.html#ga663c29ee6de4d522ba061224bc6240ad", null ],
+    [ "pn_connection_condition", 
"group__connection.html#gaace04a030192f34747bb1ff3675c58f1", null ],
+    [ "pn_connection_desired_capabilities", 
"group__connection.html#ga241faafc5a98cf9b91aa919263bd9bd8", null ],
+    [ "pn_connection_error", 
"group__connection.html#gad3aad758ccb4690e78d40c1a73567d73", null ],
+    [ "pn_connection_free", 
"group__connection.html#ga00cbef1a9f5062a6e1f113fda923f65e", null ],
+    [ "pn_connection_get_container", 
"group__connection.html#ga61e1f6386d18a568da50b998200eb87b", null ],
+    [ "pn_connection_get_context", 
"group__connection.html#ga50613e6c09186dc3f1a2f36238c61f07", null ],
+    [ "pn_connection_get_hostname", 
"group__connection.html#ga3ab6a8a556270cff74c39da910a89b5c", null ],
+    [ "pn_connection_get_user", 
"group__connection.html#ga5f4b94211f97bbc3bb64642f6f597fe8", null ],
+    [ "pn_connection_offered_capabilities", 
"group__connection.html#gabc8d505108a850837a0d2fb204875390", null ],
+    [ "pn_connection_open", 
"group__connection.html#ga4c0a2d40bb95202477ccc5aaa7456670", null ],
+    [ "pn_connection_properties", 
"group__connection.html#gac26de255ed04e73295d6aa973a663142", null ],
+    [ "pn_connection_release", 
"group__connection.html#ga7c88b4833cf81d801b27d00b45d137b5", null ],
+    [ "pn_connection_remote_condition", 
"group__connection.html#ga72a362389b99d8e891bf2e4fb4290754", null ],
+    [ "pn_connection_remote_container", 
"group__connection.html#gabb5b585ee8bae0e88d2b42b87772082a", null ],
+    [ "pn_connection_remote_desired_capabilities", 
"group__connection.html#ga722d53b6063278fbcab5f814613c70ec", null ],
+    [ "pn_connection_remote_hostname", 
"group__connection.html#gabf25d7b763951b4a9c856536d6db0600", null ],
+    [ "pn_connection_remote_offered_capabilities", 
"group__connection.html#ga9bf90f0f395d26e320293063b70d040f", null ],
+    [ "pn_connection_remote_properties", 
"group__connection.html#ga24a2d5aba432db549257993bfaa761dd", null ],
+    [ "pn_connection_reset", 
"group__connection.html#ga3a76135d214e12a0735441c1ba2c28d3", null ],
+    [ "pn_connection_set_container", 
"group__connection.html#gac4a34e0b1fc5665b26ae47a80a422a1a", null ],
+    [ "pn_connection_set_context", 
"group__connection.html#gad3203b366cb1ff5becd1778a8dd6b1a6", null ],
+    [ "pn_connection_set_hostname", 
"group__connection.html#ga0c3bed8e6764915a137a9daff199ecbb", null ],
+    [ "pn_connection_set_password", 
"group__connection.html#ga8be7fdeb5a229d16e45fa122844fb285", null ],
+    [ "pn_connection_set_user", 
"group__connection.html#gafb84dd2ef7551ad864be08cb31010d19", null ],
+    [ "pn_connection_state", 
"group__connection.html#ga277d01dc2f87870ee260d43cf40abe13", 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/f180d00b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection__driver.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection__driver.html
 
b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection__driver.html
new file mode 100755
index 0000000..0d76411
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.17.0/proton/c/api/group__connection__driver.html
@@ -0,0 +1,505 @@
+<!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.3.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="navtree.js"></script>
+<script type="text/javascript">
+  $(document).ready(initResizable);
+  $(window).load(resizeHeight);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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 style="padding-left: 0.5em;">
+   <div id="projectname">Qpid Proton C API
+   &#160;<span id="projectnumber">0.17.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.3.1 -->
+<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)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" 
href="javascript:vo
 id(0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span 
class="SelectionMark">&#160;</span>Pages</a></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="#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>Experimental</b> - 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="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ga9793522a25c9741e8d17a570a47e9711"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga9793522a25c9741e8d17a570a47e9711"></a>
+typedef struct <br class="typebreak"/>
+<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: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 class="anchor" 
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 class="anchor" 
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 class="anchor" 
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 class="anchor" 
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 side. 
<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 class="anchor" 
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 IO error information.  
<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 class="anchor" 
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 IO error information 
via a va_list, see <a class="el" 
href="group__connection__driver.html#ga373eb1f632468582d025f5d6acf9655e" 
title="Set IO error information.">pn_connection_driver_errorf()</a> 
<br/></td></tr>
+<tr class="separator:gad774f90adceaf86748a0ae781f66daf2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadb682f03cb66b5898c4b285353e0005e"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
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">Log a string message using 
the connection's transport log. <br/></td></tr>
+<tr class="separator:gadb682f03cb66b5898c4b285353e0005e"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga063c846013adb3a94b1d342ee6bdde1b"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga063c846013adb3a94b1d342ee6bdde1b"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__driver.html#ga063c846013adb3a94b1d342ee6bdde1b">pn_connection_driver_logf</a>
 (<a class="el" 
href="group__connection__driver.html#structpn__connection__driver__t">pn_connection_driver_t</a>
 *d, char *fmt,...)</td></tr>
+<tr class="memdesc:ga063c846013adb3a94b1d342ee6bdde1b"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Log a printf formatted 
message using the connection's transport log. <br/></td></tr>
+<tr class="separator:ga063c846013adb3a94b1d342ee6bdde1b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabf97a6a0b608fd096fcaa4f2692c2c63"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
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">Log a printf formatted 
message using the connection's transport log. <br/></td></tr>
+<tr class="separator:gabf97a6a0b608fd096fcaa4f2692c2c63"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gada5c75a658ae2814f253a91723be9baf"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
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>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<p><b>Experimental</b> - Low-level IO integration </p>
+<hr/><h2 class="groupheader">Class Documentation</h2>
+<a name="structpn__connection__driver__t" 
id="structpn__connection__driver__t"></a>
+<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 class="anchor" 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>
+<tr><td class="fieldtype">
+<a class="anchor" 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 class="anchor" 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>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="gad2bdef0f5abe7cf593afcee237c6af56"></a>
+<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 class="anchor" id="ga3e8959d7897cd9415f687981c1d94c96"></a>
+<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 class="anchor" id="ga373eb1f632468582d025f5d6acf9655e"></a>
+<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 IO error information. </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 class="anchor" id="ga38f56836858b2d4a04ab961f650950d4"></a>
+<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 class="anchor" id="ga2330d329e295da740ef8d126657470c6"></a>
+<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 class="anchor" id="ga00b32ae810a25ba6e172d6ed870982a5"></a>
+<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 class="anchor" id="ga0dd152968de6ec06de352e1cbc51c438"></a>
+<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 class="anchor" id="ga11b59aec2b54acdefd63dfbce8d09a3f"></a>
+<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 class="anchor" id="ga3e5795e14572eec632231fe9f916ca5f"></a>
+<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 class="anchor" id="gafdca1cd72d6da760d3df7981085b36ce"></a>
+<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 class="anchor" id="gaead42b6a9356214d9e2bb591af009243"></a>
+<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>
+</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.3.1 </li>
+  </ul>
+</div>
+</body>
+</html>

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

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/f180d00b/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.html 
b/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.html
new file mode 100755
index 0000000..c072a12
--- /dev/null
+++ b/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.html
@@ -0,0 +1,152 @@
+<!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.3.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="navtree.js"></script>
+<script type="text/javascript">
+  $(document).ready(initResizable);
+  $(window).load(resizeHeight);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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 style="padding-left: 0.5em;">
+   <div id="projectname">Qpid Proton C API
+   &#160;<span id="projectnumber">0.17.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.3.1 -->
+<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)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" 
href="javascript:vo
 id(0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span 
class="SelectionMark">&#160;</span>Pages</a></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 channel for communication between two peers on a network. 
<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.3.1 </li>
+  </ul>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/f180d00b/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.js
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.js 
b/content/releases/qpid-proton-0.17.0/proton/c/api/group__core.js
new file mode 100755
index 0000000..81e1fe1
--- /dev/null
+++ b/content/releases/qpid-proton-0.17.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