http://git-wip-us.apache.org/repos/asf/qpid-site/blob/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.html 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.html
new file mode 100755
index 0000000..433e42e
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.html
@@ -0,0 +1,494 @@
+<!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: SASL</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.15.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__sasl.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="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">SASL<div class="ingroups"><a class="el" 
href="group__transport.html">Transport</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ga4d21fddba80d3f88d0529aafe12328b0"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga4d21fddba80d3f88d0529aafe12328b0"></a>
+typedef struct pn_sasl_t&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_sasl_t</b></td></tr>
+<tr class="separator:ga4d21fddba80d3f88d0529aafe12328b0"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:gad44e79f52e0669b1930689b56dfa9c3b"><td class="memItemLeft" 
align="right" valign="top">enum &#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a>
 { <br/>
+&#160;&#160;<b>PN_SASL_NONE</b> =-1, 
+<a class="el" 
href="group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3ba0050b91650a3826a090e13f57b3b941e">PN_SASL_OK</a>
 =0, 
+<a class="el" 
href="group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3bac63734ecde7c8170554f6bf04f6ce64a">PN_SASL_AUTH</a>
 =1, 
+<a class="el" 
href="group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3bacd46a2fda23f674c23ed81e6076c1939">PN_SASL_SYS</a>
 =2, 
+<br/>
+&#160;&#160;<a class="el" 
href="group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3ba03019f909ba1d98aae94437ca4bd0191">PN_SASL_PERM</a>
 =3, 
+<a class="el" 
href="group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3baee28d2c03fa80dccf771e37aae1bcdf3">PN_SASL_TEMP</a>
 =4
+<br/>
+ }</td></tr>
+<tr class="separator:gad44e79f52e0669b1930689b56dfa9c3b"><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:ga473c3092ebf00792106cdc741d0b14ac"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN pn_sasl_t *&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__sasl.html#ga473c3092ebf00792106cdc741d0b14ac">pn_sasl</a> (<a 
class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *transport)</td></tr>
+<tr class="separator:ga473c3092ebf00792106cdc741d0b14ac"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8ab2ab1ca7ed8a476fbf01e742425f3d"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#ga8ab2ab1ca7ed8a476fbf01e742425f3d">pn_sasl_extended</a> 
(void)</td></tr>
+<tr class="separator:ga8ab2ab1ca7ed8a476fbf01e742425f3d"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaecd3b1f55fc81c6586bc435772f829d3"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#gaecd3b1f55fc81c6586bc435772f829d3">pn_sasl_done</a> 
(pn_sasl_t *sasl, <a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a>
 outcome)</td></tr>
+<tr class="separator:gaecd3b1f55fc81c6586bc435772f829d3"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaec4ace7d77037c60f1df02f2bb0be0f8"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a>&#160;</td><td
 class="memItemRight" valign="bottom"><a class="el" 
href="group__sasl.html#gaec4ace7d77037c60f1df02f2bb0be0f8">pn_sasl_outcome</a> 
(pn_sasl_t *sasl)</td></tr>
+<tr class="separator:gaec4ace7d77037c60f1df02f2bb0be0f8"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafff63feb3a2eccd74f7b472ee235a886"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN const char *&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__sasl.html#gafff63feb3a2eccd74f7b472ee235a886">pn_sasl_get_user</a> 
(pn_sasl_t *sasl)</td></tr>
+<tr class="separator:gafff63feb3a2eccd74f7b472ee235a886"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga77adf112018a4b457df4abbf5b31873b"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN const char *&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__sasl.html#ga77adf112018a4b457df4abbf5b31873b">pn_sasl_get_mech</a> 
(pn_sasl_t *sasl)</td></tr>
+<tr class="separator:ga77adf112018a4b457df4abbf5b31873b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gacdc9d99d6717e74fa5df4de1515644db"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#gacdc9d99d6717e74fa5df4de1515644db">pn_sasl_allowed_mechs</a>
 (pn_sasl_t *sasl, const char *mechs)</td></tr>
+<tr class="separator:gacdc9d99d6717e74fa5df4de1515644db"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga841eea7a3e34539aa6176ebc055cdc16"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#ga841eea7a3e34539aa6176ebc055cdc16">pn_sasl_set_allow_insecure_mechs</a>
 (pn_sasl_t *sasl, bool insecure)</td></tr>
+<tr class="separator:ga841eea7a3e34539aa6176ebc055cdc16"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4f18db720611136dd7d6798b8bfbc94c"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#ga4f18db720611136dd7d6798b8bfbc94c">pn_sasl_get_allow_insecure_mechs</a>
 (pn_sasl_t *sasl)</td></tr>
+<tr class="separator:ga4f18db720611136dd7d6798b8bfbc94c"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae4ef8946525b044cc2d84ff801e1ae20"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#gae4ef8946525b044cc2d84ff801e1ae20">pn_sasl_config_name</a>
 (pn_sasl_t *sasl, const char *name)</td></tr>
+<tr class="separator:gae4ef8946525b044cc2d84ff801e1ae20"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sasl.html#ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c">pn_sasl_config_path</a>
 (pn_sasl_t *sasl, const char *path)</td></tr>
+<tr class="separator:ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="gad44e79f52e0669b1930689b56dfa9c3b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>The result of the SASL negotiation </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a 
class="anchor" 
id="ggad44e79f52e0669b1930689b56dfa9c3ba0050b91650a3826a090e13f57b3b941e"></a>PN_SASL_OK</em>&nbsp;</td><td
 class="fielddoc">
+<p>negotiation not completed </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" 
id="ggad44e79f52e0669b1930689b56dfa9c3bac63734ecde7c8170554f6bf04f6ce64a"></a>PN_SASL_AUTH</em>&nbsp;</td><td
 class="fielddoc">
+<p>authentication succeeded </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" 
id="ggad44e79f52e0669b1930689b56dfa9c3bacd46a2fda23f674c23ed81e6076c1939"></a>PN_SASL_SYS</em>&nbsp;</td><td
 class="fielddoc">
+<p>failed due to bad credentials </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" 
id="ggad44e79f52e0669b1930689b56dfa9c3ba03019f909ba1d98aae94437ca4bd0191"></a>PN_SASL_PERM</em>&nbsp;</td><td
 class="fielddoc">
+<p>failed due to a system error </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" 
id="ggad44e79f52e0669b1930689b56dfa9c3baee28d2c03fa80dccf771e37aae1bcdf3"></a>PN_SASL_TEMP</em>&nbsp;</td><td
 class="fielddoc">
+<p>failed due to unrecoverable error </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ga473c3092ebf00792106cdc741d0b14ac"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN pn_sasl_t* pn_sasl </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *&#160;</td>
+          <td class="paramname"><em>transport</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Construct an Authentication and Security Layer object</p>
+<p>This will return the SASL layer object for the supplied transport object. 
If there is currently no SASL layer one will be created.</p>
+<p>On the client side of an AMQP connection this will have the effect of 
ensuring that the AMQP SASL layer is used for that connection.</p>
+<dl class="section return"><dt>Returns</dt><dd>an object representing the SASL 
layer. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gacdc9d99d6717e74fa5df4de1515644db"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_sasl_allowed_mechs </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>mechs</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>SASL mechanisms that are to be considered for authentication</p>
+<p>This can be used on either the client or the server to restrict the SASL 
mechanisms that may be used to the mechanisms on the list.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer </td></tr>
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">mechs</td><td>space separated list of mechanisms that are 
allowed for authentication </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gae4ef8946525b044cc2d84ff801e1ae20"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_sasl_config_name </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>name</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the sasl configuration name</p>
+<p>This is used to construct the SASL configuration filename. In the current 
implementation it ".conf" is added to the name and the file is looked for in 
the configuration directory.</p>
+<p>If not set it will default to "proton-server" for a sasl server and 
"proton-client" for a client.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>the 
configuration name </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_sasl_config_path </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>path</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the sasl configuration path</p>
+<p>This is used to tell SASL where to look for the configuration file. In the 
current implementation it can be a colon separated list of directories.</p>
+<p>The environment variable PN_SASL_CONFIG_PATH can also be used to set this 
path, but if both methods are used then this <a class="el" 
href="group__sasl.html#ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c">pn_sasl_config_path()</a>
 will take precedence.</p>
+<p>If not set the underlying implementation default will be used. for a 
client.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">path</td><td>the 
configuration path </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gaecd3b1f55fc81c6586bc435772f829d3"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_sasl_done </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a>&#160;</td>
+          <td class="paramname"><em>outcome</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the outcome of SASL negotiation</p>
+<p>Used by the server to set the result of the negotiation process.</p>
+<dl class="todo"><dt><b><a class="el" 
href="todo.html#_todo000002">Todo:</a></b></dt><dd></dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga8ab2ab1ca7ed8a476fbf01e742425f3d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_sasl_extended </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Do we support extended SASL negotiation</p>
+<p>Do we support extended SASL negotiation? All implementations of Proton 
support ANONYMOUS and EXTERNAL on both client and server sides and PLAIN on the 
client side.</p>
+<p>Extended SASL implememtations use an external library (Cyrus SASL) to 
support other mechanisms beyond these basic ones.</p>
+<dl class="section return"><dt>Returns</dt><dd>true if we support extended 
SASL negotiation, false if we only support basic negotiation. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga4f18db720611136dd7d6798b8bfbc94c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_sasl_get_allow_insecure_mechs 
</td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return the current value for allow_insecure_mechs</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga77adf112018a4b457df4abbf5b31873b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN const char* pn_sasl_get_mech </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return the selected SASL mechanism</p>
+<p>The returned value is only reliable after the PN_TRANSPORT_AUTHENTICATED 
event has been received.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>The authentication mechanism 
selected by the SASL layer </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gafff63feb3a2eccd74f7b472ee235a886"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN const char* pn_sasl_get_user </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Retrieve the authenticated user</p>
+<p>This is usually used at the the server end to find the name of the 
authenticated user. On the client it will merely return whatever user was 
passed in to the pn_transport_set_user_password() API.</p>
+<p>If <a class="el" 
href="group__sasl.html#gaec4ace7d77037c60f1df02f2bb0be0f8">pn_sasl_outcome()</a>
 returns a value other than PN_SASL_OK, then there will be no user to return. 
The returned value is only reliable after the PN_TRANSPORT_AUTHENTICATED event 
has been received.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
sasl layer</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>If the SASL layer was not 
negotiated then 0 is returned If the ANONYMOUS mechanism is used then the user 
will be "anonymous" Otherwise a string containing the user is returned. 
</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaec4ace7d77037c60f1df02f2bb0be0f8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b">pn_sasl_outcome_t</a>
 pn_sasl_outcome </td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Retrieve the outcome of SASL negotiation.</p>
+<dl class="todo"><dt><b><a class="el" 
href="todo.html#_todo000003">Todo:</a></b></dt><dd></dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga841eea7a3e34539aa6176ebc055cdc16"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_sasl_set_allow_insecure_mechs 
</td>
+          <td>(</td>
+          <td class="paramtype">pn_sasl_t *&#160;</td>
+          <td class="paramname"><em>sasl</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>insecure</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Boolean to allow use of clear text authentication mechanisms</p>
+<p>By default the SASL layer is configured not to allow mechanisms that 
disclose the clear text of the password over an unencrypted AMQP connection. 
This specifically will disallow the use of the PLAIN mechanism without using 
SSL encryption.</p>
+<p>This default is to avoid disclosing password information accidentally over 
an insecure network.</p>
+<p>If you actually wish to use a clear text password unencrypted then you can 
use this API to set allow_insecure_mechs to true.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sasl</td><td>the 
SASL layer </td></tr>
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">insecure</td><td>set this to true to allow unencrypted PLAIN 
authentication. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</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/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.js
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.js 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.js
new file mode 100755
index 0000000..c0774b5
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sasl.js
@@ -0,0 +1,21 @@
+var group__sasl =
+[
+    [ "pn_sasl_outcome_t", 
"group__sasl.html#gad44e79f52e0669b1930689b56dfa9c3b", [
+      [ "PN_SASL_OK", 
"group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3ba0050b91650a3826a090e13f57b3b941e",
 null ],
+      [ "PN_SASL_AUTH", 
"group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3bac63734ecde7c8170554f6bf04f6ce64a",
 null ],
+      [ "PN_SASL_SYS", 
"group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3bacd46a2fda23f674c23ed81e6076c1939",
 null ],
+      [ "PN_SASL_PERM", 
"group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3ba03019f909ba1d98aae94437ca4bd0191",
 null ],
+      [ "PN_SASL_TEMP", 
"group__sasl.html#ggad44e79f52e0669b1930689b56dfa9c3baee28d2c03fa80dccf771e37aae1bcdf3",
 null ]
+    ] ],
+    [ "pn_sasl", "group__sasl.html#ga473c3092ebf00792106cdc741d0b14ac", null ],
+    [ "pn_sasl_allowed_mechs", 
"group__sasl.html#gacdc9d99d6717e74fa5df4de1515644db", null ],
+    [ "pn_sasl_config_name", 
"group__sasl.html#gae4ef8946525b044cc2d84ff801e1ae20", null ],
+    [ "pn_sasl_config_path", 
"group__sasl.html#ga8aa6f7e87a9eabf2d4ad8533fd7a4d3c", null ],
+    [ "pn_sasl_done", "group__sasl.html#gaecd3b1f55fc81c6586bc435772f829d3", 
null ],
+    [ "pn_sasl_extended", 
"group__sasl.html#ga8ab2ab1ca7ed8a476fbf01e742425f3d", null ],
+    [ "pn_sasl_get_allow_insecure_mechs", 
"group__sasl.html#ga4f18db720611136dd7d6798b8bfbc94c", null ],
+    [ "pn_sasl_get_mech", 
"group__sasl.html#ga77adf112018a4b457df4abbf5b31873b", null ],
+    [ "pn_sasl_get_user", 
"group__sasl.html#gafff63feb3a2eccd74f7b472ee235a886", null ],
+    [ "pn_sasl_outcome", 
"group__sasl.html#gaec4ace7d77037c60f1df02f2bb0be0f8", null ],
+    [ "pn_sasl_set_allow_insecure_mechs", 
"group__sasl.html#ga841eea7a3e34539aa6176ebc055cdc16", null ]
+];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.html 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.html
new file mode 100755
index 0000000..3774bb1
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.html
@@ -0,0 +1,676 @@
+<!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: Selectable</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.15.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__selectable.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="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">Selectable</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:gabd89005d4809b972caae64996ac43203"><td class="memItemLeft" 
align="right" valign="top">typedef pn_iterator_t&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a></td></tr>
+<tr class="separator:gabd89005d4809b972caae64996ac43203"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab7034170bf6367b989281d8ddaa87b09"><td class="memItemLeft" 
align="right" valign="top">typedef struct <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>&#160;</td><td
 class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a></td></tr>
+<tr class="separator:gab7034170bf6367b989281d8ddaa87b09"><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:ga7595ef1175f76f8372271ace9fac1f6c"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#ga7595ef1175f76f8372271ace9fac1f6c">pn_selectables</a>
 (void)</td></tr>
+<tr class="separator:ga7595ef1175f76f8372271ace9fac1f6c"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5d73786d6a3e2b3ebb3dd66ff8f7dba2"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#ga5d73786d6a3e2b3ebb3dd66ff8f7dba2">pn_selectables_next</a>
 (<a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>
 *selectables)</td></tr>
+<tr class="separator:ga5d73786d6a3e2b3ebb3dd66ff8f7dba2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab3c94bcdbb1fa4e43ef63db415d16b53"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gab3c94bcdbb1fa4e43ef63db415d16b53">pn_selectables_free</a>
 (<a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>
 *selectables)</td></tr>
+<tr class="separator:gab3c94bcdbb1fa4e43ef63db415d16b53"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac22ee6b13a1678a4a33dc68404598a23"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gac22ee6b13a1678a4a33dc68404598a23"></a>
+PN_EXTERN <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><b>pn_selectable</b> 
(void)</td></tr>
+<tr class="separator:gac22ee6b13a1678a4a33dc68404598a23"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaaf6dc533a6bf846a3e78a468d2cfa8da"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gaaf6dc533a6bf846a3e78a468d2cfa8da"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_readable</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*readable)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:gaaf6dc533a6bf846a3e78a468d2cfa8da"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2595c36b30e5f159ef4bb7e8772f6690"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga2595c36b30e5f159ef4bb7e8772f6690"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_writable</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*writable)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:ga2595c36b30e5f159ef4bb7e8772f6690"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac4e684d6009fc7707d8da961027bee73"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gac4e684d6009fc7707d8da961027bee73"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_expired</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*expired)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:gac4e684d6009fc7707d8da961027bee73"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga00b61fde6d06800a6707f76049d84cff"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga00b61fde6d06800a6707f76049d84cff"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_error</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*error)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:ga00b61fde6d06800a6707f76049d84cff"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga608c9ee483928628bd253184d6a9ed0e"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga608c9ee483928628bd253184d6a9ed0e"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_release</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*release)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:ga608c9ee483928628bd253184d6a9ed0e"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf0b70242f5ebfaf14d858b2a616129cb"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gaf0b70242f5ebfaf14d858b2a616129cb"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_on_finalize</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, void(*finalize)(<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *))</td></tr>
+<tr class="separator:gaf0b70242f5ebfaf14d858b2a616129cb"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga90538d7c83ab1bd694fac6fb58b17b15"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga90538d7c83ab1bd694fac6fb58b17b15"></a>
+PN_EXTERN pn_record_t *&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_attachments</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel)</td></tr>
+<tr class="separator:ga90538d7c83ab1bd694fac6fb58b17b15"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga238c5b9cc9e1da20a1004b58114e9d9b"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN pn_socket_t&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#ga238c5b9cc9e1da20a1004b58114e9d9b">pn_selectable_get_fd</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga238c5b9cc9e1da20a1004b58114e9d9b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga24c4f23535410e4ab17bd6d3ef7c1276"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga24c4f23535410e4ab17bd6d3ef7c1276">pn_selectable_set_fd</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable, pn_socket_t fd)</td></tr>
+<tr class="separator:ga24c4f23535410e4ab17bd6d3ef7c1276"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7d694a1644c989937fb72b70782f4979"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga7d694a1644c989937fb72b70782f4979">pn_selectable_is_reading</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga7d694a1644c989937fb72b70782f4979"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad386a4b850dc8272f3d9aea75d81e7b1"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gad386a4b850dc8272f3d9aea75d81e7b1"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_set_reading</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, bool reading)</td></tr>
+<tr class="separator:gad386a4b850dc8272f3d9aea75d81e7b1"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadfaf415f218c9d10bbfc7d1431291198"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gadfaf415f218c9d10bbfc7d1431291198">pn_selectable_is_writing</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gadfaf415f218c9d10bbfc7d1431291198"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1fa689f7fcef178cda3452c3b3e9afc8"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga1fa689f7fcef178cda3452c3b3e9afc8"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_set_writing</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, bool writing)</td></tr>
+<tr class="separator:ga1fa689f7fcef178cda3452c3b3e9afc8"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8a9c9a60982e79b7e648b84fdd0443f9"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN pn_timestamp_t&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__selectable.html#ga8a9c9a60982e79b7e648b84fdd0443f9">pn_selectable_get_deadline</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga8a9c9a60982e79b7e648b84fdd0443f9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga117880989dbc0091c510f2d165f67903"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga117880989dbc0091c510f2d165f67903"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_set_deadline</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *sel, pn_timestamp_t deadline)</td></tr>
+<tr class="separator:ga117880989dbc0091c510f2d165f67903"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6995acf52d96089dae30519d3d5b398a"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga6995acf52d96089dae30519d3d5b398a">pn_selectable_readable</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga6995acf52d96089dae30519d3d5b398a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabe97a97bb29ba60d7bc5bc1fa2b4b1af"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gabe97a97bb29ba60d7bc5bc1fa2b4b1af">pn_selectable_writable</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gabe97a97bb29ba60d7bc5bc1fa2b4b1af"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae6702a8bd6fb7e6e52294cfd7f4638e4"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gae6702a8bd6fb7e6e52294cfd7f4638e4">pn_selectable_error</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gae6702a8bd6fb7e6e52294cfd7f4638e4"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga695af605ead4986abcdf652cf962d75a"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga695af605ead4986abcdf652cf962d75a">pn_selectable_expired</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga695af605ead4986abcdf652cf962d75a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf2d8b01aa4135e5c2180433889c1a8b7"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gaf2d8b01aa4135e5c2180433889c1a8b7">pn_selectable_is_registered</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gaf2d8b01aa4135e5c2180433889c1a8b7"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga863a4c0fd0ea5cc83d5227647495d6c2"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga863a4c0fd0ea5cc83d5227647495d6c2">pn_selectable_set_registered</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable, bool registered)</td></tr>
+<tr class="separator:ga863a4c0fd0ea5cc83d5227647495d6c2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga61382d23348378e41b4a474ca33f5bf7"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga61382d23348378e41b4a474ca33f5bf7">pn_selectable_is_terminal</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga61382d23348378e41b4a474ca33f5bf7"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga18868416a68de0a8c51cfb664510edac"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga18868416a68de0a8c51cfb664510edac">pn_selectable_terminate</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:ga18868416a68de0a8c51cfb664510edac"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad06868870ea4b401559e9de0fd9d21f8"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gad06868870ea4b401559e9de0fd9d21f8"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><b>pn_selectable_release</b> (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gad06868870ea4b401559e9de0fd9d21f8"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaea1eb47248399c5e6fe6790cef85dab9"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#gaea1eb47248399c5e6fe6790cef85dab9">pn_selectable_free</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable)</td></tr>
+<tr class="separator:gaea1eb47248399c5e6fe6790cef85dab9"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8ed074cff009036aba5d5848036d8f72"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__selectable.html#ga8ed074cff009036aba5d5848036d8f72">pn_selectable_collect</a>
 (<a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *selectable, <a class="el" 
href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> 
*collector)</td></tr>
+<tr class="separator:ga8ed074cff009036aba5d5848036d8f72"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="gab7034170bf6367b989281d8ddaa87b09"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>A selectable object provides an interface that can be used to incorporate 
proton's I/O into third party event loops.</p>
+<p>Every selectable is associated with exactly one file descriptor. 
Selectables may be interested in three kinds of events, read events, write 
events, and timer events.</p>
+<p>When a read, write, or timer event occurs, the selectable must be notified 
by calling <a class="el" 
href="group__selectable.html#ga6995acf52d96089dae30519d3d5b398a">pn_selectable_readable()</a>,
 <a class="el" 
href="group__selectable.html#gabe97a97bb29ba60d7bc5bc1fa2b4b1af">pn_selectable_writable()</a>,
 and <a class="el" 
href="group__selectable.html#ga695af605ead4986abcdf652cf962d75a">pn_selectable_expired()</a>
 as appropriate.</p>
+<p>Once a selectable reaches a terminal state (see <a class="el" 
href="group__selectable.html#ga61382d23348378e41b4a474ca33f5bf7">pn_selectable_is_terminal()</a>),
 it will never be interested in events of any kind. When this occurs it should 
be removed from the external event loop and discarded using <a class="el" 
href="group__selectable.html#gaea1eb47248399c5e6fe6790cef85dab9">pn_selectable_free()</a>.
 </p>
+
+</div>
+</div>
+<a class="anchor" id="gabd89005d4809b972caae64996ac43203"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef pn_iterator_t <a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>An iterator for selectables. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ga8ed074cff009036aba5d5848036d8f72"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_collect </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" 
href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> 
*&#160;</td>
+          <td class="paramname"><em>collector</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Configure a selectable with a set of callbacks that emit readable, 
writable, and expired events into the supplied collector.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable objet </td></tr>
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">collector</td><td>a collector object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gae6702a8bd6fb7e6e52294cfd7f4638e4"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_error </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Notify a selectable that there is an error on the file descriptor.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga695af605ead4986abcdf652cf962d75a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_expired </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Notify a selectable that its deadline has expired.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gaea1eb47248399c5e6fe6790cef85dab9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_free </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Free a selectable object.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object (or NULL) </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga8a9c9a60982e79b7e648b84fdd0443f9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN pn_timestamp_t 
pn_selectable_get_deadline </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the next deadline for a selectable.</p>
+<p>A selectable with a deadline is interested in being notified when that 
deadline expires. Zero indicates there is currently no deadline.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the next deadline or zero 
</dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga238c5b9cc9e1da20a1004b58114e9d9b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN pn_socket_t pn_selectable_get_fd </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the file descriptor associated with a selectable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the file descriptor associated 
with the selectable </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga7d694a1644c989937fb72b70782f4979"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_selectable_is_reading </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if a selectable is interested in readable events.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true iff the selectable is 
interested in read events </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaf2d8b01aa4135e5c2180433889c1a8b7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_selectable_is_registered </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if a selectable is registered.</p>
+<p>This flag is set via <a class="el" 
href="group__selectable.html#ga863a4c0fd0ea5cc83d5227647495d6c2">pn_selectable_set_registered()</a>
 and can be used for tracking whether a given selectable has been registerd 
with an external event loop.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the selectable is 
registered </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga61382d23348378e41b4a474ca33f5bf7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_selectable_is_terminal </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if a selectable is in the terminal state.</p>
+<p>A selectable that is in the terminal state will never be interested in 
being notified of events of any kind ever again. Once a selectable reaches this 
state it should be removed from any external I/O loops and freed in order to 
reclaim any resources associated with it.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the selectable is in 
the terminal state, false otherwise </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gadfaf415f218c9d10bbfc7d1431291198"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_selectable_is_writing </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Check if a selectable is interested in writable events.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true iff the selectable is 
interested in writable events </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga6995acf52d96089dae30519d3d5b398a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_readable </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Notify a selectable that the file descriptor is readable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga24c4f23535410e4ab17bd6d3ef7c1276"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_set_fd </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">pn_socket_t&#160;</td>
+          <td class="paramname"><em>fd</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the file descriptor associated with a selectable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">fd</td><td>the 
file descriptor </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga863a4c0fd0ea5cc83d5227647495d6c2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_set_registered </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">bool&#160;</td>
+          <td class="paramname"><em>registered</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Set the registered flag for a selectable.</p>
+<p>See <a class="el" 
href="group__selectable.html#gaf2d8b01aa4135e5c2180433889c1a8b7">pn_selectable_is_registered()</a>
 for details.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">registered</td><td>the registered flag </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga18868416a68de0a8c51cfb664510edac"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_terminate </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Terminate a selectable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gabe97a97bb29ba60d7bc5bc1fa2b4b1af"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectable_writable </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectable</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Notify a selectable that the file descriptor is writable.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectable</td><td>a selectable object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga7595ef1175f76f8372271ace9fac1f6c"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>*
 pn_selectables </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Construct a new selectables iterator.</p>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to a new selectables 
iterator </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gab3c94bcdbb1fa4e43ef63db415d16b53"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_selectables_free </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectables</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Free a selectables iterator.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectables</td><td>a selectables iterator (or NULL) 
</td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga5d73786d6a3e2b3ebb3dd66ff8f7dba2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="group__selectable.html#gab7034170bf6367b989281d8ddaa87b09">pn_selectable_t</a>*
 pn_selectables_next </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__selectable.html#gabd89005d4809b972caae64996ac43203">pn_selectables_t</a>
 *&#160;</td>
+          <td class="paramname"><em>selectables</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the next selectable from an iterator.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td 
class="paramname">selectables</td><td>a selectable iterator </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the next selectable from the 
iterator </dd></dl>
+
+</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/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.js 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.js
new file mode 100755
index 0000000..7457d83
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__selectable.js
@@ -0,0 +1,23 @@
+var group__selectable =
+[
+    [ "pn_selectable_t", 
"group__selectable.html#gab7034170bf6367b989281d8ddaa87b09", null ],
+    [ "pn_selectables_t", 
"group__selectable.html#gabd89005d4809b972caae64996ac43203", null ],
+    [ "pn_selectable_collect", 
"group__selectable.html#ga8ed074cff009036aba5d5848036d8f72", null ],
+    [ "pn_selectable_error", 
"group__selectable.html#gae6702a8bd6fb7e6e52294cfd7f4638e4", null ],
+    [ "pn_selectable_expired", 
"group__selectable.html#ga695af605ead4986abcdf652cf962d75a", null ],
+    [ "pn_selectable_free", 
"group__selectable.html#gaea1eb47248399c5e6fe6790cef85dab9", null ],
+    [ "pn_selectable_get_deadline", 
"group__selectable.html#ga8a9c9a60982e79b7e648b84fdd0443f9", null ],
+    [ "pn_selectable_get_fd", 
"group__selectable.html#ga238c5b9cc9e1da20a1004b58114e9d9b", null ],
+    [ "pn_selectable_is_reading", 
"group__selectable.html#ga7d694a1644c989937fb72b70782f4979", null ],
+    [ "pn_selectable_is_registered", 
"group__selectable.html#gaf2d8b01aa4135e5c2180433889c1a8b7", null ],
+    [ "pn_selectable_is_terminal", 
"group__selectable.html#ga61382d23348378e41b4a474ca33f5bf7", null ],
+    [ "pn_selectable_is_writing", 
"group__selectable.html#gadfaf415f218c9d10bbfc7d1431291198", null ],
+    [ "pn_selectable_readable", 
"group__selectable.html#ga6995acf52d96089dae30519d3d5b398a", null ],
+    [ "pn_selectable_set_fd", 
"group__selectable.html#ga24c4f23535410e4ab17bd6d3ef7c1276", null ],
+    [ "pn_selectable_set_registered", 
"group__selectable.html#ga863a4c0fd0ea5cc83d5227647495d6c2", null ],
+    [ "pn_selectable_terminate", 
"group__selectable.html#ga18868416a68de0a8c51cfb664510edac", null ],
+    [ "pn_selectable_writable", 
"group__selectable.html#gabe97a97bb29ba60d7bc5bc1fa2b4b1af", null ],
+    [ "pn_selectables", 
"group__selectable.html#ga7595ef1175f76f8372271ace9fac1f6c", null ],
+    [ "pn_selectables_free", 
"group__selectable.html#gab3c94bcdbb1fa4e43ef63db415d16b53", null ],
+    [ "pn_selectables_next", 
"group__selectable.html#ga5d73786d6a3e2b3ebb3dd66ff8f7dba2", null ]
+];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.html 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.html
new file mode 100755
index 0000000..4cd55db
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.html
@@ -0,0 +1,193 @@
+<!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: Sender</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.15.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__sender.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="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">Sender<div class="ingroups"><a class="el" 
href="group__link.html">Link</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:gaa7a1eb227dde862c8a311535d1737b1a"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sender.html#gaa7a1eb227dde862c8a311535d1737b1a">pn_link_offered</a>
 (<a class="el" 
href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> 
*sender, int credit)</td></tr>
+<tr class="separator:gaa7a1eb227dde862c8a311535d1737b1a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6edd45454fe2ddd093aad94f3d277475"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN ssize_t&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__sender.html#ga6edd45454fe2ddd093aad94f3d277475">pn_link_send</a> 
(<a class="el" 
href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> 
*sender, const char *bytes, size_t n)</td></tr>
+<tr class="separator:ga6edd45454fe2ddd093aad94f3d277475"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="gaa7a1eb227dde862c8a311535d1737b1a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_link_offered </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> 
*&#160;</td>
+          <td class="paramname"><em>sender</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>credit</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Signal the availability of deliveries for a link.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sender</td><td>a 
sender link object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">credit</td><td>the 
number of deliveries potentially available for transfer </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga6edd45454fe2ddd093aad94f3d277475"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN ssize_t pn_link_send </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> 
*&#160;</td>
+          <td class="paramname"><em>sender</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>bytes</em>, </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>Send message data for the current delivery on a link.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">sender</td><td>a 
sender link object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">bytes</td><td>the 
start of the message data </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>the 
number of bytes of message data </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the number of bytes sent, or an 
error code </dd></dl>
+
+</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/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.js
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.js 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.js
new file mode 100755
index 0000000..30c8904
--- /dev/null
+++ b/content/releases/qpid-proton-0.15.0/proton/c/api/group__sender.js
@@ -0,0 +1,5 @@
+var group__sender =
+[
+    [ "pn_link_offered", 
"group__sender.html#gaa7a1eb227dde862c8a311535d1737b1a", null ],
+    [ "pn_link_send", "group__sender.html#ga6edd45454fe2ddd093aad94f3d277475", 
null ]
+];
\ 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