You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2016/12/13 17:52:15 UTC

[20/51] [partial] qpid-site git commit: PROTON-1374: update the website for Proton 0.16.0

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/7833dc2a/content/releases/qpid-proton-0.16.0/proton/c/api/group__link.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-0.16.0/proton/c/api/group__link.html b/content/releases/qpid-proton-0.16.0/proton/c/api/group__link.html
new file mode 100755
index 0000000..2b08208
--- /dev/null
+++ b/content/releases/qpid-proton-0.16.0/proton/c/api/group__link.html
@@ -0,0 +1,1820 @@
+<!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: Link</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.16.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__link.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">Link<div class="ingroups"><a class="el" href="group__core.html">Core</a></div></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A channel for transferring messages.  
+<a href="#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ga89dad3aa7934329a7ff467c636687bc0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a></td></tr>
+<tr class="memdesc:ga89dad3aa7934329a7ff467c636687bc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">An AMQP Link object.  <a href="#ga89dad3aa7934329a7ff467c636687bc0">More...</a><br/></td></tr>
+<tr class="separator:ga89dad3aa7934329a7ff467c636687bc0"><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:ga3fb58bd0b88d37407ebb615c2630e608"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> { <a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608a8bd9806d2f8d8c1724ed26bb0543bade">PN_SND_UNSETTLED</a>, 
+<a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608ac159f0edca565961b554768a42e82bf0">PN_SND_SETTLED</a>, 
+<a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608ac33a5700d0247976b465aeb7c1437fd1">PN_SND_MIXED</a>
+ }</td></tr>
+<tr class="memdesc:ga3fb58bd0b88d37407ebb615c2630e608"><td class="mdescLeft">&#160;</td><td class="mdescRight">Describes the permitted/expected settlement behaviours of a sending link.  <a href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">More...</a><br/></td></tr>
+<tr class="separator:ga3fb58bd0b88d37407ebb615c2630e608"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad1c2388cdae687be26222a5d66fd2d58"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> { <a class="el" href="group__link.html#ggad1c2388cdae687be26222a5d66fd2d58ac22b82396bd686940dfcc861302a8262">PN_RCV_FIRST</a>, 
+<a class="el" href="group__link.html#ggad1c2388cdae687be26222a5d66fd2d58ac79dc7f63fce078a8f0fe268c81dcaf3">PN_RCV_SECOND</a>
+ }</td></tr>
+<tr class="memdesc:gad1c2388cdae687be26222a5d66fd2d58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Describes the permitted/expected settlement behaviours of a receiving link.  <a href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">More...</a><br/></td></tr>
+<tr class="separator:gad1c2388cdae687be26222a5d66fd2d58"><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:ga469bef2e81c53e85899ffbb277616a8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga469bef2e81c53e85899ffbb277616a8c">pn_sender</a> (<a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> *session, const char *name)</td></tr>
+<tr class="memdesc:ga469bef2e81c53e85899ffbb277616a8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new sender on a session.  <a href="#ga469bef2e81c53e85899ffbb277616a8c">More...</a><br/></td></tr>
+<tr class="separator:ga469bef2e81c53e85899ffbb277616a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga5e314b3e07b48ebcffbac63f265fa69f">pn_receiver</a> (<a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> *session, const char *name)</td></tr>
+<tr class="memdesc:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new receiver on a session.  <a href="#ga5e314b3e07b48ebcffbac63f265fa69f">More...</a><br/></td></tr>
+<tr class="separator:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gadd3b8899fe023d3506fb88d228d6b1b7">pn_link_free</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Free a link object.  <a href="#gadd3b8899fe023d3506fb88d228d6b1b7">More...</a><br/></td></tr>
+<tr class="separator:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga93e6b527743f433da2ff367c1b2c500a"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga93e6b527743f433da2ff367c1b2c500a">pn_link_get_context</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="separator:ga93e6b527743f433da2ff367c1b2c500a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga376f2cc18bbd771d95aa8222586d19b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga376f2cc18bbd771d95aa8222586d19b2">pn_link_set_context</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, void *context)</td></tr>
+<tr class="separator:ga376f2cc18bbd771d95aa8222586d19b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="memItemLeft" align="right" valign="top">pn_record_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69">pn_link_attachments</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the attachments that are associated with a link object.  <a href="#ga8b19ffdb7934940fa7c5fd75c5fe2d69">More...</a><br/></td></tr>
+<tr class="separator:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa44112980ebabbb5cbd002670073a751"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaa44112980ebabbb5cbd002670073a751">pn_link_name</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gaa44112980ebabbb5cbd002670073a751"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the name of a link.  <a href="#gaa44112980ebabbb5cbd002670073a751">More...</a><br/></td></tr>
+<tr class="separator:gaa44112980ebabbb5cbd002670073a751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7c48ef214568267839aea04ed337926b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7c48ef214568267839aea04ed337926b">pn_link_is_sender</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga7c48ef214568267839aea04ed337926b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if a link is a sender.  <a href="#ga7c48ef214568267839aea04ed337926b">More...</a><br/></td></tr>
+<tr class="separator:ga7c48ef214568267839aea04ed337926b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae7045dd02f2c9450ff8737e005628d81"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gae7045dd02f2c9450ff8737e005628d81">pn_link_is_receiver</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gae7045dd02f2c9450ff8737e005628d81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if a link is a receiver.  <a href="#gae7045dd02f2c9450ff8737e005628d81">More...</a><br/></td></tr>
+<tr class="separator:gae7045dd02f2c9450ff8737e005628d81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad502b38bc184ad0bfaa86dede81f62c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad502b38bc184ad0bfaa86dede81f62c9">pn_link_state</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gad502b38bc184ad0bfaa86dede81f62c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the endpoint state flags for a link.  <a href="#gad502b38bc184ad0bfaa86dede81f62c9">More...</a><br/></td></tr>
+<tr class="separator:gad502b38bc184ad0bfaa86dede81f62c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf6f11d778aa4622d8aa5db8962bb1f0a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaf6f11d778aa4622d8aa5db8962bb1f0a">pn_link_error</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="separator:gaf6f11d778aa4622d8aa5db8962bb1f0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga52c99044eabb7712efa2f1098c760804"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga52c99044eabb7712efa2f1098c760804">pn_link_condition</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga52c99044eabb7712efa2f1098c760804"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the local condition associated with a link endpoint.  <a href="#ga52c99044eabb7712efa2f1098c760804">More...</a><br/></td></tr>
+<tr class="separator:ga52c99044eabb7712efa2f1098c760804"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga97dc5133125c9b7e4afbb1b76e6efe7b">pn_link_remote_condition</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remote condition associated with a link endpoint.  <a href="#ga97dc5133125c9b7e4afbb1b76e6efe7b">More...</a><br/></td></tr>
+<tr class="separator:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac63e43305fb1a5e3b14399a9ddc8f24d">pn_link_session</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the parent session for a link object.  <a href="#gac63e43305fb1a5e3b14399a9ddc8f24d">More...</a><br/></td></tr>
+<tr class="separator:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7c9434c40eb653f007ff5721e2ebf73e">pn_link_head</a> (<a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> *connection, <a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> state)</td></tr>
+<tr class="memdesc:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the first link that matches the given state mask.  <a href="#ga7c9434c40eb653f007ff5721e2ebf73e">More...</a><br/></td></tr>
+<tr class="separator:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga9b2a9cfa00dfdae4e01bf75483433925">pn_link_next</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> state)</td></tr>
+<tr class="memdesc:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the next link that matches the given state mask.  <a href="#ga9b2a9cfa00dfdae4e01bf75483433925">More...</a><br/></td></tr>
+<tr class="separator:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaabaca3f5d03970a122240eebc588add6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6">pn_link_open</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gaabaca3f5d03970a122240eebc588add6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Open a link.  <a href="#gaabaca3f5d03970a122240eebc588add6">More...</a><br/></td></tr>
+<tr class="separator:gaabaca3f5d03970a122240eebc588add6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga4851693eb6a16fd9ab61e2df6f00770d">pn_link_close</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close a link.  <a href="#ga4851693eb6a16fd9ab61e2df6f00770d">More...</a><br/></td></tr>
+<tr class="separator:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga1dc327c52ac24a0d65a17c88ce685b0b">pn_link_detach</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detach a link.  <a href="#ga1dc327c52ac24a0d65a17c88ce685b0b">More...</a><br/></td></tr>
+<tr class="separator:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga2c8985a9d44a813ab1739a91ae3708a3">pn_link_source</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the locally defined source definition for a link.  <a href="#ga2c8985a9d44a813ab1739a91ae3708a3">More...</a><br/></td></tr>
+<tr class="separator:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga997c85388b9fb30151ea3b40b946e958"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga997c85388b9fb30151ea3b40b946e958">pn_link_target</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga997c85388b9fb30151ea3b40b946e958"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the locally defined target definition for a link.  <a href="#ga997c85388b9fb30151ea3b40b946e958">More...</a><br/></td></tr>
+<tr class="separator:ga997c85388b9fb30151ea3b40b946e958"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadf6b8ff6223465f21a481e9287f60671"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gadf6b8ff6223465f21a481e9287f60671">pn_link_remote_source</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gadf6b8ff6223465f21a481e9287f60671"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the remotely defined source definition for a link.  <a href="#gadf6b8ff6223465f21a481e9287f60671">More...</a><br/></td></tr>
+<tr class="separator:gadf6b8ff6223465f21a481e9287f60671"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gabf61668a66ae189dbb4820da6ee30d90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gabf61668a66ae189dbb4820da6ee30d90">pn_link_remote_target</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gabf61668a66ae189dbb4820da6ee30d90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the remotely defined target definition for a link.  <a href="#gabf61668a66ae189dbb4820da6ee30d90">More...</a><br/></td></tr>
+<tr class="separator:gabf61668a66ae189dbb4820da6ee30d90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad7e426b0cc4759568b3fd2b4fb176260"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad7e426b0cc4759568b3fd2b4fb176260">pn_link_current</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gad7e426b0cc4759568b3fd2b4fb176260"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the current delivery for a link.  <a href="#gad7e426b0cc4759568b3fd2b4fb176260">More...</a><br/></td></tr>
+<tr class="separator:gad7e426b0cc4759568b3fd2b4fb176260"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga93824a3859c37463e44458cd2f63d31f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga93824a3859c37463e44458cd2f63d31f">pn_link_advance</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga93824a3859c37463e44458cd2f63d31f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Advance the current delivery of a link to the next delivery on the link.  <a href="#ga93824a3859c37463e44458cd2f63d31f">More...</a><br/></td></tr>
+<tr class="separator:ga93824a3859c37463e44458cd2f63d31f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga55428637f3b8c446efd5fea3f26c932d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d">pn_link_credit</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga55428637f3b8c446efd5fea3f26c932d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the credit balance for a link.  <a href="#ga55428637f3b8c446efd5fea3f26c932d">More...</a><br/></td></tr>
+<tr class="separator:ga55428637f3b8c446efd5fea3f26c932d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga57a00950e2eeef378fd6c0a3b3b5bfe9">pn_link_queued</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of queued deliveries for a link.  <a href="#ga57a00950e2eeef378fd6c0a3b3b5bfe9">More...</a><br/></td></tr>
+<tr class="separator:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gab16f14d071548c5c9ab22924ee5b1ebb">pn_link_remote_credit</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remote view of the credit for a link.  <a href="#gab16f14d071548c5c9ab22924ee5b1ebb">More...</a><br/></td></tr>
+<tr class="separator:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga40dd26f3d035c54056e2649aeb78d8ac">pn_link_get_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the drain flag for a link.  <a href="#ga40dd26f3d035c54056e2649aeb78d8ac">More...</a><br/></td></tr>
+<tr class="separator:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga95c4018a1f1fe0e7c2e7fd02fe062d23">pn_link_drained</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drain excess credit for a link.  <a href="#ga95c4018a1f1fe0e7c2e7fd02fe062d23">More...</a><br/></td></tr>
+<tr class="separator:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7f1742528b32c3c9609b97a3ed449639"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7f1742528b32c3c9609b97a3ed449639">pn_link_available</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga7f1742528b32c3c9609b97a3ed449639"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the available deliveries hint for a link.  <a href="#ga7f1742528b32c3c9609b97a3ed449639">More...</a><br/></td></tr>
+<tr class="separator:ga7f1742528b32c3c9609b97a3ed449639"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gacef130ca5cc6eb3eec2dd48c8bf5c7e6">pn_link_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the local sender settle mode for a link.  <a href="#gacef130ca5cc6eb3eec2dd48c8bf5c7e6">More...</a><br/></td></tr>
+<tr class="separator:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0bc65ff494e2860e6227f68c72468101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga0bc65ff494e2860e6227f68c72468101">pn_link_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga0bc65ff494e2860e6227f68c72468101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the local receiver settle mode for a link.  <a href="#ga0bc65ff494e2860e6227f68c72468101">More...</a><br/></td></tr>
+<tr class="separator:ga0bc65ff494e2860e6227f68c72468101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga677c416a6365cedd23b43043dff0b89f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga677c416a6365cedd23b43043dff0b89f">pn_link_set_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> mode)</td></tr>
+<tr class="memdesc:ga677c416a6365cedd23b43043dff0b89f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the local sender settle mode for a link.  <a href="#ga677c416a6365cedd23b43043dff0b89f">More...</a><br/></td></tr>
+<tr class="separator:ga677c416a6365cedd23b43043dff0b89f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab6441a917c291e68984405057eb56ab8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gab6441a917c291e68984405057eb56ab8">pn_link_set_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> mode)</td></tr>
+<tr class="memdesc:gab6441a917c291e68984405057eb56ab8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the local receiver settle mode for a link.  <a href="#gab6441a917c291e68984405057eb56ab8">More...</a><br/></td></tr>
+<tr class="separator:gab6441a917c291e68984405057eb56ab8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga92592155f2afcf6b9aabfb4fc64c140f">pn_link_remote_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remote sender settle mode for a link.  <a href="#ga92592155f2afcf6b9aabfb4fc64c140f">More...</a><br/></td></tr>
+<tr class="separator:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga378e4bb5a0519a75c3c151c15809dda5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga378e4bb5a0519a75c3c151c15809dda5">pn_link_remote_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga378e4bb5a0519a75c3c151c15809dda5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remote receiver settle mode for a link.  <a href="#ga378e4bb5a0519a75c3c151c15809dda5">More...</a><br/></td></tr>
+<tr class="separator:ga378e4bb5a0519a75c3c151c15809dda5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac7309a622f3f2296261ff8fa9bc33ba1">pn_link_unsettled</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of unsettled deliveries for a link.  <a href="#gac7309a622f3f2296261ff8fa9bc33ba1">More...</a><br/></td></tr>
+<tr class="separator:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6206e3d4efe0ebe0491955006930fa18"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga6206e3d4efe0ebe0491955006930fa18">pn_unsettled_head</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga6206e3d4efe0ebe0491955006930fa18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the first unsettled delivery for a link.  <a href="#ga6206e3d4efe0ebe0491955006930fa18">More...</a><br/></td></tr>
+<tr class="separator:ga6206e3d4efe0ebe0491955006930fa18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga6dc9ad6d95d1cccd6f3d29b782269cce">pn_unsettled_next</a> (<a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> *delivery)</td></tr>
+<tr class="memdesc:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next unsettled delivery on a link.  <a href="#ga6dc9ad6d95d1cccd6f3d29b782269cce">More...</a><br/></td></tr>
+<tr class="separator:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaef3f2e4bca87f9adc70e90dce7cd42b2">pn_link_offered</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *sender, int credit)</td></tr>
+<tr class="memdesc:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signal the availability of deliveries for a link.  <a href="#gaef3f2e4bca87f9adc70e90dce7cd42b2">More...</a><br/></td></tr>
+<tr class="separator:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaa825fac21730f3f9fff37d156e5f88e9"><td class="memItemLeft" align="right" valign="top">ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaa825fac21730f3f9fff37d156e5f88e9">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="memdesc:gaa825fac21730f3f9fff37d156e5f88e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send message data for the current delivery on a link.  <a href="#gaa825fac21730f3f9fff37d156e5f88e9">More...</a><br/></td></tr>
+<tr class="separator:gaa825fac21730f3f9fff37d156e5f88e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gafec44cf1c79ec03f3ac009e1879e71a9">pn_link_flow</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, int credit)</td></tr>
+<tr class="memdesc:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Grant credit for incoming deliveries on a receiver.  <a href="#gafec44cf1c79ec03f3ac009e1879e71a9">More...</a><br/></td></tr>
+<tr class="separator:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad7ad9bc5c9ea7e8a21cd4fa472d2c8df">pn_link_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, int credit)</td></tr>
+<tr class="memdesc:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Grant credit for incoming deliveries on a receiver, and set drain mode to true.  <a href="#gad7ad9bc5c9ea7e8a21cd4fa472d2c8df">More...</a><br/></td></tr>
+<tr class="separator:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaeb417e6b7e99c76f61549f5ed5519395"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaeb417e6b7e99c76f61549f5ed5519395">pn_link_set_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, bool drain)</td></tr>
+<tr class="memdesc:gaeb417e6b7e99c76f61549f5ed5519395"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the drain mode on a link.  <a href="#gaeb417e6b7e99c76f61549f5ed5519395">More...</a><br/></td></tr>
+<tr class="separator:gaeb417e6b7e99c76f61549f5ed5519395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga06c97ce7396973dca0d311567f25f95a"><td class="memItemLeft" align="right" valign="top">ssize_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga06c97ce7396973dca0d311567f25f95a">pn_link_recv</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, char *bytes, size_t n)</td></tr>
+<tr class="memdesc:ga06c97ce7396973dca0d311567f25f95a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive message data for the current delivery on a link.  <a href="#ga06c97ce7396973dca0d311567f25f95a">More...</a><br/></td></tr>
+<tr class="separator:ga06c97ce7396973dca0d311567f25f95a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga4a821eaf6298b94522572fad73b8e2d1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga4a821eaf6298b94522572fad73b8e2d1">pn_link_draining</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver)</td></tr>
+<tr class="memdesc:ga4a821eaf6298b94522572fad73b8e2d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a link is currently draining.  <a href="#ga4a821eaf6298b94522572fad73b8e2d1">More...</a><br/></td></tr>
+<tr class="separator:ga4a821eaf6298b94522572fad73b8e2d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gac282341dacff892eba8e224eca5c5c52"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac282341dacff892eba8e224eca5c5c52">pn_link_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:gac282341dacff892eba8e224eca5c5c52"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - Get the maximum message size for a link.  <a href="#gac282341dacff892eba8e224eca5c5c52">More...</a><br/></td></tr>
+<tr class="separator:gac282341dacff892eba8e224eca5c5c52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga2421a9ddebba208338412dea365cf6ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga2421a9ddebba208338412dea365cf6ad">pn_link_set_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, uint64_t size)</td></tr>
+<tr class="memdesc:ga2421a9ddebba208338412dea365cf6ad"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - Set the maximum message size for a link.  <a href="#ga2421a9ddebba208338412dea365cf6ad">More...</a><br/></td></tr>
+<tr class="separator:ga2421a9ddebba208338412dea365cf6ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="memItemLeft" align="right" valign="top">uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga9fc507fe3e207e84f2fc251cf9bd833d">pn_link_remote_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr>
+<tr class="memdesc:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - Get the remote view of the maximum message size for a link.  <a href="#ga9fc507fe3e207e84f2fc251cf9bd833d">More...</a><br/></td></tr>
+<tr class="separator:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<p>A channel for transferring messages. </p>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ga89dad3aa7934329a7ff467c636687bc0"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>An AMQP Link object. </p>
+<p>A pn_link_t object encapsulates all of the endpoint state associated with an AMQP Link. A pn_link_t object contains an ordered sequence of <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340" title="An AMQP Delivery object.">pn_delivery_t</a> objects representing in-flight deliveries. A pn_link_t may be either sender or a receiver but never both.</p>
+<p>A pn_link_t object maintains a pointer to the <em>current</em> delivery within the ordered sequence of deliveries contained by the link (See <a class="el" href="group__link.html#gad7e426b0cc4759568b3fd2b4fb176260" title="Get the current delivery for a link.">pn_link_current</a>). The <em>current</em> delivery is the target of a number of operations associated with the link, such as sending (<a class="el" href="group__link.html#gaa825fac21730f3f9fff37d156e5f88e9" title="Send message data for the current delivery on a link.">pn_link_send</a>) and receiving (<a class="el" href="group__link.html#ga06c97ce7396973dca0d311567f25f95a" title="Receive message data for the current delivery on a link.">pn_link_recv</a>) message data. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="gad1c2388cdae687be26222a5d66fd2d58"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Describes the permitted/expected settlement behaviours of a receiving link. </p>
+<p>The receiver settle mode describes the permitted and expected behaviour of a receiving link with respect to settling of deliveries. See <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery.">pn_delivery_settle</a> for more details. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggad1c2388cdae687be26222a5d66fd2d58ac22b82396bd686940dfcc861302a8262"></a>PN_RCV_FIRST</em>&nbsp;</td><td class="fielddoc">
+<p>The receiver will settle deliveries regardless of what the sender does. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ggad1c2388cdae687be26222a5d66fd2d58ac79dc7f63fce078a8f0fe268c81dcaf3"></a>PN_RCV_SECOND</em>&nbsp;</td><td class="fielddoc">
+<p>The receiver will only settle deliveries after the sender settles. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="ga3fb58bd0b88d37407ebb615c2630e608"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum <a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Describes the permitted/expected settlement behaviours of a sending link. </p>
+<p>The sender settle mode describes the permitted and expected behaviour of a sending link with respect to settling of deliveries. See <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery.">pn_delivery_settle</a> for more details. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga3fb58bd0b88d37407ebb615c2630e608a8bd9806d2f8d8c1724ed26bb0543bade"></a>PN_SND_UNSETTLED</em>&nbsp;</td><td class="fielddoc">
+<p>The sender will send all deliveries initially unsettled. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="gga3fb58bd0b88d37407ebb615c2630e608ac159f0edca565961b554768a42e82bf0"></a>PN_SND_SETTLED</em>&nbsp;</td><td class="fielddoc">
+<p>The sender will send all deliveries settled to the receiver. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="gga3fb58bd0b88d37407ebb615c2630e608ac33a5700d0247976b465aeb7c1437fd1"></a>PN_SND_MIXED</em>&nbsp;</td><td class="fielddoc">
+<p>The sender may send a mixure of settled and unsettled deliveries. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ga93824a3859c37463e44458cd2f63d31f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_link_advance </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Advance the current delivery of a link to the next delivery on the link. </p>
+<p>For sending links this operation is used to finish sending message data for the current outgoing delivery and move on to the next outgoing delivery (if any).</p>
+<p>For receiving links, this operation is used to finish accessing message data from the current incoming delivery and move on to the next incoming delivery (if any).</p>
+<p>Each link maintains a sequence of deliveries in the order they were created, along with a pointer to the <em>current</em> delivery. The pn_link_advance operation will modify the <em>current</em> delivery on the link to point to the next delivery in the sequence. If there is no next delivery in the sequence, the current delivery will be set to NULL. This operation will return true if invoking it caused the value of the current delivery to change, even if it was set to NULL.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the current delivery was changed </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a9">broker.c</a>, <a class="el" href="receive_8c-example.html#a31">receive.c</a>, and <a class="el" href="send_8c-example.html#a30">send.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga8b19ffdb7934940fa7c5fd75c5fe2d69"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">pn_record_t* pn_link_attachments </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the attachments that are associated with a link object. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link whose attachments are to be returned. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the attachments for the link object </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga7f1742528b32c3c9609b97a3ed449639"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_link_available </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the available deliveries hint for a link. </p>
+<p>The available count for a link provides a hint as to the number of deliveries that might be able to be sent if sufficient credit were issued by the receiving link endpoint. See <a class="el" href="group__link.html#gaef3f2e4bca87f9adc70e90dce7cd42b2" title="Signal the availability of deliveries for a link.">pn_link_offered</a> for more details.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the available deliveries hint </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga4851693eb6a16fd9ab61e2df6f00770d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_close </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Close a link. </p>
+<p>Once this operation has completed, the PN_LOCAL_CLOSED state flag will be set. This may be called without calling <a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6" title="Open a link.">pn_link_open</a>, in this case it is equivalent to calling <a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6" title="Open a link.">pn_link_open</a> followed by <a class="el" href="group__link.html#ga4851693eb6a16fd9ab61e2df6f00770d" title="Close a link.">pn_link_close</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a79">broker.c</a>, and <a class="el" href="receive_8c-example.html#a35">receive.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga52c99044eabb7712efa2f1098c760804"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>* pn_link_condition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the local condition associated with a link endpoint. </p>
+<p>The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object.">pn_condition_t</a> object retrieved may be modified prior to closing a link in order to indicate a particular condition exists when the link closes. This is normally used to communicate error conditions to the remote peer, however it may also be used in non error cases. See <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object.">pn_condition_t</a> for more details.</p>
+<p>The pointer returned by this operation is valid until the link object is freed.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the link's local condition object </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga55428637f3b8c446efd5fea3f26c932d"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_link_credit </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the credit balance for a link. </p>
+<p>Links use a credit based flow control scheme. Every receiver maintains a credit balance that corresponds to the number of deliveries that the receiver can accept at any given moment. As more capacity becomes available at the receiver (see <a class="el" href="group__link.html#gafec44cf1c79ec03f3ac009e1879e71a9" title="Grant credit for incoming deliveries on a receiver.">pn_link_flow</a>), it adds credit to this balance and communicates the new balance to the sender. Whenever a delivery is sent/received, the credit balance maintained by the link is decremented by one. Once the credit balance at the sender reaches zero, the sender must pause sending until more credit is obtained from the receiver.</p>
+<p>Note that a sending link may still be used to send deliveries even if pn_link_credit reaches zero, however those deliveries will end up being buffered by the link until enough credit is obtained from the receiver to send them over the wire. In this case the balance reported by <a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d" title="Get the credit balance for a link.">pn_link_credit</a> will go negative.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the credit balance for the link </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a17">broker.c</a>, <a class="el" href="receive_8c-example.html#a33">receive.c</a>, and <a class="el" href="send_8c-example.html#a24">send.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="gad7e426b0cc4759568b3fd2b4fb176260"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a>* pn_link_current </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the current delivery for a link. </p>
+<p>Each link maintains a sequence of deliveries in the order they were created, along with a pointer to the <em>current</em> delivery. All send/recv operations on a link take place on the <em>current</em> delivery. If a link has no current delivery, the current delivery is automatically initialized to the next delivery created on the link. Once initialized, the current delivery remains the same until it is changed through use of <a class="el" href="group__link.html#ga93824a3859c37463e44458cd2f63d31f" title="Advance the current delivery of a link to the next delivery on the link.">pn_link_advance</a> or until it is settled via <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery.">pn_delivery_settle</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the current delivery for the link, or NULL if there is none </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga1dc327c52ac24a0d65a17c88ce685b0b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_detach </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Detach a link. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_drain </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>receiver</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>Grant credit for incoming deliveries on a receiver, and set drain mode to true. </p>
+<p>Use <a class="el" href="group__link.html#gaeb417e6b7e99c76f61549f5ed5519395" title="Set the drain mode on a link.">pn_link_set_drain</a> to set the drain mode explicitly.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">receiver</td><td>a receiving link object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">credit</td><td>the amount to increment the link credit </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ga95c4018a1f1fe0e7c2e7fd02fe062d23"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_link_drained </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Drain excess credit for a link. </p>
+<p>When a link is in drain mode, the sender must use all excess credit immediately, and release any excess credit back to the receiver if there are no deliveries available to send.</p>
+<p>When invoked on a sending link that is in drain mode, this operation will release all excess credit back to the receiver and return the number of credits released back to the sender. If the link is not in drain mode, this operation is a noop.</p>
+<p>When invoked on a receiving link, this operation will return and reset the number of credits the sender has released back to the receiver.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the number of credits drained </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga4a821eaf6298b94522572fad73b8e2d1"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_link_draining </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>receiver</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Check if a link is currently draining. </p>
+<p>A link is defined to be draining when drain mode is set to true, and the sender still has excess credit.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">receiver</td><td>a receiving link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the link is currently draining, false otherwise </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaf6f11d778aa4622d8aa5db8962bb1f0a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a>* pn_link_error </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000008">Deprecated:</a></b></dt><dd></dd></dl>
+<p>Get additional error information associated with the link.</p>
+<p>Whenever a link operation fails (i.e. returns an error code), additional error details can be obtained using this function. The error object that is returned may also be used to clear the error condition.</p>
+<p>The pointer returned by this operation is valid until the link object is freed.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the link's error object </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gafec44cf1c79ec03f3ac009e1879e71a9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_flow </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>receiver</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>Grant credit for incoming deliveries on a receiver. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">receiver</td><td>a receiving link object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">credit</td><td>the amount to increment the link credit </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a54">broker.c</a>, and <a class="el" href="receive_8c-example.html#a24">receive.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="gadd3b8899fe023d3506fb88d228d6b1b7"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_free </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Free a link object. </p>
+<p>When a link object is freed, all <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340" title="An AMQP Delivery object.">pn_delivery_t</a> objects associated with the session are also freed. Freeing a link will settle any unsettled deliveries on the link.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object to free (or NULL) </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a80">broker.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga93e6b527743f433da2ff367c1b2c500a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void* pn_link_get_context </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd></dd></dl>
+<p>Get the application context that is associated with a link object.</p>
+<p>The application context for a link may be set using <a class="el" href="group__link.html#ga376f2cc18bbd771d95aa8222586d19b2">pn_link_set_context</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link whose context is to be returned. </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the application context for the link object </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga40dd26f3d035c54056e2649aeb78d8ac"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_link_get_drain </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the drain flag for a link. </p>
+<p>If a link is in drain mode, then the sending endpoint of a link must immediately use up all available credit on the link. If this is not possible, the excess credit must be returned by invoking <a class="el" href="group__link.html#ga95c4018a1f1fe0e7c2e7fd02fe062d23" title="Drain excess credit for a link.">pn_link_drained</a>. Only the receiving endpoint can set the drain mode. See <a class="el" href="group__link.html#gaeb417e6b7e99c76f61549f5ed5519395" title="Set the drain mode on a link.">pn_link_set_drain</a> for details.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if and only if the link is in drain mode </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga7c9434c40eb653f007ff5721e2ebf73e"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_link_head </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> *&#160;</td>
+          <td class="paramname"><em>connection</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a>&#160;</td>
+          <td class="paramname"><em>state</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Retrieve the first link that matches the given state mask. </p>
+<p>Examines the state of each link owned by the connection and returns the first link that matches the given state mask. If state contains both local and remote flags, then an exact match against those flags is performed. If state contains only local or only remote flags, then a match occurs if any of the local or remote flags are set respectively. state==0 matches all links.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">connection</td><td>to be searched for matching Links </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>mask to match </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the first link owned by the connection that matches the mask, else NULL if no links match </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a20">broker.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="gae7045dd02f2c9450ff8737e005628d81"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_link_is_receiver </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Test if a link is a receiver. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if and only if the link is a receiver </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a60">broker.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga7c48ef214568267839aea04ed337926b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool pn_link_is_sender </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Test if a link is a sender. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true if and only if the link is a sender </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a16">broker.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="gac282341dacff892eba8e224eca5c5c52"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">uint64_t pn_link_max_message_size </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p><b>Experimental</b> - Get the maximum message size for a link. </p>
+<p>A zero maximum message size means the size is unlimited.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the maximum message size for a link. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gaa44112980ebabbb5cbd002670073a751"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* pn_link_name </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the name of a link. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the name of the link </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga9b2a9cfa00dfdae4e01bf75483433925"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_link_next </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a>&#160;</td>
+          <td class="paramname"><em>state</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Retrieve the next link that matches the given state mask. </p>
+<p>When used with pn_link_head, the application can access all links on the connection that match the given state. See pn_link_head for description of match behavior.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the previous link obtained from pn_link_head or pn_link_next </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>mask to match </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the next session owned by the connection that matches the mask, else NULL if no sessions match </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a21">broker.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="gaef3f2e4bca87f9adc70e90dce7cd42b2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">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="gaabaca3f5d03970a122240eebc588add6"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void pn_link_open </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Open a link. </p>
+<p>Once this operation has completed, the PN_LOCAL_ACTIVE state flag will be set.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a55">broker.c</a>, <a class="el" href="receive_8c-example.html#a23">receive.c</a>, and <a class="el" href="send_8c-example.html#a41">send.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga57a00950e2eeef378fd6c0a3b3b5bfe9"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int pn_link_queued </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the number of queued deliveries for a link. </p>
+<p>Links may queue deliveries for a number of reasons, for example there may be insufficient credit to send them to the receiver (see <a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d" title="Get the credit balance for a link.">pn_link_credit</a>), or they simply may not have yet had a chance to be written to the wire. This operation will return the number of queued deliveries on a link.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the number of queued deliveries for the link </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga0bc65ff494e2860e6227f68c72468101"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> pn_link_rcv_settle_mode </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the local receiver settle mode for a link. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the local receiver settle mode </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga06c97ce7396973dca0d311567f25f95a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">ssize_t pn_link_recv </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>receiver</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">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>Receive message data for the current delivery on a link. </p>
+<p>Use <a class="el" href="group__delivery.html#ga17523835dbc8d1906bd71df69d09cc40" title="Get the amount of pending message data for a delivery.">pn_delivery_pending</a> on the current delivery to figure out how much buffer space is needed.</p>
+<p>Note that the link API can be used to stream large messages across the network, so just because there is no data to read does not imply the message is complete. To ensure the entirety of the message data has been read, either invoke <a class="el" href="group__link.html#ga06c97ce7396973dca0d311567f25f95a" title="Receive message data for the current delivery on a link.">pn_link_recv</a> until PN_EOS is returned, or verify that <a class="el" href="group__delivery.html#ga23c7b3c678228ccb21378e7c8ec9a72d" title="Check if a delivery only has partial message data.">pn_delivery_partial</a> is false, and <a class="el" href="group__delivery.html#ga17523835dbc8d1906bd71df69d09cc40" title="Get the amount of pending message data for a delivery.">pn_delivery_pending</a> is 0.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">receiver</td><td>a receiving link object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">bytes</td><td>a pointer to an empty buffer </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>the buffer capacity </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the number of bytes received, PN_EOS, or an error code </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a64">broker.c</a>, and <a class="el" href="receive_8c-example.html#a7">receive.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a class="anchor" id="ga97dc5133125c9b7e4afbb1b76e6efe7b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>* pn_link_remote_condition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *&#160;</td>
+          <td class="paramname"><em>link</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get the remote condition associated with a link endpoint. </p>
+<p>The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object.">pn_condition_t</a> object retrieved may be examined in order to determine whether the remote peer was indicating some sort of exceptional condition when the remote link endpoint was closed. The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object.">pn_condition_t</a> object returned may not be modified.</p>
+<p>The pointer returned by this operation is valid

<TRUNCATED>

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