]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - docs/module-doc/classircd__connector.html
Updated to support OnSendList
[user/henk/code/inspircd.git] / docs / module-doc / classircd__connector.html
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: ircd_connector class Reference</title>
4 <link href="inspircd.css" rel="stylesheet" type="text/css">
5 </head><body>
6 <!-- Generated by Doxygen 1.3.3 -->
7 <div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
8 <h1>ircd_connector Class Reference</h1>Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds.  
9 <a href="#_details">More...</a>
10 <p>
11 <code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
12 <p>
13 Inherits <a class="el" href="classExtensible.html">Extensible</a>.
14 <p>
15 <a href="classircd__connector-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
16 <tr><td></td></tr>
17 <tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
18 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a0">MakeOutboundConnection</a> (char *<a class="el" href="classircd__connector.html#o0">host</a>, int <a class="el" href="classircd__connector.html#o1">port</a>)</td></tr>
19
20 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create an outbound connection to a listening socket. </em> <a href="#a0"></a><em><br><br></td></tr>
21 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a1">GetServerName</a> ()</td></tr>
22
23 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the servername on this established connection. </em> <a href="#a1"></a><em><br><br></td></tr>
24 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a2">SetServerName</a> (std::string serv)</td></tr>
25
26 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the server name of this connection. </em> <a href="#a2"></a><em><br><br></td></tr>
27 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a3">GetDescriptor</a> ()</td></tr>
28
29 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the file descriptor associated with this connection. </em> <a href="#a3"></a><em><br><br></td></tr>
30 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a4">SetDescriptor</a> (int <a class="el" href="classircd__connector.html#r1">fd</a>)</td></tr>
31
32 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the file descriptor for this connection. </em> <a href="#a4"></a><em><br><br></td></tr>
33 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a5">GetState</a> ()</td></tr>
34
35 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the state flags for this connection. </em> <a href="#a5"></a><em><br><br></td></tr>
36 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a6">SetState</a> (int <a class="el" href="classircd__connector.html#r4">state</a>)</td></tr>
37
38 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the state flags for this connection. </em> <a href="#a6"></a><em><br><br></td></tr>
39 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a7">GetServerIP</a> ()</td></tr>
40
41 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the ip address (not servername) associated with this connection. </em> <a href="#a7"></a><em><br><br></td></tr>
42 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a8">GetDescription</a> ()</td></tr>
43
44 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the server description of this connection. </em> <a href="#a8"></a><em><br><br></td></tr>
45 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a9">SetDescription</a> (std::string desc)</td></tr>
46
47 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the server description of this connection. </em> <a href="#a9"></a><em><br><br></td></tr>
48 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a10">GetServerPort</a> ()</td></tr>
49
50 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>. </em> <a href="#a10"></a><em><br><br></td></tr>
51 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a11">SetServerPort</a> (int p)</td></tr>
52
53 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the port used by this connection. </em> <a href="#a11"></a><em><br><br></td></tr>
54 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a12">SetHostAndPort</a> (char *<a class="el" href="classircd__connector.html#o0">host</a>, int <a class="el" href="classircd__connector.html#o1">port</a>)</td></tr>
55
56 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set both the host and the port in one operation for this connection. </em> <a href="#a12"></a><em><br><br></td></tr>
57 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a13">CloseConnection</a> ()</td></tr>
58
59 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close the connection by calling close() on its file descriptor This function call updates no other data. </em> <a href="#a13"></a><em><br><br></td></tr>
60 <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
61 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o0">host</a> [MAXBUF]</td></tr>
62
63 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. </em> <a href="#o0"></a><em><br><br></td></tr>
64 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o1">port</a></td></tr>
65
66 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. </em> <a href="#o1"></a><em><br><br></td></tr>
67 <tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o2">routes</a></td></tr>
68
69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B. </em> <a href="#o2"></a><em><br><br></td></tr>
70 <tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
71 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#d0">SetHostAddress</a> (char *<a class="el" href="classircd__connector.html#o0">host</a>, int <a class="el" href="classircd__connector.html#o1">port</a>)</td></tr>
72
73 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">PRIVATE function to set the host address and port to connect to. </em> <a href="#d0"></a><em><br><br></td></tr>
74 <tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
75 <tr><td class="memItemLeft" nowrap align=right valign=top>sockaddr_in&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r0">addr</a></td></tr>
76
77 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sockaddr of the outbound ip and port. </em> <a href="#r0"></a><em><br><br></td></tr>
78 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r1">fd</a></td></tr>
79
80 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor of the connection. </em> <a href="#r1"></a><em><br><br></td></tr>
81 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r2">servername</a></td></tr>
82
83 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> name. </em> <a href="#r2"></a><em><br><br></td></tr>
84 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r3">description</a></td></tr>
85
86 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> 'GECOS'. </em> <a href="#r3"></a><em><br><br></td></tr>
87 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r4">state</a></td></tr>
88
89 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">State. </em> <a href="#r4"></a><em><br><br></td></tr>
90 </table>
91 <hr><a name="_details"></a><h2>Detailed Description</h2>
92 Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds. 
93 <p>
94 A listening socket that accepts server type connections is represented by one class serverrec. Class serverrec will instantiate several objects of type ircd_connector to represent each established connection, inbound or outbound. So, to determine all linked servers you must walk through all the serverrecs that the core defines, and in each one iterate through until you find connection(s) relating to the server you want information on. The core and module API provide functions for this. 
95 <p>
96
97 <p>
98 Definition at line <a class="el" href="connection_8h-source.html#l00053">53</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Member Function Documentation</h2>
99 <a name="a13" doxytag="ircd_connector::CloseConnection"></a><p>
100 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
101   <tr>
102     <td class="mdRow">
103       <table cellpadding="0" cellspacing="0" border="0">
104         <tr>
105           <td class="md" nowrap valign="top"> void ircd_connector::CloseConnection </td>
106           <td class="md" valign="top">(&nbsp;</td>
107           <td class="mdname1" valign="top" nowrap>          </td>
108           <td class="md" valign="top">&nbsp;)&nbsp;</td>
109           <td class="md" nowrap></td>
110         </tr>
111
112       </table>
113     </td>
114   </tr>
115 </table>
116 <table cellspacing=5 cellpadding=0 border=0>
117   <tr>
118     <td>
119       &nbsp;
120     </td>
121     <td>
122
123 <p>
124 Close the connection by calling close() on its file descriptor This function call updates no other data. 
125 <p>
126     </td>
127   </tr>
128 </table>
129 <a name="a8" doxytag="ircd_connector::GetDescription"></a><p>
130 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
131   <tr>
132     <td class="mdRow">
133       <table cellpadding="0" cellspacing="0" border="0">
134         <tr>
135           <td class="md" nowrap valign="top"> std::string ircd_connector::GetDescription </td>
136           <td class="md" valign="top">(&nbsp;</td>
137           <td class="mdname1" valign="top" nowrap>          </td>
138           <td class="md" valign="top">&nbsp;)&nbsp;</td>
139           <td class="md" nowrap></td>
140         </tr>
141
142       </table>
143     </td>
144   </tr>
145 </table>
146 <table cellspacing=5 cellpadding=0 border=0>
147   <tr>
148     <td>
149       &nbsp;
150     </td>
151     <td>
152
153 <p>
154 Get the server description of this connection. 
155 <p>
156     </td>
157   </tr>
158 </table>
159 <a name="a3" doxytag="ircd_connector::GetDescriptor"></a><p>
160 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
161   <tr>
162     <td class="mdRow">
163       <table cellpadding="0" cellspacing="0" border="0">
164         <tr>
165           <td class="md" nowrap valign="top"> int ircd_connector::GetDescriptor </td>
166           <td class="md" valign="top">(&nbsp;</td>
167           <td class="mdname1" valign="top" nowrap>          </td>
168           <td class="md" valign="top">&nbsp;)&nbsp;</td>
169           <td class="md" nowrap></td>
170         </tr>
171
172       </table>
173     </td>
174   </tr>
175 </table>
176 <table cellspacing=5 cellpadding=0 border=0>
177   <tr>
178     <td>
179       &nbsp;
180     </td>
181     <td>
182
183 <p>
184 Get the file descriptor associated with this connection. 
185 <p>
186     </td>
187   </tr>
188 </table>
189 <a name="a7" doxytag="ircd_connector::GetServerIP"></a><p>
190 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
191   <tr>
192     <td class="mdRow">
193       <table cellpadding="0" cellspacing="0" border="0">
194         <tr>
195           <td class="md" nowrap valign="top"> char* ircd_connector::GetServerIP </td>
196           <td class="md" valign="top">(&nbsp;</td>
197           <td class="mdname1" valign="top" nowrap>          </td>
198           <td class="md" valign="top">&nbsp;)&nbsp;</td>
199           <td class="md" nowrap></td>
200         </tr>
201
202       </table>
203     </td>
204   </tr>
205 </table>
206 <table cellspacing=5 cellpadding=0 border=0>
207   <tr>
208     <td>
209       &nbsp;
210     </td>
211     <td>
212
213 <p>
214 Get the ip address (not servername) associated with this connection. 
215 <p>
216     </td>
217   </tr>
218 </table>
219 <a name="a1" doxytag="ircd_connector::GetServerName"></a><p>
220 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
221   <tr>
222     <td class="mdRow">
223       <table cellpadding="0" cellspacing="0" border="0">
224         <tr>
225           <td class="md" nowrap valign="top"> std::string ircd_connector::GetServerName </td>
226           <td class="md" valign="top">(&nbsp;</td>
227           <td class="mdname1" valign="top" nowrap>          </td>
228           <td class="md" valign="top">&nbsp;)&nbsp;</td>
229           <td class="md" nowrap></td>
230         </tr>
231
232       </table>
233     </td>
234   </tr>
235 </table>
236 <table cellspacing=5 cellpadding=0 border=0>
237   <tr>
238     <td>
239       &nbsp;
240     </td>
241     <td>
242
243 <p>
244 Return the servername on this established connection. 
245 <p>
246     </td>
247   </tr>
248 </table>
249 <a name="a10" doxytag="ircd_connector::GetServerPort"></a><p>
250 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
251   <tr>
252     <td class="mdRow">
253       <table cellpadding="0" cellspacing="0" border="0">
254         <tr>
255           <td class="md" nowrap valign="top"> int ircd_connector::GetServerPort </td>
256           <td class="md" valign="top">(&nbsp;</td>
257           <td class="mdname1" valign="top" nowrap>          </td>
258           <td class="md" valign="top">&nbsp;)&nbsp;</td>
259           <td class="md" nowrap></td>
260         </tr>
261
262       </table>
263     </td>
264   </tr>
265 </table>
266 <table cellspacing=5 cellpadding=0 border=0>
267   <tr>
268     <td>
269       &nbsp;
270     </td>
271     <td>
272
273 <p>
274 Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>. 
275 <p>
276     </td>
277   </tr>
278 </table>
279 <a name="a5" doxytag="ircd_connector::GetState"></a><p>
280 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
281   <tr>
282     <td class="mdRow">
283       <table cellpadding="0" cellspacing="0" border="0">
284         <tr>
285           <td class="md" nowrap valign="top"> int ircd_connector::GetState </td>
286           <td class="md" valign="top">(&nbsp;</td>
287           <td class="mdname1" valign="top" nowrap>          </td>
288           <td class="md" valign="top">&nbsp;)&nbsp;</td>
289           <td class="md" nowrap></td>
290         </tr>
291
292       </table>
293     </td>
294   </tr>
295 </table>
296 <table cellspacing=5 cellpadding=0 border=0>
297   <tr>
298     <td>
299       &nbsp;
300     </td>
301     <td>
302
303 <p>
304 Get the state flags for this connection. 
305 <p>
306     </td>
307   </tr>
308 </table>
309 <a name="a0" doxytag="ircd_connector::MakeOutboundConnection"></a><p>
310 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
311   <tr>
312     <td class="mdRow">
313       <table cellpadding="0" cellspacing="0" border="0">
314         <tr>
315           <td class="md" nowrap valign="top"> bool ircd_connector::MakeOutboundConnection </td>
316           <td class="md" valign="top">(&nbsp;</td>
317           <td class="md" nowrap valign="top">char *&nbsp;</td>
318           <td class="mdname" nowrap> <em>host</em>, </td>
319         </tr>
320         <tr>
321           <td></td>
322           <td></td>
323           <td class="md" nowrap>int&nbsp;</td>
324           <td class="mdname" nowrap> <em>port</em></td>
325         </tr>
326         <tr>
327           <td></td>
328           <td class="md">)&nbsp;</td>
329           <td class="md" colspan="2"></td>
330         </tr>
331
332       </table>
333     </td>
334   </tr>
335 </table>
336 <table cellspacing=5 cellpadding=0 border=0>
337   <tr>
338     <td>
339       &nbsp;
340     </td>
341     <td>
342
343 <p>
344 Create an outbound connection to a listening socket. 
345 <p>
346     </td>
347   </tr>
348 </table>
349 <a name="a9" doxytag="ircd_connector::SetDescription"></a><p>
350 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
351   <tr>
352     <td class="mdRow">
353       <table cellpadding="0" cellspacing="0" border="0">
354         <tr>
355           <td class="md" nowrap valign="top"> void ircd_connector::SetDescription </td>
356           <td class="md" valign="top">(&nbsp;</td>
357           <td class="md" nowrap valign="top">std::string&nbsp;</td>
358           <td class="mdname1" valign="top" nowrap> <em>desc</em>          </td>
359           <td class="md" valign="top">&nbsp;)&nbsp;</td>
360           <td class="md" nowrap></td>
361         </tr>
362
363       </table>
364     </td>
365   </tr>
366 </table>
367 <table cellspacing=5 cellpadding=0 border=0>
368   <tr>
369     <td>
370       &nbsp;
371     </td>
372     <td>
373
374 <p>
375 Set the server description of this connection. 
376 <p>
377     </td>
378   </tr>
379 </table>
380 <a name="a4" doxytag="ircd_connector::SetDescriptor"></a><p>
381 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
382   <tr>
383     <td class="mdRow">
384       <table cellpadding="0" cellspacing="0" border="0">
385         <tr>
386           <td class="md" nowrap valign="top"> void ircd_connector::SetDescriptor </td>
387           <td class="md" valign="top">(&nbsp;</td>
388           <td class="md" nowrap valign="top">int&nbsp;</td>
389           <td class="mdname1" valign="top" nowrap> <em>fd</em>          </td>
390           <td class="md" valign="top">&nbsp;)&nbsp;</td>
391           <td class="md" nowrap></td>
392         </tr>
393
394       </table>
395     </td>
396   </tr>
397 </table>
398 <table cellspacing=5 cellpadding=0 border=0>
399   <tr>
400     <td>
401       &nbsp;
402     </td>
403     <td>
404
405 <p>
406 Set the file descriptor for this connection. 
407 <p>
408     </td>
409   </tr>
410 </table>
411 <a name="d0" doxytag="ircd_connector::SetHostAddress"></a><p>
412 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
413   <tr>
414     <td class="mdRow">
415       <table cellpadding="0" cellspacing="0" border="0">
416         <tr>
417           <td class="md" nowrap valign="top"> bool ircd_connector::SetHostAddress </td>
418           <td class="md" valign="top">(&nbsp;</td>
419           <td class="md" nowrap valign="top">char *&nbsp;</td>
420           <td class="mdname" nowrap> <em>host</em>, </td>
421         </tr>
422         <tr>
423           <td></td>
424           <td></td>
425           <td class="md" nowrap>int&nbsp;</td>
426           <td class="mdname" nowrap> <em>port</em></td>
427         </tr>
428         <tr>
429           <td></td>
430           <td class="md">)&nbsp;</td>
431           <td class="md" colspan="2"><code> [private]</code></td>
432         </tr>
433
434       </table>
435     </td>
436   </tr>
437 </table>
438 <table cellspacing=5 cellpadding=0 border=0>
439   <tr>
440     <td>
441       &nbsp;
442     </td>
443     <td>
444
445 <p>
446 PRIVATE function to set the host address and port to connect to. 
447 <p>
448     </td>
449   </tr>
450 </table>
451 <a name="a12" doxytag="ircd_connector::SetHostAndPort"></a><p>
452 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
453   <tr>
454     <td class="mdRow">
455       <table cellpadding="0" cellspacing="0" border="0">
456         <tr>
457           <td class="md" nowrap valign="top"> bool ircd_connector::SetHostAndPort </td>
458           <td class="md" valign="top">(&nbsp;</td>
459           <td class="md" nowrap valign="top">char *&nbsp;</td>
460           <td class="mdname" nowrap> <em>host</em>, </td>
461         </tr>
462         <tr>
463           <td></td>
464           <td></td>
465           <td class="md" nowrap>int&nbsp;</td>
466           <td class="mdname" nowrap> <em>port</em></td>
467         </tr>
468         <tr>
469           <td></td>
470           <td class="md">)&nbsp;</td>
471           <td class="md" colspan="2"></td>
472         </tr>
473
474       </table>
475     </td>
476   </tr>
477 </table>
478 <table cellspacing=5 cellpadding=0 border=0>
479   <tr>
480     <td>
481       &nbsp;
482     </td>
483     <td>
484
485 <p>
486 Set both the host and the port in one operation for this connection. 
487 <p>
488     </td>
489   </tr>
490 </table>
491 <a name="a2" doxytag="ircd_connector::SetServerName"></a><p>
492 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
493   <tr>
494     <td class="mdRow">
495       <table cellpadding="0" cellspacing="0" border="0">
496         <tr>
497           <td class="md" nowrap valign="top"> void ircd_connector::SetServerName </td>
498           <td class="md" valign="top">(&nbsp;</td>
499           <td class="md" nowrap valign="top">std::string&nbsp;</td>
500           <td class="mdname1" valign="top" nowrap> <em>serv</em>          </td>
501           <td class="md" valign="top">&nbsp;)&nbsp;</td>
502           <td class="md" nowrap></td>
503         </tr>
504
505       </table>
506     </td>
507   </tr>
508 </table>
509 <table cellspacing=5 cellpadding=0 border=0>
510   <tr>
511     <td>
512       &nbsp;
513     </td>
514     <td>
515
516 <p>
517 Set the server name of this connection. 
518 <p>
519     </td>
520   </tr>
521 </table>
522 <a name="a11" doxytag="ircd_connector::SetServerPort"></a><p>
523 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
524   <tr>
525     <td class="mdRow">
526       <table cellpadding="0" cellspacing="0" border="0">
527         <tr>
528           <td class="md" nowrap valign="top"> void ircd_connector::SetServerPort </td>
529           <td class="md" valign="top">(&nbsp;</td>
530           <td class="md" nowrap valign="top">int&nbsp;</td>
531           <td class="mdname1" valign="top" nowrap> <em>p</em>          </td>
532           <td class="md" valign="top">&nbsp;)&nbsp;</td>
533           <td class="md" nowrap></td>
534         </tr>
535
536       </table>
537     </td>
538   </tr>
539 </table>
540 <table cellspacing=5 cellpadding=0 border=0>
541   <tr>
542     <td>
543       &nbsp;
544     </td>
545     <td>
546
547 <p>
548 Set the port used by this connection. 
549 <p>
550     </td>
551   </tr>
552 </table>
553 <a name="a6" doxytag="ircd_connector::SetState"></a><p>
554 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
555   <tr>
556     <td class="mdRow">
557       <table cellpadding="0" cellspacing="0" border="0">
558         <tr>
559           <td class="md" nowrap valign="top"> void ircd_connector::SetState </td>
560           <td class="md" valign="top">(&nbsp;</td>
561           <td class="md" nowrap valign="top">int&nbsp;</td>
562           <td class="mdname1" valign="top" nowrap> <em>state</em>          </td>
563           <td class="md" valign="top">&nbsp;)&nbsp;</td>
564           <td class="md" nowrap></td>
565         </tr>
566
567       </table>
568     </td>
569   </tr>
570 </table>
571 <table cellspacing=5 cellpadding=0 border=0>
572   <tr>
573     <td>
574       &nbsp;
575     </td>
576     <td>
577
578 <p>
579 Set the state flags for this connection. 
580 <p>
581     </td>
582   </tr>
583 </table>
584 <hr><h2>Member Data Documentation</h2>
585 <a name="r0" doxytag="ircd_connector::addr"></a><p>
586 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
587   <tr>
588     <td class="mdRow">
589       <table cellpadding="0" cellspacing="0" border="0">
590         <tr>
591           <td class="md" nowrap valign="top"> sockaddr_in <a class="el" href="classircd__connector.html#r0">ircd_connector::addr</a><code> [private]</code>
592       </table>
593     </td>
594   </tr>
595 </table>
596 <table cellspacing=5 cellpadding=0 border=0>
597   <tr>
598     <td>
599       &nbsp;
600     </td>
601     <td>
602
603 <p>
604 Sockaddr of the outbound ip and port. 
605 <p>
606
607 <p>
608 Definition at line <a class="el" href="connection_8h-source.html#l00058">58</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
609   </tr>
610 </table>
611 <a name="r3" doxytag="ircd_connector::description"></a><p>
612 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
613   <tr>
614     <td class="mdRow">
615       <table cellpadding="0" cellspacing="0" border="0">
616         <tr>
617           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#r3">ircd_connector::description</a><code> [private]</code>
618       </table>
619     </td>
620   </tr>
621 </table>
622 <table cellspacing=5 cellpadding=0 border=0>
623   <tr>
624     <td>
625       &nbsp;
626     </td>
627     <td>
628
629 <p>
630 <a class="el" href="classServer.html">Server</a> 'GECOS'. 
631 <p>
632
633 <p>
634 Definition at line <a class="el" href="connection_8h-source.html#l00070">70</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
635   </tr>
636 </table>
637 <a name="r1" doxytag="ircd_connector::fd"></a><p>
638 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
639   <tr>
640     <td class="mdRow">
641       <table cellpadding="0" cellspacing="0" border="0">
642         <tr>
643           <td class="md" nowrap valign="top"> int <a class="el" href="classircd__connector.html#r1">ircd_connector::fd</a><code> [private]</code>
644       </table>
645     </td>
646   </tr>
647 </table>
648 <table cellspacing=5 cellpadding=0 border=0>
649   <tr>
650     <td>
651       &nbsp;
652     </td>
653     <td>
654
655 <p>
656 File descriptor of the connection. 
657 <p>
658
659 <p>
660 Definition at line <a class="el" href="connection_8h-source.html#l00062">62</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
661   </tr>
662 </table>
663 <a name="o0" doxytag="ircd_connector::host"></a><p>
664 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
665   <tr>
666     <td class="mdRow">
667       <table cellpadding="0" cellspacing="0" border="0">
668         <tr>
669           <td class="md" nowrap valign="top"> char <a class="el" href="classircd__connector.html#o0">ircd_connector::host</a>[MAXBUF]
670       </table>
671     </td>
672   </tr>
673 </table>
674 <table cellspacing=5 cellpadding=0 border=0>
675   <tr>
676     <td>
677       &nbsp;
678     </td>
679     <td>
680
681 <p>
682 When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. 
683 <p>
684
685 <p>
686 Definition at line <a class="el" href="connection_8h-source.html#l00087">87</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
687   </tr>
688 </table>
689 <a name="o1" doxytag="ircd_connector::port"></a><p>
690 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
691   <tr>
692     <td class="mdRow">
693       <table cellpadding="0" cellspacing="0" border="0">
694         <tr>
695           <td class="md" nowrap valign="top"> int <a class="el" href="classircd__connector.html#o1">ircd_connector::port</a>
696       </table>
697     </td>
698   </tr>
699 </table>
700 <table cellspacing=5 cellpadding=0 border=0>
701   <tr>
702     <td>
703       &nbsp;
704     </td>
705     <td>
706
707 <p>
708 When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. 
709 <p>
710
711 <p>
712 Definition at line <a class="el" href="connection_8h-source.html#l00093">93</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
713   </tr>
714 </table>
715 <a name="o2" doxytag="ircd_connector::routes"></a><p>
716 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
717   <tr>
718     <td class="mdRow">
719       <table cellpadding="0" cellspacing="0" border="0">
720         <tr>
721           <td class="md" nowrap valign="top"> std::vector&lt;std::string&gt; <a class="el" href="classircd__connector.html#o2">ircd_connector::routes</a>
722       </table>
723     </td>
724   </tr>
725 </table>
726 <table cellspacing=5 cellpadding=0 border=0>
727   <tr>
728     <td>
729       &nbsp;
730     </td>
731     <td>
732
733 <p>
734 <a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B. 
735 <p>
736
737 <p>
738 Definition at line <a class="el" href="connection_8h-source.html#l00099">99</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
739   </tr>
740 </table>
741 <a name="r2" doxytag="ircd_connector::servername"></a><p>
742 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
743   <tr>
744     <td class="mdRow">
745       <table cellpadding="0" cellspacing="0" border="0">
746         <tr>
747           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#r2">ircd_connector::servername</a><code> [private]</code>
748       </table>
749     </td>
750   </tr>
751 </table>
752 <table cellspacing=5 cellpadding=0 border=0>
753   <tr>
754     <td>
755       &nbsp;
756     </td>
757     <td>
758
759 <p>
760 <a class="el" href="classServer.html">Server</a> name. 
761 <p>
762
763 <p>
764 Definition at line <a class="el" href="connection_8h-source.html#l00066">66</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
765   </tr>
766 </table>
767 <a name="r4" doxytag="ircd_connector::state"></a><p>
768 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
769   <tr>
770     <td class="mdRow">
771       <table cellpadding="0" cellspacing="0" border="0">
772         <tr>
773           <td class="md" nowrap valign="top"> int <a class="el" href="classircd__connector.html#r4">ircd_connector::state</a><code> [private]</code>
774       </table>
775     </td>
776   </tr>
777 </table>
778 <table cellspacing=5 cellpadding=0 border=0>
779   <tr>
780     <td>
781       &nbsp;
782     </td>
783     <td>
784
785 <p>
786 State. 
787 <p>
788 STATE_NOAUTH_INBOUND, STATE_NOAUTH_OUTBOUND STATE_SYNC, STATE_DISCONNECTED, STATE_CONNECTED
789 <p>
790 Definition at line <a class="el" href="connection_8h-source.html#l00075">75</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
791   </tr>
792 </table>
793 <hr>The documentation for this class was generated from the following file:<ul>
794 <li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
795 <hr size="1"><address style="align: right;"><small>Generated on Wed Apr 13 13:07:05 2005 for InspIRCd by
796 <a href="http://www.doxygen.org/index.html">
797 <img src="doxygen.png" alt="doxygen" align="middle" border=0 > 
798 </a>1.3.3 </small></address>
799 </body>
800 </html>