Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 550bbe86d83a7870fdddc73c68e5d2b2 > files > 225

libunbound-devel-1.3.4-1mdv2010.0.i586.rpm

<!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: testcode/perf.c File 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&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><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="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="dir_aae0f736e7b956edab2d753def1ee5b5.html">testcode</a>
  </div>
</div>
<div class="contents">
<h1>perf.c File Reference</h1>This program estimates DNS name server performance.  
<a href="#_details">More...</a>
<p>
<code>#include &quot;config.h&quot;</code><br>
<code>#include &lt;signal.h&gt;</code><br>
<code>#include &quot;<a class="el" href="log_8h.html">util/log.h</a>&quot;</code><br>
<code>#include &quot;util/locks.h&quot;</code><br>
<code>#include &quot;<a class="el" href="net__help_8h.html">util/net_help.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="msgencode_8h.html">util/data/msgencode.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="msgreply_8h.html">util/data/msgreply.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="msgparse_8h.html">util/data/msgparse.h</a>&quot;</code><br>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structperfinfo.html">perfinfo</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Global info for perf.  <a href="structperfinfo.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structperfio.html">perfio</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">I/O port for perf.  <a href="structperfio.html#_details">More...</a><br></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="21a9a0f6ca3482f79720c419d2f61e9a"></a><!-- doxytag: member="perf.c::START_IO_INTERVAL" ref="21a9a0f6ca3482f79720c419d2f61e9a" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#21a9a0f6ca3482f79720c419d2f61e9a">START_IO_INTERVAL</a>&nbsp;&nbsp;&nbsp;10</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of msec between starting io ports <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a93c04b7063725819bb0bd0a97d52e5e"></a><!-- doxytag: member="perf.c::IO_TIMEOUT" ref="a93c04b7063725819bb0bd0a97d52e5e" args="" -->
#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#a93c04b7063725819bb0bd0a97d52e5e">IO_TIMEOUT</a>&nbsp;&nbsp;&nbsp;10</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">number of msec timeout on io ports <br></td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f488ace023cdf64d5352526911c4eaa8"></a><!-- doxytag: member="perf.c::usage" ref="f488ace023cdf64d5352526911c4eaa8" args="(char *nm)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#f488ace023cdf64d5352526911c4eaa8">usage</a> (char *nm)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">usage information for perf <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="be3160ff0ea954141623857868c51a25"></a><!-- doxytag: member="perf.c::perf_sigh" ref="be3160ff0ea954141623857868c51a25" args="(int sig)" -->
static RETSIGTYPE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#be3160ff0ea954141623857868c51a25">perf_sigh</a> (int sig)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">signal handler for user quit <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d830c7744338a35c4437e434022ada3e"></a><!-- doxytag: member="perf.c::perf_tv_smaller" ref="d830c7744338a35c4437e434022ada3e" args="(struct timeval *t1, struct timeval *t2)" -->
static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#d830c7744338a35c4437e434022ada3e">perf_tv_smaller</a> (struct timeval *t1, struct timeval *t2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">timeval compare, t1 &lt; t2 <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="866362596e1f057c8758dbf86aebd66d"></a><!-- doxytag: member="perf.c::perf_tv_add" ref="866362596e1f057c8758dbf86aebd66d" args="(struct timeval *t1, struct timeval *t2)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#866362596e1f057c8758dbf86aebd66d">perf_tv_add</a> (struct timeval *t1, struct timeval *t2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">timeval add, t1 += t2 <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6c2ec4a5252e9b82bd183867fae7a1a3"></a><!-- doxytag: member="perf.c::perf_tv_subtract" ref="6c2ec4a5252e9b82bd183867fae7a1a3" args="(struct timeval *t1, struct timeval *t2)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#6c2ec4a5252e9b82bd183867fae7a1a3">perf_tv_subtract</a> (struct timeval *t1, struct timeval *t2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">timeval subtract, t1 -= t2 <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="243631cf18d5c04a6aecd42f91a5430a"></a><!-- doxytag: member="perf.c::perfsetup" ref="243631cf18d5c04a6aecd42f91a5430a" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#243631cf18d5c04a6aecd42f91a5430a">perfsetup</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">setup perf test environment <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="70e6cda9134387e5131b6e10da7b923f"></a><!-- doxytag: member="perf.c::perffree" ref="70e6cda9134387e5131b6e10da7b923f" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#70e6cda9134387e5131b6e10da7b923f">perffree</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cleanup perf test environment <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4d12d0d2a88fc17f9fbf9c65c1ae1285"></a><!-- doxytag: member="perf.c::perfsend" ref="4d12d0d2a88fc17f9fbf9c65c1ae1285" args="(struct perfinfo *info, size_t n, struct timeval *now)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#4d12d0d2a88fc17f9fbf9c65c1ae1285">perfsend</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, size_t n, struct timeval *now)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">send new query for io <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c63ec884b6a209c36ed99b69fcb9e09e"></a><!-- doxytag: member="perf.c::perfreply" ref="c63ec884b6a209c36ed99b69fcb9e09e" args="(struct perfinfo *info, size_t n, struct timeval *now)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#c63ec884b6a209c36ed99b69fcb9e09e">perfreply</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, size_t n, struct timeval *now)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">got reply for io <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8184440b6628bd64f0f6d2792523852a"></a><!-- doxytag: member="perf.c::perftimeout" ref="8184440b6628bd64f0f6d2792523852a" args="(struct perfinfo *info, size_t n, struct timeval *now)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#8184440b6628bd64f0f6d2792523852a">perftimeout</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, size_t n, struct timeval *now)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">got timeout for io <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5b5655cc1b4de34f54c6fd1cd5c62c37"></a><!-- doxytag: member="perf.c::stat_printout" ref="5b5655cc1b4de34f54c6fd1cd5c62c37" args="(struct perfinfo *info, struct timeval *now, struct timeval *elapsed)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#5b5655cc1b4de34f54c6fd1cd5c62c37">stat_printout</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, struct timeval *now, struct timeval *elapsed)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">print nice stats about qps <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe6d1c7c2fdb1d26827fec17f75f8109"></a><!-- doxytag: member="perf.c::perfselect" ref="fe6d1c7c2fdb1d26827fec17f75f8109" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#fe6d1c7c2fdb1d26827fec17f75f8109">perfselect</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">wait for new events for performance test <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="627eaae3bc2725e23b89a83549cc305e"></a><!-- doxytag: member="perf.c::perfendstats" ref="627eaae3bc2725e23b89a83549cc305e" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#627eaae3bc2725e23b89a83549cc305e">perfendstats</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">show end stats <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a0013ee5accf8c0710414ef43149f58"></a><!-- doxytag: member="perf.c::perfmain" ref="9a0013ee5accf8c0710414ef43149f58" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#9a0013ee5accf8c0710414ef43149f58">perfmain</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">perform the performance test <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2d9aae6117f341bdf8b2f80211dc11c0"></a><!-- doxytag: member="perf.c::qlist_parse_line" ref="2d9aae6117f341bdf8b2f80211dc11c0" args="(ldns_buffer *buf, char *p)" -->
static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#2d9aae6117f341bdf8b2f80211dc11c0">qlist_parse_line</a> (ldns_buffer *buf, char *p)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">parse a query line to a packet into buffer <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8456b07a208b86ae3942be8f7b7db101"></a><!-- doxytag: member="perf.c::qlist_grow_capacity" ref="8456b07a208b86ae3942be8f7b7db101" args="(struct perfinfo *info)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#8456b07a208b86ae3942be8f7b7db101">qlist_grow_capacity</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">grow query list capacity <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ef3ba0b04c122f39d7107b0f78788e3"></a><!-- doxytag: member="perf.c::qlist_add_line" ref="0ef3ba0b04c122f39d7107b0f78788e3" args="(struct perfinfo *info, char *line, int no)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#0ef3ba0b04c122f39d7107b0f78788e3">qlist_add_line</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, char *line, int no)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">setup query list in info <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9644ffee836101566821dbf3f5e70df8"></a><!-- doxytag: member="perf.c::qlist_read_file" ref="9644ffee836101566821dbf3f5e70df8" args="(struct perfinfo *info, char *fname)" -->
static void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#9644ffee836101566821dbf3f5e70df8">qlist_read_file</a> (struct <a class="el" href="structperfinfo.html">perfinfo</a> *info, char *fname)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">setup query list in info <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0ddf1224851353fc92bfbff6f499fa97"></a><!-- doxytag: member="perf.c::main" ref="0ddf1224851353fc92bfbff6f499fa97" args="(int argc, char *argv[])" -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">main program for perf <br></td></tr>
<tr><td colspan="2"><br><h2>Variables</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e5ff4e8d2cd6571384b4e909358e75ac"></a><!-- doxytag: member="perf.c::sig_info" ref="e5ff4e8d2cd6571384b4e909358e75ac" args="" -->
static struct <a class="el" href="structperfinfo.html">perfinfo</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#e5ff4e8d2cd6571384b4e909358e75ac">sig_info</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">signal handler global info <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#d5e1c16213bbee2d5e8cc363309f418c">optind</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">getopt global, in case header files fail to declare it.  <a href="#d5e1c16213bbee2d5e8cc363309f418c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="perf_8c.html#db50a0eab9fed92fc3bfc7dfa4f2c410">optarg</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">getopt global, in case header files fail to declare it.  <a href="#db50a0eab9fed92fc3bfc7dfa4f2c410"></a><br></td></tr>
</table>
<hr><h2>Detailed Description</h2>
This program estimates DNS name server performance. 
<p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="d5e1c16213bbee2d5e8cc363309f418c"></a><!-- doxytag: member="perf.c::optind" ref="d5e1c16213bbee2d5e8cc363309f418c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="streamtcp_8c.html#d5e1c16213bbee2d5e8cc363309f418c">optind</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
getopt global, in case header files fail to declare it. 
<p>

</div>
</div><p>
<a class="anchor" name="db50a0eab9fed92fc3bfc7dfa4f2c410"></a><!-- doxytag: member="perf.c::optarg" ref="db50a0eab9fed92fc3bfc7dfa4f2c410" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* <a class="el" href="streamtcp_8c.html#db50a0eab9fed92fc3bfc7dfa4f2c410">optarg</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
getopt global, in case header files fail to declare it. 
<p>

</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Oct 13 06:46:31 2009 for unbound by&nbsp;
<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>