<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>unbound: ctx_query Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.9 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="classes.html"><span>Data Structure Index</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div> <div class="contents"> <h1>ctx_query Struct Reference</h1><!-- doxytag: class="ctx_query" -->The queries outstanding for the libunbound resolver. <a href="#_details">More...</a> <p> <code>#include <context.h></code> <p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Data Fields</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4c9a7bd1ecc94632df04c6750b370b3a"></a><!-- doxytag: member="ctx_query::node" ref="4c9a7bd1ecc94632df04c6750b370b3a" args="" --> struct <a class="el" href="structrbnode__t.html">rbnode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#4c9a7bd1ecc94632df04c6750b370b3a">node</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">node in rbtree, must be first <a class="el" href="structentry.html" title="data structure to keep the canned queries in.">entry</a>, key is ptr to the querynum <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6cecd6b4964d0efc26cf65a78a332210"></a><!-- doxytag: member="ctx_query::querynum" ref="6cecd6b4964d0efc26cf65a78a332210" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#6cecd6b4964d0efc26cf65a78a332210">querynum</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">query id number, key for node <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dea075035cd5c2b4edc00d6ed30d0f01"></a><!-- doxytag: member="ctx_query::async" ref="dea075035cd5c2b4edc00d6ed30d0f01" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#dea075035cd5c2b4edc00d6ed30d0f01">async</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">was this an async query? <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8fb1c883407892e4a8b17a18af2a4720"></a><!-- doxytag: member="ctx_query::cancelled" ref="8fb1c883407892e4a8b17a18af2a4720" args="" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#8fb1c883407892e4a8b17a18af2a4720">cancelled</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">was this query cancelled (for bg <a class="el" href="structworker.html" title="Structure holding working information for unbound.">worker</a>) <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="09467943434f653d5bf119bc6a51e40c"></a><!-- doxytag: member="ctx_query::cb" ref="09467943434f653d5bf119bc6a51e40c" args="" --> <a class="el" href="unbound_8h.html#1f287e8f89ab449223a593bb5545d54a">ub_callback_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#09467943434f653d5bf119bc6a51e40c">cb</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">for async query, the callback function <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2dafdf0f783b30aa9a941e32f7d47a05"></a><!-- doxytag: member="ctx_query::cb_arg" ref="2dafdf0f783b30aa9a941e32f7d47a05" args="" --> void * </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#2dafdf0f783b30aa9a941e32f7d47a05">cb_arg</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">for async query, the callback user arg <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint8_t * </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#8ebf519d67d0154627c1bdc35706e287">msg</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">answer message, result from resolver lookup. <a href="#8ebf519d67d0154627c1bdc35706e287"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#725fae0809e298c0702cb5ea0d3db5b2">msg_len</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">resulting message length. <a href="#725fae0809e298c0702cb5ea0d3db5b2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eb5d0907592f4f399b1e02c5040f5e42"></a><!-- doxytag: member="ctx_query::msg_security" ref="eb5d0907592f4f399b1e02c5040f5e42" args="" --> enum <a class="el" href="packed__rrset_8h.html#ecbbb9607758922722abc9a49d1097bb">sec_status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#eb5d0907592f4f399b1e02c5040f5e42">msg_security</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">validation status on security <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4a18f47fb0b58ec8c9b364e260ad33f"></a><!-- doxytag: member="ctx_query::w" ref="e4a18f47fb0b58ec8c9b364e260ad33f" args="" --> struct <a class="el" href="structlibworker.html">libworker</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#e4a18f47fb0b58ec8c9b364e260ad33f">w</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">store <a class="el" href="structlibworker.html" title="The library-worker status structure Internal to the worker.">libworker</a> that is handling this query <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">struct <a class="el" href="structub__result.html">ub_result</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structctx__query.html#aa7bc7e638fc0a8c06e6555e27e72545">res</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">result structure, also contains original query, type, class. <a href="#aa7bc7e638fc0a8c06e6555e27e72545"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The queries outstanding for the libunbound resolver. <p> These are outstanding for async resolution. But also, outstanding for sync resolution by one of the threads that has joined the threadpool. <hr><h2>Field Documentation</h2> <a class="anchor" name="8ebf519d67d0154627c1bdc35706e287"></a><!-- doxytag: member="ctx_query::msg" ref="8ebf519d67d0154627c1bdc35706e287" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint8_t* <a class="el" href="structctx__query.html#8ebf519d67d0154627c1bdc35706e287">ctx_query::msg</a> </td> </tr> </table> </div> <div class="memdoc"> <p> answer message, result from resolver lookup. <p> <p>Referenced by <a class="el" href="libworker_8c_source.html#l00540">add_bg_result()</a>, <a class="el" href="context_8c_source.html#l00309">context_deserialize_answer()</a>, <a class="el" href="context_8c_source.html#l00101">context_query_delete()</a>, <a class="el" href="libworker_8c_source.html#l00439">libworker_fillup_fg()</a>, <a class="el" href="libunbound_8c_source.html#l00366">process_answer_detail()</a>, <a class="el" href="libunbound_8c_source.html#l00635">ub_cancel()</a>, <a class="el" href="libunbound_8c_source.html#l00528">ub_resolve()</a>, and <a class="el" href="libunbound_8c_source.html#l00572">ub_resolve_async()</a>.</p> </div> </div><p> <a class="anchor" name="725fae0809e298c0702cb5ea0d3db5b2"></a><!-- doxytag: member="ctx_query::msg_len" ref="725fae0809e298c0702cb5ea0d3db5b2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">size_t <a class="el" href="structctx__query.html#725fae0809e298c0702cb5ea0d3db5b2">ctx_query::msg_len</a> </td> </tr> </table> </div> <div class="memdoc"> <p> resulting message length. <p> <p>Referenced by <a class="el" href="libworker_8c_source.html#l00540">add_bg_result()</a>, <a class="el" href="context_8c_source.html#l00309">context_deserialize_answer()</a>, <a class="el" href="libworker_8c_source.html#l00439">libworker_fillup_fg()</a>, <a class="el" href="libunbound_8c_source.html#l00366">process_answer_detail()</a>, and <a class="el" href="libunbound_8c_source.html#l00528">ub_resolve()</a>.</p> </div> </div><p> <a class="anchor" name="aa7bc7e638fc0a8c06e6555e27e72545"></a><!-- doxytag: member="ctx_query::res" ref="aa7bc7e638fc0a8c06e6555e27e72545" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">struct <a class="el" href="structub__result.html">ub_result</a>* <a class="el" href="structctx__query.html#aa7bc7e638fc0a8c06e6555e27e72545">ctx_query::res</a><code> [read]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> result structure, also contains original query, type, class. <p> malloced ptr ready to hand to the client. <p>Referenced by <a class="el" href="context_8c_source.html#l00232">context_deserialize_new_query()</a>, <a class="el" href="context_8c_source.html#l00127">context_new()</a>, <a class="el" href="context_8c_source.html#l00101">context_query_delete()</a>, <a class="el" href="context_8c_source.html#l00209">context_serialize_new_query()</a>, <a class="el" href="libworker_8c_source.html#l00439">libworker_fillup_fg()</a>, <a class="el" href="libunbound_8c_source.html#l00366">process_answer_detail()</a>, <a class="el" href="libworker_8c_source.html#l00473">setup_qinfo_edns()</a>, and <a class="el" href="libunbound_8c_source.html#l00528">ub_resolve()</a>.</p> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li>libunbound/<a class="el" href="context_8h.html">context.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Tue Oct 13 06:46:34 2009 for unbound by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> </body> </html>