1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>InspIRCd: DNS class Reference</title>
4 <link href="inspircd.css" rel="stylesheet" type="text/css">
6 <!-- Generated by Doxygen 1.3.3 -->
7 <div class="qindex"><a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Compound List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Compound Members</a> | <a class="qindex" href="globals.html">File Members</a></div>
8 <h1>DNS Class Reference</h1>The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
9 <a href="#_details">More...</a>
11 <code>#include <<a class="el" href="dns_8h-source.html">dns.h</a>></code>
13 <a href="classDNS-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
15 <tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
16 <tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a0">DNS</a> ()</td></tr>
18 <tr><td class="mdescLeft"> </td><td class="mdescRight">The default constructor uses dns addresses read from /etc/resolv.conf. </em> <a href="#a0"></a><em><br><br></td></tr>
19 <tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a1">DNS</a> (std::string dnsserver)</td></tr>
21 <tr><td class="mdescLeft"> </td><td class="mdescRight">This constructor accepts a dns server address. </em> <a href="#a1"></a><em><br><br></td></tr>
22 <tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a2">~DNS</a> ()</td></tr>
24 <tr><td class="mdescLeft"> </td><td class="mdescRight">The destructor frees all used structures. </em> <a href="#a2"></a><em><br><br></td></tr>
25 <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a3">ReverseLookup</a> (std::string ip)</td></tr>
27 <tr><td class="mdescLeft"> </td><td class="mdescRight">This method will start the reverse lookup of an ip given in dotted decimal format, e.g. </em> <a href="#a3"></a><em><br><br></td></tr>
28 <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a4">ForwardLookup</a> (std::string host)</td></tr>
30 <tr><td class="mdescLeft"> </td><td class="mdescRight">This method will start the forward lookup of a hostname, e.g. </em> <a href="#a4"></a><em><br><br></td></tr>
31 <tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a5">HasResult</a> ()</td></tr>
33 <tr><td class="mdescLeft"> </td><td class="mdescRight">This method will return true when the lookup is completed. </em> <a href="#a5"></a><em><br><br></td></tr>
34 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a6">GetResult</a> ()</td></tr>
36 <tr><td class="mdescLeft"> </td><td class="mdescRight">This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#a3">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#a4">DNS::ForwardLookup</a>. </em> <a href="#a6"></a><em><br><br></td></tr>
37 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a7">GetFD</a> ()</td></tr>
39 <tr><td class="mdescLeft"> </td><td class="mdescRight">This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g. </em> <a href="#a7"></a><em><br><br></td></tr>
40 <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#a8">SetNS</a> (std::string dnsserver)</td></tr>
42 <tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
43 <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d0">dns_init</a> ()</td></tr>
45 <tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d1">dns_init_2</a> (const char *dnsserver)</td></tr>
47 <tr><td class="memItemLeft" nowrap align=right valign=top>in_addr * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d2">dns_aton4</a> (const char *const ipstring)</td></tr>
49 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d3">dns_ntoa4</a> (const in_addr *const ip)</td></tr>
51 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d4">dns_getip4</a> (const char *const name)</td></tr>
53 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d5">dns_getip4list</a> (const char *const name)</td></tr>
55 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d6">dns_getname4</a> (const in_addr *const ip)</td></tr>
57 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d7">dns_getresult</a> (const int <a class="el" href="classDNS.html#r4">fd</a>)</td></tr>
59 <tr><td class="memItemLeft" nowrap align=right valign=top>in_addr * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d8">dns_aton4_s</a> (const char *const ipstring, in_addr *const ip)</td></tr>
61 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d9">dns_ntoa4_s</a> (const in_addr *const ip, char *const <a class="el" href="classDNS.html#r0">result</a>)</td></tr>
63 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d10">dns_getresult_s</a> (const int <a class="el" href="classDNS.html#r4">fd</a>, char *const <a class="el" href="classDNS.html#r0">result</a>)</td></tr>
65 <tr><td class="memItemLeft" nowrap align=right valign=top>in_addr * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d11">dns_aton4_r</a> (const char *const ipstring)</td></tr>
67 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d12">dns_ntoa4_r</a> (const in_addr *const ip)</td></tr>
69 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#d13">dns_getresult_r</a> (const int <a class="el" href="classDNS.html#r4">fd</a>)</td></tr>
71 <tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
72 <tr><td class="memItemLeft" nowrap align=right valign=top>char * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r0">result</a></td></tr>
74 <tr><td class="memItemLeft" nowrap align=right valign=top>in_addr * </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r1">binip</a></td></tr>
76 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r2">t</a></td></tr>
78 <tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r3">i</a></td></tr>
80 <tr><td class="memItemLeft" nowrap align=right valign=top>unsigned int </td><td class="memItemRight" valign=bottom><a class="el" href="classDNS.html#r4">fd</a></td></tr>
83 <hr><a name="_details"></a><h2>Detailed Description</h2>
84 The DNS class allows fast nonblocking resolution of hostnames and ip addresses.
86 It is based heavily upon firedns by Ian Gulliver.
90 Definition at line <a class="el" href="dns_8h-source.html#l00035">35</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>.<hr><h2>Constructor & Destructor Documentation</h2>
91 <a name="a0" doxytag="DNS::DNS"></a><p>
92 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
95 <table cellpadding="0" cellspacing="0" border="0">
97 <td class="md" nowrap valign="top"> DNS::DNS </td>
98 <td class="md" valign="top">( </td>
99 <td class="mdname1" valign="top" nowrap> </td>
100 <td class="md" valign="top"> ) </td>
101 <td class="md" nowrap></td>
108 <table cellspacing=5 cellpadding=0 border=0>
116 The default constructor uses dns addresses read from /etc/resolv.conf.
118 Please note that it will re-read /etc/resolv.conf for each copy of the class you instantiate, causing disk access and slow lookups if you create a lot of them. Consider passing the constructor a server address as a parameter instead. </td>
121 <a name="a1" doxytag="DNS::DNS"></a><p>
122 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
125 <table cellpadding="0" cellspacing="0" border="0">
127 <td class="md" nowrap valign="top"> DNS::DNS </td>
128 <td class="md" valign="top">( </td>
129 <td class="md" nowrap valign="top">std::string </td>
130 <td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
131 <td class="md" valign="top"> ) </td>
132 <td class="md" nowrap></td>
139 <table cellspacing=5 cellpadding=0 border=0>
147 This constructor accepts a dns server address.
149 The address must be in dotted decimal form, e.g. 1.2.3.4. </td>
152 <a name="a2" doxytag="DNS::~DNS"></a><p>
153 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
156 <table cellpadding="0" cellspacing="0" border="0">
158 <td class="md" nowrap valign="top"> DNS::~<a class="el" href="classDNS.html">DNS</a> </td>
159 <td class="md" valign="top">( </td>
160 <td class="mdname1" valign="top" nowrap> </td>
161 <td class="md" valign="top"> ) </td>
162 <td class="md" nowrap></td>
169 <table cellspacing=5 cellpadding=0 border=0>
177 The destructor frees all used structures.
182 <hr><h2>Member Function Documentation</h2>
183 <a name="d2" doxytag="DNS::dns_aton4"></a><p>
184 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
187 <table cellpadding="0" cellspacing="0" border="0">
189 <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4 </td>
190 <td class="md" valign="top">( </td>
191 <td class="md" nowrap valign="top">const char *const </td>
192 <td class="mdname1" valign="top" nowrap> <em>ipstring</em> </td>
193 <td class="md" valign="top"> ) </td>
194 <td class="md" nowrap><code> [private]</code></td>
201 <table cellspacing=5 cellpadding=0 border=0>
212 <a name="d11" doxytag="DNS::dns_aton4_r"></a><p>
213 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
216 <table cellpadding="0" cellspacing="0" border="0">
218 <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4_r </td>
219 <td class="md" valign="top">( </td>
220 <td class="md" nowrap valign="top">const char *const </td>
221 <td class="mdname1" valign="top" nowrap> <em>ipstring</em> </td>
222 <td class="md" valign="top"> ) </td>
223 <td class="md" nowrap><code> [private]</code></td>
230 <table cellspacing=5 cellpadding=0 border=0>
241 <a name="d8" doxytag="DNS::dns_aton4_s"></a><p>
242 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
245 <table cellpadding="0" cellspacing="0" border="0">
247 <td class="md" nowrap valign="top"> in_addr* DNS::dns_aton4_s </td>
248 <td class="md" valign="top">( </td>
249 <td class="md" nowrap valign="top">const char *const </td>
250 <td class="mdname" nowrap> <em>ipstring</em>, </td>
255 <td class="md" nowrap>in_addr *const </td>
256 <td class="mdname" nowrap> <em>ip</em></td>
260 <td class="md">) </td>
261 <td class="md" colspan="2"><code> [private]</code></td>
268 <table cellspacing=5 cellpadding=0 border=0>
279 <a name="d4" doxytag="DNS::dns_getip4"></a><p>
280 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
283 <table cellpadding="0" cellspacing="0" border="0">
285 <td class="md" nowrap valign="top"> int DNS::dns_getip4 </td>
286 <td class="md" valign="top">( </td>
287 <td class="md" nowrap valign="top">const char *const </td>
288 <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
289 <td class="md" valign="top"> ) </td>
290 <td class="md" nowrap><code> [private]</code></td>
297 <table cellspacing=5 cellpadding=0 border=0>
308 <a name="d5" doxytag="DNS::dns_getip4list"></a><p>
309 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
312 <table cellpadding="0" cellspacing="0" border="0">
314 <td class="md" nowrap valign="top"> int DNS::dns_getip4list </td>
315 <td class="md" valign="top">( </td>
316 <td class="md" nowrap valign="top">const char *const </td>
317 <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
318 <td class="md" valign="top"> ) </td>
319 <td class="md" nowrap><code> [private]</code></td>
326 <table cellspacing=5 cellpadding=0 border=0>
337 <a name="d6" doxytag="DNS::dns_getname4"></a><p>
338 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
341 <table cellpadding="0" cellspacing="0" border="0">
343 <td class="md" nowrap valign="top"> int DNS::dns_getname4 </td>
344 <td class="md" valign="top">( </td>
345 <td class="md" nowrap valign="top">const in_addr *const </td>
346 <td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
347 <td class="md" valign="top"> ) </td>
348 <td class="md" nowrap><code> [private]</code></td>
355 <table cellspacing=5 cellpadding=0 border=0>
366 <a name="d7" doxytag="DNS::dns_getresult"></a><p>
367 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
370 <table cellpadding="0" cellspacing="0" border="0">
372 <td class="md" nowrap valign="top"> char* DNS::dns_getresult </td>
373 <td class="md" valign="top">( </td>
374 <td class="md" nowrap valign="top">const int </td>
375 <td class="mdname1" valign="top" nowrap> <em>fd</em> </td>
376 <td class="md" valign="top"> ) </td>
377 <td class="md" nowrap><code> [private]</code></td>
384 <table cellspacing=5 cellpadding=0 border=0>
395 <a name="d13" doxytag="DNS::dns_getresult_r"></a><p>
396 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
399 <table cellpadding="0" cellspacing="0" border="0">
401 <td class="md" nowrap valign="top"> char* DNS::dns_getresult_r </td>
402 <td class="md" valign="top">( </td>
403 <td class="md" nowrap valign="top">const int </td>
404 <td class="mdname1" valign="top" nowrap> <em>fd</em> </td>
405 <td class="md" valign="top"> ) </td>
406 <td class="md" nowrap><code> [private]</code></td>
413 <table cellspacing=5 cellpadding=0 border=0>
424 <a name="d10" doxytag="DNS::dns_getresult_s"></a><p>
425 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
428 <table cellpadding="0" cellspacing="0" border="0">
430 <td class="md" nowrap valign="top"> char* DNS::dns_getresult_s </td>
431 <td class="md" valign="top">( </td>
432 <td class="md" nowrap valign="top">const int </td>
433 <td class="mdname" nowrap> <em>fd</em>, </td>
438 <td class="md" nowrap>char *const </td>
439 <td class="mdname" nowrap> <em>result</em></td>
443 <td class="md">) </td>
444 <td class="md" colspan="2"><code> [private]</code></td>
451 <table cellspacing=5 cellpadding=0 border=0>
462 <a name="d0" doxytag="DNS::dns_init"></a><p>
463 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
466 <table cellpadding="0" cellspacing="0" border="0">
468 <td class="md" nowrap valign="top"> void DNS::dns_init </td>
469 <td class="md" valign="top">( </td>
470 <td class="mdname1" valign="top" nowrap> </td>
471 <td class="md" valign="top"> ) </td>
472 <td class="md" nowrap><code> [private]</code></td>
479 <table cellspacing=5 cellpadding=0 border=0>
490 <a name="d1" doxytag="DNS::dns_init_2"></a><p>
491 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
494 <table cellpadding="0" cellspacing="0" border="0">
496 <td class="md" nowrap valign="top"> void DNS::dns_init_2 </td>
497 <td class="md" valign="top">( </td>
498 <td class="md" nowrap valign="top">const char * </td>
499 <td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
500 <td class="md" valign="top"> ) </td>
501 <td class="md" nowrap><code> [private]</code></td>
508 <table cellspacing=5 cellpadding=0 border=0>
519 <a name="d3" doxytag="DNS::dns_ntoa4"></a><p>
520 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
523 <table cellpadding="0" cellspacing="0" border="0">
525 <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4 </td>
526 <td class="md" valign="top">( </td>
527 <td class="md" nowrap valign="top">const in_addr *const </td>
528 <td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
529 <td class="md" valign="top"> ) </td>
530 <td class="md" nowrap><code> [private]</code></td>
537 <table cellspacing=5 cellpadding=0 border=0>
548 <a name="d12" doxytag="DNS::dns_ntoa4_r"></a><p>
549 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
552 <table cellpadding="0" cellspacing="0" border="0">
554 <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4_r </td>
555 <td class="md" valign="top">( </td>
556 <td class="md" nowrap valign="top">const in_addr *const </td>
557 <td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
558 <td class="md" valign="top"> ) </td>
559 <td class="md" nowrap><code> [private]</code></td>
566 <table cellspacing=5 cellpadding=0 border=0>
577 <a name="d9" doxytag="DNS::dns_ntoa4_s"></a><p>
578 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
581 <table cellpadding="0" cellspacing="0" border="0">
583 <td class="md" nowrap valign="top"> char* DNS::dns_ntoa4_s </td>
584 <td class="md" valign="top">( </td>
585 <td class="md" nowrap valign="top">const in_addr *const </td>
586 <td class="mdname" nowrap> <em>ip</em>, </td>
591 <td class="md" nowrap>char *const </td>
592 <td class="mdname" nowrap> <em>result</em></td>
596 <td class="md">) </td>
597 <td class="md" colspan="2"><code> [private]</code></td>
604 <table cellspacing=5 cellpadding=0 border=0>
615 <a name="a4" doxytag="DNS::ForwardLookup"></a><p>
616 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
619 <table cellpadding="0" cellspacing="0" border="0">
621 <td class="md" nowrap valign="top"> bool DNS::ForwardLookup </td>
622 <td class="md" valign="top">( </td>
623 <td class="md" nowrap valign="top">std::string </td>
624 <td class="mdname1" valign="top" nowrap> <em>host</em> </td>
625 <td class="md" valign="top"> ) </td>
626 <td class="md" nowrap></td>
633 <table cellspacing=5 cellpadding=0 border=0>
641 This method will start the forward lookup of a hostname, e.g.
643 www.inspircd.org, and returns true if the lookup was successfully initiated. </td>
646 <a name="a7" doxytag="DNS::GetFD"></a><p>
647 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
650 <table cellpadding="0" cellspacing="0" border="0">
652 <td class="md" nowrap valign="top"> int DNS::GetFD </td>
653 <td class="md" valign="top">( </td>
654 <td class="mdname1" valign="top" nowrap> </td>
655 <td class="md" valign="top"> ) </td>
656 <td class="md" nowrap></td>
663 <table cellspacing=5 cellpadding=0 border=0>
671 This method returns the file handle used by the dns query socket or zero if the query is invalid for some reason, e.g.
673 the dns server not responding. </td>
676 <a name="a6" doxytag="DNS::GetResult"></a><p>
677 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
680 <table cellpadding="0" cellspacing="0" border="0">
682 <td class="md" nowrap valign="top"> std::string DNS::GetResult </td>
683 <td class="md" valign="top">( </td>
684 <td class="mdname1" valign="top" nowrap> </td>
685 <td class="md" valign="top"> ) </td>
686 <td class="md" nowrap></td>
693 <table cellspacing=5 cellpadding=0 border=0>
701 This method returns the result of your query as a string, depending upon wether you called <a class="el" href="classDNS.html#a3">DNS::ReverseLookup()</a> or <a class="el" href="classDNS.html#a4">DNS::ForwardLookup</a>.
706 <a name="a5" doxytag="DNS::HasResult"></a><p>
707 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
710 <table cellpadding="0" cellspacing="0" border="0">
712 <td class="md" nowrap valign="top"> bool DNS::HasResult </td>
713 <td class="md" valign="top">( </td>
714 <td class="mdname1" valign="top" nowrap> </td>
715 <td class="md" valign="top"> ) </td>
716 <td class="md" nowrap></td>
723 <table cellspacing=5 cellpadding=0 border=0>
731 This method will return true when the lookup is completed.
733 It uses poll internally to determine the status of the socket. </td>
736 <a name="a3" doxytag="DNS::ReverseLookup"></a><p>
737 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
740 <table cellpadding="0" cellspacing="0" border="0">
742 <td class="md" nowrap valign="top"> bool DNS::ReverseLookup </td>
743 <td class="md" valign="top">( </td>
744 <td class="md" nowrap valign="top">std::string </td>
745 <td class="mdname1" valign="top" nowrap> <em>ip</em> </td>
746 <td class="md" valign="top"> ) </td>
747 <td class="md" nowrap></td>
754 <table cellspacing=5 cellpadding=0 border=0>
762 This method will start the reverse lookup of an ip given in dotted decimal format, e.g.
764 1.2.3.4, and returns true if the lookup was successfully initiated. </td>
767 <a name="a8" doxytag="DNS::SetNS"></a><p>
768 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
771 <table cellpadding="0" cellspacing="0" border="0">
773 <td class="md" nowrap valign="top"> void DNS::SetNS </td>
774 <td class="md" valign="top">( </td>
775 <td class="md" nowrap valign="top">std::string </td>
776 <td class="mdname1" valign="top" nowrap> <em>dnsserver</em> </td>
777 <td class="md" valign="top"> ) </td>
778 <td class="md" nowrap></td>
785 <table cellspacing=5 cellpadding=0 border=0>
796 <hr><h2>Member Data Documentation</h2>
797 <a name="r1" doxytag="DNS::binip"></a><p>
798 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
801 <table cellpadding="0" cellspacing="0" border="0">
803 <td class="md" nowrap valign="top"> in_addr* <a class="el" href="classDNS.html#r1">DNS::binip</a><code> [private]</code>
808 <table cellspacing=5 cellpadding=0 border=0>
818 Definition at line <a class="el" href="dns_8h-source.html#l00039">39</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
821 <a name="r4" doxytag="DNS::fd"></a><p>
822 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
825 <table cellpadding="0" cellspacing="0" border="0">
827 <td class="md" nowrap valign="top"> unsigned int <a class="el" href="classDNS.html#r4">DNS::fd</a><code> [private]</code>
832 <table cellspacing=5 cellpadding=0 border=0>
842 Definition at line <a class="el" href="dns_8h-source.html#l00042">42</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
845 <a name="r3" doxytag="DNS::i"></a><p>
846 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
849 <table cellpadding="0" cellspacing="0" border="0">
851 <td class="md" nowrap valign="top"> int <a class="el" href="classDNS.html#r3">DNS::i</a><code> [private]</code>
856 <table cellspacing=5 cellpadding=0 border=0>
866 Definition at line <a class="el" href="dns_8h-source.html#l00040">40</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
869 <a name="r0" doxytag="DNS::result"></a><p>
870 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
873 <table cellpadding="0" cellspacing="0" border="0">
875 <td class="md" nowrap valign="top"> char* <a class="el" href="classDNS.html#r0">DNS::result</a><code> [private]</code>
880 <table cellspacing=5 cellpadding=0 border=0>
890 Definition at line <a class="el" href="dns_8h-source.html#l00038">38</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
893 <a name="r2" doxytag="DNS::t"></a><p>
894 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
897 <table cellpadding="0" cellspacing="0" border="0">
899 <td class="md" nowrap valign="top"> int <a class="el" href="classDNS.html#r2">DNS::t</a><code> [private]</code>
904 <table cellspacing=5 cellpadding=0 border=0>
914 Definition at line <a class="el" href="dns_8h-source.html#l00040">40</a> of file <a class="el" href="dns_8h-source.html">dns.h</a>. </td>
917 <hr>The documentation for this class was generated from the following file:<ul>
918 <li><a class="el" href="dns_8h-source.html">dns.h</a></ul>
919 <hr size="1"><address style="align: right;"><small>Generated on Thu Apr 14 21:12:08 2005 for InspIRCd by
920 <a href="http://www.doxygen.org/index.html">
921 <img src="doxygen.png" alt="doxygen" align="middle" border=0 >
922 </a>1.3.3 </small></address>