<!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"/> <title>CLD: include/cldc.h File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">CLD  <span id="projectnumber">0.1git</span> </div> </td> </tr> </tbody> </table> </div> <!-- Generated by Doxygen 1.7.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">include/cldc.h File Reference</div> </div> </div> <div class="contents"> <div class="textblock"><code>#include <sys/types.h></code><br/> <code>#include <stdbool.h></code><br/> <code>#include <glib.h></code><br/> <code>#include <cld_msg_rpc.h></code><br/> <code>#include <<a class="el" href="cld__common_8h.html">cld_common.h</a>></code><br/> <code>#include <<a class="el" href="hail__log_8h.html">hail_log.h</a>></code><br/> </div><table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Data Structures</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__call__opts.html">cldc_call_opts</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">per-operation application options <a href="structcldc__call__opts.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__node__metadata.html">cldc_node_metadata</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__pkt__info.html">cldc_pkt_info</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__msg.html">cldc_msg</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">an outgoing message, from client to server <a href="structcldc__msg.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__fh.html">cldc_fh</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">an open file handle associated with a session <a href="structcldc__fh.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__ops.html">cldc_ops</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">application-supplied facilities <a href="structcldc__ops.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__session.html">cldc_session</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">a single CLD client session <a href="structcldc__session.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__host.html">cldc_host</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Information for a single CLD server host. <a href="structcldc__host.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcldc__udp.html">cldc_udp</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A UDP implementation of the CLD client protocol. <a href="structcldc__udp.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a></td></tr> <tr><td colspan="2"><h2><a name="func-members"></a> Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a844b54cd995e8ec1ca2c115533031c0a">cldc_receive_pkt</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess, const void *net_addr, size_t net_addrlen, const void *buf, size_t buflen)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Packet received from remote host. <a href="#a844b54cd995e8ec1ca2c115533031c0a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a51418ea80782039c3cfab49ad10731b8">cldc_init</a> (void)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a4aad181a27e3ad0d1109d1832f6cac7c">cldc_new_sess</a> (const struct <a class="el" href="structcldc__ops.html">cldc_ops</a> *ops, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, const void *addr, size_t addr_len, const char *user, const char *secret_key, void *private, struct <a class="el" href="structcldc__session.html">cldc_session</a> **sess_out)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a0d35ecb04c1428e70590369b39e9f333">cldc_kill_sess</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#ae3275781febb67802e9c57708f30c6e6">cldc_end_sess</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a21ca3987f7175a1afdaa0b6ccf8fbcf7">cldc_nop</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#ab0f095b47ebbc66be13b781dd6d9e465">cldc_del</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, const char *pathname)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a36e09c2fb3a1369a9f762c6fa712d950">cldc_open</a> (struct <a class="el" href="structcldc__session.html">cldc_session</a> *sess, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, const char *pathname, uint32_t open_mode, uint32_t events, struct <a class="el" href="structcldc__fh.html">cldc_fh</a> **fh_out)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a60de40f94589ecd2b5f3b8301db6e82c">cldc_close</a> (struct <a class="el" href="structcldc__fh.html">cldc_fh</a> *fh, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a0e3572360fca307c5a8ac7c5585dd068">cldc_unlock</a> (struct <a class="el" href="structcldc__fh.html">cldc_fh</a> *fh, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#afb8c872ae4a12cbeff3155b9626a4ec2">cldc_lock</a> (struct <a class="el" href="structcldc__fh.html">cldc_fh</a> *fh, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, uint32_t lock_flags, bool wait_for_lock)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a9efdf707f4f83da4d63da342f0ae7e10">cldc_put</a> (struct <a class="el" href="structcldc__fh.html">cldc_fh</a> *fh, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, const void *data, size_t data_len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a648fec15c2954e1b0303b1dc2b45c402">cldc_get</a> (struct <a class="el" href="structcldc__fh.html">cldc_fh</a> *fh, const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, bool metadata_only)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#af25e5f052cdc16afd38acbc4a47b6c01">cldc_dirent_count</a> (const void *data, size_t data_len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#ad44216c6122e9a2b8522dc3b84596050">cldc_dirent_first</a> (struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> *dc)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#acd9e51dfe668f0eb75d080bf7ca9b50d">cldc_dirent_next</a> (struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> *dc)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a769fa3b5c7704ea3eb703bdda327f4ef">cldc_dirent_cur_init</a> (struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> *dc, const void *buf, size_t buflen)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#aa99222df8f893786b01cf4d4d40d0121">cldc_dirent_cur_fini</a> (struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> *dc)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a3d8f3c26935deda7894656dd299cc1c8">cldc_dirent_name</a> (struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> *dc)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#aab4ad42ab1ab3385dd7024feb18ca508">cldc_copts_get_data</a> (const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, char **data, size_t *data_len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#ad9cfc6b0c1f5adbbb29401281b19f46b">cldc_copts_get_metadata</a> (const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> *copts, struct <a class="el" href="structcldc__node__metadata.html">cldc_node_metadata</a> *md)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a3dbda08dfffb25961e1f00f149f05694">cldc_udp_free</a> (struct <a class="el" href="structcldc__udp.html">cldc_udp</a> *udp)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a8bc376399d1462054c8c1b1b081b8db0">cldc_udp_new</a> (const char *hostname, int port, struct <a class="el" href="structcldc__udp.html">cldc_udp</a> **udp_out)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a53c972fafdbf919d9dc8b5da839e03a2">cldc_udp_receive_pkt</a> (struct <a class="el" href="structcldc__udp.html">cldc_udp</a> *udp)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#ac91301c1b172d54b9cb1c6babe69548b">cldc_udp_pkt_send</a> (void *private, const void *addr, size_t addrlen, const void *buf, size_t buflen)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#affee67dcc5081479d0dacb33801966ae">cldc_getaddr</a> (GList **host_list, const char *thishost, struct <a class="el" href="structhail__log.html">hail_log</a> *log)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="cldc_8h.html#a48d1428512bd6a5c117353ad4f6e18bc">cldc_saveaddr</a> (struct <a class="el" href="structcldc__host.html">cldc_host</a> *hp, unsigned int priority, unsigned int weight, unsigned int port, unsigned int nlen, const char *name, struct <a class="el" href="structhail__log.html">hail_log</a> *log)</td></tr> </table> <hr/><h2>Function Documentation</h2> <a class="anchor" id="a60de40f94589ecd2b5f3b8301db6e82c"></a><!-- doxytag: member="cldc.h::cldc_close" ref="a60de40f94589ecd2b5f3b8301db6e82c" args="(struct cldc_fh *fh, const struct cldc_call_opts *copts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_close </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> * </td> <td class="paramname"><em>fh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aab4ad42ab1ab3385dd7024feb18ca508"></a><!-- doxytag: member="cldc.h::cldc_copts_get_data" ref="aab4ad42ab1ab3385dd7024feb18ca508" args="(const struct cldc_call_opts *copts, char **data, size_t *data_len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_copts_get_data </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char ** </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t * </td> <td class="paramname"><em>data_len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ad9cfc6b0c1f5adbbb29401281b19f46b"></a><!-- doxytag: member="cldc.h::cldc_copts_get_metadata" ref="ad9cfc6b0c1f5adbbb29401281b19f46b" args="(const struct cldc_call_opts *copts, struct cldc_node_metadata *md)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_copts_get_metadata </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structcldc__node__metadata.html">cldc_node_metadata</a> * </td> <td class="paramname"><em>md</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ab0f095b47ebbc66be13b781dd6d9e465"></a><!-- doxytag: member="cldc.h::cldc_del" ref="ab0f095b47ebbc66be13b781dd6d9e465" args="(struct cldc_session *sess, const struct cldc_call_opts *copts, const char *pathname)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_del </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>pathname</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="af25e5f052cdc16afd38acbc4a47b6c01"></a><!-- doxytag: member="cldc.h::cldc_dirent_count" ref="af25e5f052cdc16afd38acbc4a47b6c01" args="(const void *data, size_t data_len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_dirent_count </td> <td>(</td> <td class="paramtype">const void * </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>data_len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aa99222df8f893786b01cf4d4d40d0121"></a><!-- doxytag: member="cldc.h::cldc_dirent_cur_fini" ref="aa99222df8f893786b01cf4d4d40d0121" args="(struct cld_dirent_cur *dc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_dirent_cur_fini </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> * </td> <td class="paramname"><em>dc</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a769fa3b5c7704ea3eb703bdda327f4ef"></a><!-- doxytag: member="cldc.h::cldc_dirent_cur_init" ref="a769fa3b5c7704ea3eb703bdda327f4ef" args="(struct cld_dirent_cur *dc, const void *buf, size_t buflen)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_dirent_cur_init </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> * </td> <td class="paramname"><em>dc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>buflen</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ad44216c6122e9a2b8522dc3b84596050"></a><!-- doxytag: member="cldc.h::cldc_dirent_first" ref="ad44216c6122e9a2b8522dc3b84596050" args="(struct cld_dirent_cur *dc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_dirent_first </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> * </td> <td class="paramname"><em>dc</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a3d8f3c26935deda7894656dd299cc1c8"></a><!-- doxytag: member="cldc.h::cldc_dirent_name" ref="a3d8f3c26935deda7894656dd299cc1c8" args="(struct cld_dirent_cur *dc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char* cldc_dirent_name </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> * </td> <td class="paramname"><em>dc</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="acd9e51dfe668f0eb75d080bf7ca9b50d"></a><!-- doxytag: member="cldc.h::cldc_dirent_next" ref="acd9e51dfe668f0eb75d080bf7ca9b50d" args="(struct cld_dirent_cur *dc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_dirent_next </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcld__dirent__cur.html">cld_dirent_cur</a> * </td> <td class="paramname"><em>dc</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ae3275781febb67802e9c57708f30c6e6"></a><!-- doxytag: member="cldc.h::cldc_end_sess" ref="ae3275781febb67802e9c57708f30c6e6" args="(struct cldc_session *sess, const struct cldc_call_opts *copts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_end_sess </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a648fec15c2954e1b0303b1dc2b45c402"></a><!-- doxytag: member="cldc.h::cldc_get" ref="a648fec15c2954e1b0303b1dc2b45c402" args="(struct cldc_fh *fh, const struct cldc_call_opts *copts, bool metadata_only)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_get </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> * </td> <td class="paramname"><em>fh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>metadata_only</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="affee67dcc5081479d0dacb33801966ae"></a><!-- doxytag: member="cldc.h::cldc_getaddr" ref="affee67dcc5081479d0dacb33801966ae" args="(GList **host_list, const char *thishost, struct hail_log *log)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_getaddr </td> <td>(</td> <td class="paramtype">GList ** </td> <td class="paramname"><em>host_list</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>thishost</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structhail__log.html">hail_log</a> * </td> <td class="paramname"><em>log</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a51418ea80782039c3cfab49ad10731b8"></a><!-- doxytag: member="cldc.h::cldc_init" ref="a51418ea80782039c3cfab49ad10731b8" args="(void)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_init </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a0d35ecb04c1428e70590369b39e9f333"></a><!-- doxytag: member="cldc.h::cldc_kill_sess" ref="a0d35ecb04c1428e70590369b39e9f333" args="(struct cldc_session *sess)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_kill_sess </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="afb8c872ae4a12cbeff3155b9626a4ec2"></a><!-- doxytag: member="cldc.h::cldc_lock" ref="afb8c872ae4a12cbeff3155b9626a4ec2" args="(struct cldc_fh *fh, const struct cldc_call_opts *copts, uint32_t lock_flags, bool wait_for_lock)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_lock </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> * </td> <td class="paramname"><em>fh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">uint32_t </td> <td class="paramname"><em>lock_flags</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>wait_for_lock</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a4aad181a27e3ad0d1109d1832f6cac7c"></a><!-- doxytag: member="cldc.h::cldc_new_sess" ref="a4aad181a27e3ad0d1109d1832f6cac7c" args="(const struct cldc_ops *ops, const struct cldc_call_opts *copts, const void *addr, size_t addr_len, const char *user, const char *secret_key, void *private, struct cldc_session **sess_out)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_new_sess </td> <td>(</td> <td class="paramtype">const struct <a class="el" href="structcldc__ops.html">cldc_ops</a> * </td> <td class="paramname"><em>ops</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>addr_len</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>user</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>secret_key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"><em>private</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> ** </td> <td class="paramname"><em>sess_out</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a21ca3987f7175a1afdaa0b6ccf8fbcf7"></a><!-- doxytag: member="cldc.h::cldc_nop" ref="a21ca3987f7175a1afdaa0b6ccf8fbcf7" args="(struct cldc_session *sess, const struct cldc_call_opts *copts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_nop </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a36e09c2fb3a1369a9f762c6fa712d950"></a><!-- doxytag: member="cldc.h::cldc_open" ref="a36e09c2fb3a1369a9f762c6fa712d950" args="(struct cldc_session *sess, const struct cldc_call_opts *copts, const char *pathname, uint32_t open_mode, uint32_t events, struct cldc_fh **fh_out)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_open </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>pathname</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">uint32_t </td> <td class="paramname"><em>open_mode</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">uint32_t </td> <td class="paramname"><em>events</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> ** </td> <td class="paramname"><em>fh_out</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a9efdf707f4f83da4d63da342f0ae7e10"></a><!-- doxytag: member="cldc.h::cldc_put" ref="a9efdf707f4f83da4d63da342f0ae7e10" args="(struct cldc_fh *fh, const struct cldc_call_opts *copts, const void *data, size_t data_len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_put </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> * </td> <td class="paramname"><em>fh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>data_len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a844b54cd995e8ec1ca2c115533031c0a"></a><!-- doxytag: member="cldc.h::cldc_receive_pkt" ref="a844b54cd995e8ec1ca2c115533031c0a" args="(struct cldc_session *sess, const void *net_addr, size_t net_addrlen, const void *buf, size_t buflen)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_receive_pkt </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__session.html">cldc_session</a> * </td> <td class="paramname"><em>sess</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>net_addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>net_addrlen</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>buflen</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Packet received from remote host. </p> <p>Called by app when a packet is received from a remote host over the network.</p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">sess</td><td>Session associated with received packet </td></tr> <tr><td class="paramname">net_addr</td><td>Opaque network address </td></tr> <tr><td class="paramname">net_addrlen</td><td>Size of opaque network address </td></tr> <tr><td class="paramname">buf</td><td>Pointer to data buffer containing packet </td></tr> <tr><td class="paramname">buflen</td><td>Length of received packet </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>Zero for success, non-zero on error </dd></dl> </div> </div> <a class="anchor" id="a48d1428512bd6a5c117353ad4f6e18bc"></a><!-- doxytag: member="cldc.h::cldc_saveaddr" ref="a48d1428512bd6a5c117353ad4f6e18bc" args="(struct cldc_host *hp, unsigned int priority, unsigned int weight, unsigned int port, unsigned int nlen, const char *name, struct hail_log *log)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_saveaddr </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__host.html">cldc_host</a> * </td> <td class="paramname"><em>hp</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>priority</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>weight</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>port</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"><em>nlen</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structhail__log.html">hail_log</a> * </td> <td class="paramname"><em>log</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a3dbda08dfffb25961e1f00f149f05694"></a><!-- doxytag: member="cldc.h::cldc_udp_free" ref="a3dbda08dfffb25961e1f00f149f05694" args="(struct cldc_udp *udp)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void cldc_udp_free </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__udp.html">cldc_udp</a> * </td> <td class="paramname"><em>udp</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a8bc376399d1462054c8c1b1b081b8db0"></a><!-- doxytag: member="cldc.h::cldc_udp_new" ref="a8bc376399d1462054c8c1b1b081b8db0" args="(const char *hostname, int port, struct cldc_udp **udp_out)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_udp_new </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>hostname</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>port</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structcldc__udp.html">cldc_udp</a> ** </td> <td class="paramname"><em>udp_out</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="ac91301c1b172d54b9cb1c6babe69548b"></a><!-- doxytag: member="cldc.h::cldc_udp_pkt_send" ref="ac91301c1b172d54b9cb1c6babe69548b" args="(void *private, const void *addr, size_t addrlen, const void *buf, size_t buflen)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_udp_pkt_send </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname"><em>private</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>addr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>addrlen</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const void * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>buflen</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a53c972fafdbf919d9dc8b5da839e03a2"></a><!-- doxytag: member="cldc.h::cldc_udp_receive_pkt" ref="a53c972fafdbf919d9dc8b5da839e03a2" args="(struct cldc_udp *udp)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_udp_receive_pkt </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__udp.html">cldc_udp</a> * </td> <td class="paramname"><em>udp</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a0e3572360fca307c5a8ac7c5585dd068"></a><!-- doxytag: member="cldc.h::cldc_unlock" ref="a0e3572360fca307c5a8ac7c5585dd068" args="(struct cldc_fh *fh, const struct cldc_call_opts *copts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int cldc_unlock </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structcldc__fh.html">cldc_fh</a> * </td> <td class="paramname"><em>fh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const struct <a class="el" href="structcldc__call__opts.html">cldc_call_opts</a> * </td> <td class="paramname"><em>copts</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> </div> </div> </div> <hr class="footer"/><address class="footer"><small> Generated on Sat Jan 28 2012 05:53:01 for CLD by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.7.5 </small></address> </body> </html>