]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - docs/module-doc/classconnection.html
Added new documentation for XLine etc
[user/henk/code/inspircd.git] / docs / module-doc / classconnection.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>connection class Reference</title>
4 <link href="inspircd.css" rel="stylesheet" type="text/css">
5 </head><body>
6 <!-- Generated by Doxygen 1.3-rc3 -->
7 <center>
8 <a class="qindex" href="main.html">Main Page</a> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; </center>
9 <hr><h1>connection Class Reference</h1>Please note: classes serverrec and userrec both inherit from class connection. 
10 <a href="#_details">More...</a>
11 <p>
12 <code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
13 <p>
14 Inheritance diagram for connection:<p><center><img src="classconnection__inherit__graph.gif" border="0" usemap="#connection__inherit__map" alt="Inheritance graph"></center>
15 <map name="connection__inherit__map">
16 <area href="classserverrec.html" shape="rect" coords="7,154,73,176" alt="">
17 <area href="classuserrec.html" shape="rect" coords="97,154,153,176" alt="">
18 <area href="classclassbase.html" shape="rect" coords="49,16,116,37" alt="">
19 </map>
20 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for connection:<p><center><img src="classconnection__coll__graph.gif" border="0" usemap="#connection__coll__map" alt="Collaboration graph"></center>
21 <map name="connection__coll__map">
22 <area href="classclassbase.html" shape="rect" coords="192,122,259,144" alt="">
23 </map>
24 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classconnection-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
25 <tr><td></td></tr>
26 <tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
27 <tr><td nowrap align=right valign=top>&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a0">connection</a> ()</td></tr>
28 <tr><td>&nbsp;</td><td><font size=-1><em>Default constructor.</em> <a href="#a0"></a><em></em></font><br><br></td></tr>
29 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a1">CreateListener</a> (char *<a class="el" href="classconnection.html#m1">host</a>, int p)</td></tr>
30 <tr><td>&nbsp;</td><td><font size=-1><em>Create a listening socket on 'host' using port number 'p'.</em> <a href="#a1"></a><em></em></font><br><br></td></tr>
31 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a2">BeginLink</a> (char *targethost, int <a class="el" href="classconnection.html#m9">port</a>, char *password, char *servername, int myport)</td></tr>
32 <tr><td>&nbsp;</td><td><font size=-1><em>Begin an outbound link to another ircd at targethost.</em> <a href="#a2"></a><em></em></font><br><br></td></tr>
33 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a3">MeshCookie</a> (char *targethost, int <a class="el" href="classconnection.html#m9">port</a>, long cookie, char *servername)</td></tr>
34 <tr><td>&nbsp;</td><td><font size=-1><em>Begin an outbound mesh link to another ircd on a network you are already an authenticated member of.</em> <a href="#a3"></a><em></em></font><br><br></td></tr>
35 <tr><td nowrap align=right valign=top>void&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a4">TerminateLink</a> (char *targethost)</td></tr>
36 <tr><td>&nbsp;</td><td><font size=-1><em>Terminate a link to 'targethost' by calling the <a class="el" href="classircd__connector.html#a13">ircd_connector::CloseConnection</a> method.</em> <a href="#a4"></a><em></em></font><br><br></td></tr>
37 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a5">SendPacket</a> (char *message, const char *<a class="el" href="classconnection.html#m1">host</a>)</td></tr>
38 <tr><td>&nbsp;</td><td><font size=-1><em>Send a message to a server by name, if the server is unavailable directly route the packet via another server If the server still cannot be reached after attempting to route the message remotely, returns false.</em> <a href="#a5"></a><em></em></font><br><br></td></tr>
39 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a6">RecvPacket</a> (std::deque&lt; std::string &gt; &amp;messages, char *<a class="el" href="classconnection.html#m1">host</a>)</td></tr>
40 <tr><td>&nbsp;</td><td><font size=-1><em>Returns the next available packet and returns true if data is available.</em> <a href="#a6"></a><em></em></font><br><br></td></tr>
41 <tr><td nowrap align=right valign=top><a class="el" href="classircd__connector.html">ircd_connector</a> *&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a7">FindHost</a> (std::string <a class="el" href="classconnection.html#m1">host</a>)</td></tr>
42 <tr><td>&nbsp;</td><td><font size=-1><em>Find the <a class="el" href="classircd__connector.html">ircd_connector</a> oject related to a certain servername given in 'host'.</em> <a href="#a7"></a><em></em></font><br><br></td></tr>
43 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a8">AddIncoming</a> (int <a class="el" href="classconnection.html#m0">fd</a>, char *targethost, int sourceport)</td></tr>
44 <tr><td>&nbsp;</td><td><font size=-1><em>Add an incoming connection to the connection pool.</em> <a href="#a8"></a><em></em></font><br><br></td></tr>
45 <tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#a9">GenKey</a> ()</td></tr>
46 <tr><td>&nbsp;</td><td><font size=-1><em>This function is deprecated and may be removed in a later alpha/beta.</em> <a href="#a9"></a><em></em></font><br><br></td></tr>
47 <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
48 <tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m0">fd</a></td></tr>
49 <tr><td>&nbsp;</td><td><font size=-1><em>File descriptor of the connection.</em> <a href="#m0"></a><em></em></font><br><br></td></tr>
50 <tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m1">host</a> [256]</td></tr>
51 <tr><td>&nbsp;</td><td><font size=-1><em>Hostname of connection.</em> <a href="#m1"></a><em></em></font><br><br></td></tr>
52 <tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m2">ip</a> [32]</td></tr>
53 <tr><td>&nbsp;</td><td><font size=-1><em>IP of connection.</em> <a href="#m2"></a><em></em></font><br><br></td></tr>
54 <tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m3">inbuf</a> [MAXBUF]</td></tr>
55 <tr><td>&nbsp;</td><td><font size=-1><em>Inbuf of connection.</em> <a href="#m3"></a><em></em></font><br><br></td></tr>
56 <tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m4">bytes_in</a></td></tr>
57 <tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for bytes inbound.</em> <a href="#m4"></a><em></em></font><br><br></td></tr>
58 <tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m5">bytes_out</a></td></tr>
59 <tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for bytes outbound.</em> <a href="#m5"></a><em></em></font><br><br></td></tr>
60 <tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m6">cmds_in</a></td></tr>
61 <tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for commands inbound.</em> <a href="#m6"></a><em></em></font><br><br></td></tr>
62 <tr><td nowrap align=right valign=top>long&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m7">cmds_out</a></td></tr>
63 <tr><td>&nbsp;</td><td><font size=-1><em>Stats counter for commands outbound.</em> <a href="#m7"></a><em></em></font><br><br></td></tr>
64 <tr><td nowrap align=right valign=top>bool&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m8">haspassed</a></td></tr>
65 <tr><td>&nbsp;</td><td><font size=-1><em>True if server/user has authenticated, false if otherwise.</em> <a href="#m8"></a><em></em></font><br><br></td></tr>
66 <tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m9">port</a></td></tr>
67 <tr><td>&nbsp;</td><td><font size=-1><em>Port number For a userrec, this is the port they connected to the network on.</em> <a href="#m9"></a><em></em></font><br><br></td></tr>
68 <tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m10">registered</a></td></tr>
69 <tr><td>&nbsp;</td><td><font size=-1><em>Used by userrec to indicate the registration status of the connection.</em> <a href="#m10"></a><em></em></font><br><br></td></tr>
70 <tr><td nowrap align=right valign=top>short int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m11">state</a></td></tr>
71 <tr><td>&nbsp;</td><td><font size=-1><em>Reserved for future use.</em> <a href="#m11"></a><em></em></font><br><br></td></tr>
72 <tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m12">lastping</a></td></tr>
73 <tr><td>&nbsp;</td><td><font size=-1><em>Time the connection was last pinged.</em> <a href="#m12"></a><em></em></font><br><br></td></tr>
74 <tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m13">signon</a></td></tr>
75 <tr><td>&nbsp;</td><td><font size=-1><em>Time the connection was created, set in the constructor.</em> <a href="#m13"></a><em></em></font><br><br></td></tr>
76 <tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m14">idle_lastmsg</a></td></tr>
77 <tr><td>&nbsp;</td><td><font size=-1><em>Time that the connection last sent data, used to calculate idle time.</em> <a href="#m14"></a><em></em></font><br><br></td></tr>
78 <tr><td nowrap align=right valign=top>time_t&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m15">nping</a></td></tr>
79 <tr><td>&nbsp;</td><td><font size=-1><em>Used by PING checks with clients.</em> <a href="#m15"></a><em></em></font><br><br></td></tr>
80 <tr><td nowrap align=right valign=top>char&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m16">internal_addr</a> [MAXBUF]</td></tr>
81 <tr><td>&nbsp;</td><td><font size=-1><em>Unused, will be removed in a future alpha/beta.</em> <a href="#m16"></a><em></em></font><br><br></td></tr>
82 <tr><td nowrap align=right valign=top>int&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m17">internal_port</a></td></tr>
83 <tr><td>&nbsp;</td><td><font size=-1><em>Unused, will be removed in a future alpha/beta.</em> <a href="#m17"></a><em></em></font><br><br></td></tr>
84 <tr><td nowrap align=right valign=top>std::vector&lt; <a class="el" href="classircd__connector.html">ircd_connector</a> &gt;&nbsp;</td><td valign=bottom><a class="el" href="classconnection.html#m18">connectors</a></td></tr>
85 <tr><td>&nbsp;</td><td><font size=-1><em>With a serverrec, this is a list of all established server connections.</em> <a href="#m18"></a><em></em></font><br><br></td></tr>
86 </table>
87 <hr><a name="_details"></a><h2>Detailed Description</h2>
88 Please note: classes serverrec and userrec both inherit from class connection.
89 <p>
90
91 <p>
92 Definition at line <a class="el" href="connection_8h-source.html#l00161">161</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
93 <a name="a0" doxytag="connection::connection"></a><p>
94 <table width="100%" cellpadding="2" cellspacing="0" border="0">
95   <tr>
96     <td class="md">
97       <table cellpadding="0" cellspacing="0" border="0">
98         <tr>
99           <td class="md" nowrap valign="top"> connection::connection </td>
100           <td class="md" valign="top">(&nbsp;</td>
101           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
102           <td class="md" valign="top">)&nbsp;</td>
103           <td class="md" nowrap></td>
104         </tr>
105
106       </table>
107     </td>
108   </tr>
109 </table>
110 <table cellspacing=5 cellpadding=0 border=0>
111   <tr>
112     <td>
113       &nbsp;
114     </td>
115     <td>
116
117 <p>
118 Default constructor.
119 <p>
120     </td>
121   </tr>
122 </table>
123 <hr><h2>Member Function Documentation</h2>
124 <a name="a8" doxytag="connection::AddIncoming"></a><p>
125 <table width="100%" cellpadding="2" cellspacing="0" border="0">
126   <tr>
127     <td class="md">
128       <table cellpadding="0" cellspacing="0" border="0">
129         <tr>
130           <td class="md" nowrap valign="top"> bool connection::AddIncoming </td>
131           <td class="md" valign="top">(&nbsp;</td>
132           <td class="md" nowrap valign="top">int&nbsp;</td>
133           <td class="mdname" nowrap>&nbsp; <em>fd</em>, </td>
134         </tr>
135         <tr>
136           <td></td>
137           <td></td>
138           <td class="md" nowrap>char *&nbsp;</td>
139           <td class="mdname" nowrap>&nbsp; <em>targethost</em>, </td>
140         </tr>
141         <tr>
142           <td></td>
143           <td></td>
144           <td class="md" nowrap>int&nbsp;</td>
145           <td class="mdname" nowrap>&nbsp; <em>sourceport</em></td>
146         </tr>
147         <tr>
148           <td></td>
149           <td class="md">)&nbsp;</td>
150           <td class="md" colspan="2"></td>
151         </tr>
152
153       </table>
154     </td>
155   </tr>
156 </table>
157 <table cellspacing=5 cellpadding=0 border=0>
158   <tr>
159     <td>
160       &nbsp;
161     </td>
162     <td>
163
164 <p>
165 Add an incoming connection to the connection pool.
166 <p>
167 (reserved for core use)    </td>
168   </tr>
169 </table>
170 <a name="a2" doxytag="connection::BeginLink"></a><p>
171 <table width="100%" cellpadding="2" cellspacing="0" border="0">
172   <tr>
173     <td class="md">
174       <table cellpadding="0" cellspacing="0" border="0">
175         <tr>
176           <td class="md" nowrap valign="top"> bool connection::BeginLink </td>
177           <td class="md" valign="top">(&nbsp;</td>
178           <td class="md" nowrap valign="top">char *&nbsp;</td>
179           <td class="mdname" nowrap>&nbsp; <em>targethost</em>, </td>
180         </tr>
181         <tr>
182           <td></td>
183           <td></td>
184           <td class="md" nowrap>int&nbsp;</td>
185           <td class="mdname" nowrap>&nbsp; <em>port</em>, </td>
186         </tr>
187         <tr>
188           <td></td>
189           <td></td>
190           <td class="md" nowrap>char *&nbsp;</td>
191           <td class="mdname" nowrap>&nbsp; <em>password</em>, </td>
192         </tr>
193         <tr>
194           <td></td>
195           <td></td>
196           <td class="md" nowrap>char *&nbsp;</td>
197           <td class="mdname" nowrap>&nbsp; <em>servername</em>, </td>
198         </tr>
199         <tr>
200           <td></td>
201           <td></td>
202           <td class="md" nowrap>int&nbsp;</td>
203           <td class="mdname" nowrap>&nbsp; <em>myport</em></td>
204         </tr>
205         <tr>
206           <td></td>
207           <td class="md">)&nbsp;</td>
208           <td class="md" colspan="2"></td>
209         </tr>
210
211       </table>
212     </td>
213   </tr>
214 </table>
215 <table cellspacing=5 cellpadding=0 border=0>
216   <tr>
217     <td>
218       &nbsp;
219     </td>
220     <td>
221
222 <p>
223 Begin an outbound link to another ircd at targethost.
224 <p>
225     </td>
226   </tr>
227 </table>
228 <a name="a1" doxytag="connection::CreateListener"></a><p>
229 <table width="100%" cellpadding="2" cellspacing="0" border="0">
230   <tr>
231     <td class="md">
232       <table cellpadding="0" cellspacing="0" border="0">
233         <tr>
234           <td class="md" nowrap valign="top"> bool connection::CreateListener </td>
235           <td class="md" valign="top">(&nbsp;</td>
236           <td class="md" nowrap valign="top">char *&nbsp;</td>
237           <td class="mdname" nowrap>&nbsp; <em>host</em>, </td>
238         </tr>
239         <tr>
240           <td></td>
241           <td></td>
242           <td class="md" nowrap>int&nbsp;</td>
243           <td class="mdname" nowrap>&nbsp; <em>p</em></td>
244         </tr>
245         <tr>
246           <td></td>
247           <td class="md">)&nbsp;</td>
248           <td class="md" colspan="2"></td>
249         </tr>
250
251       </table>
252     </td>
253   </tr>
254 </table>
255 <table cellspacing=5 cellpadding=0 border=0>
256   <tr>
257     <td>
258       &nbsp;
259     </td>
260     <td>
261
262 <p>
263 Create a listening socket on 'host' using port number 'p'.
264 <p>
265     </td>
266   </tr>
267 </table>
268 <a name="a7" doxytag="connection::FindHost"></a><p>
269 <table width="100%" cellpadding="2" cellspacing="0" border="0">
270   <tr>
271     <td class="md">
272       <table cellpadding="0" cellspacing="0" border="0">
273         <tr>
274           <td class="md" nowrap valign="top"> <a class="el" href="classircd__connector.html">ircd_connector</a>* connection::FindHost </td>
275           <td class="md" valign="top">(&nbsp;</td>
276           <td class="md" nowrap valign="top">std::string&nbsp;</td>
277           <td class="mdname1" valign="top" nowrap>&nbsp; <em>host</em>          </td>
278           <td class="md" valign="top">)&nbsp;</td>
279           <td class="md" nowrap></td>
280         </tr>
281
282       </table>
283     </td>
284   </tr>
285 </table>
286 <table cellspacing=5 cellpadding=0 border=0>
287   <tr>
288     <td>
289       &nbsp;
290     </td>
291     <td>
292
293 <p>
294 Find the <a class="el" href="classircd__connector.html">ircd_connector</a> oject related to a certain servername given in 'host'.
295 <p>
296     </td>
297   </tr>
298 </table>
299 <a name="a9" doxytag="connection::GenKey"></a><p>
300 <table width="100%" cellpadding="2" cellspacing="0" border="0">
301   <tr>
302     <td class="md">
303       <table cellpadding="0" cellspacing="0" border="0">
304         <tr>
305           <td class="md" nowrap valign="top"> long connection::GenKey </td>
306           <td class="md" valign="top">(&nbsp;</td>
307           <td class="mdname1" valign="top" nowrap>&nbsp;          </td>
308           <td class="md" valign="top">)&nbsp;</td>
309           <td class="md" nowrap></td>
310         </tr>
311
312       </table>
313     </td>
314   </tr>
315 </table>
316 <table cellspacing=5 cellpadding=0 border=0>
317   <tr>
318     <td>
319       &nbsp;
320     </td>
321     <td>
322
323 <p>
324 This function is deprecated and may be removed in a later alpha/beta.
325 <p>
326     </td>
327   </tr>
328 </table>
329 <a name="a3" doxytag="connection::MeshCookie"></a><p>
330 <table width="100%" cellpadding="2" cellspacing="0" border="0">
331   <tr>
332     <td class="md">
333       <table cellpadding="0" cellspacing="0" border="0">
334         <tr>
335           <td class="md" nowrap valign="top"> bool connection::MeshCookie </td>
336           <td class="md" valign="top">(&nbsp;</td>
337           <td class="md" nowrap valign="top">char *&nbsp;</td>
338           <td class="mdname" nowrap>&nbsp; <em>targethost</em>, </td>
339         </tr>
340         <tr>
341           <td></td>
342           <td></td>
343           <td class="md" nowrap>int&nbsp;</td>
344           <td class="mdname" nowrap>&nbsp; <em>port</em>, </td>
345         </tr>
346         <tr>
347           <td></td>
348           <td></td>
349           <td class="md" nowrap>long&nbsp;</td>
350           <td class="mdname" nowrap>&nbsp; <em>cookie</em>, </td>
351         </tr>
352         <tr>
353           <td></td>
354           <td></td>
355           <td class="md" nowrap>char *&nbsp;</td>
356           <td class="mdname" nowrap>&nbsp; <em>servername</em></td>
357         </tr>
358         <tr>
359           <td></td>
360           <td class="md">)&nbsp;</td>
361           <td class="md" colspan="2"></td>
362         </tr>
363
364       </table>
365     </td>
366   </tr>
367 </table>
368 <table cellspacing=5 cellpadding=0 border=0>
369   <tr>
370     <td>
371       &nbsp;
372     </td>
373     <td>
374
375 <p>
376 Begin an outbound mesh link to another ircd on a network you are already an authenticated member of.
377 <p>
378     </td>
379   </tr>
380 </table>
381 <a name="a6" doxytag="connection::RecvPacket"></a><p>
382 <table width="100%" cellpadding="2" cellspacing="0" border="0">
383   <tr>
384     <td class="md">
385       <table cellpadding="0" cellspacing="0" border="0">
386         <tr>
387           <td class="md" nowrap valign="top"> bool connection::RecvPacket </td>
388           <td class="md" valign="top">(&nbsp;</td>
389           <td class="md" nowrap valign="top">std::deque&lt; std::string &gt; &amp;&nbsp;</td>
390           <td class="mdname" nowrap>&nbsp; <em>messages</em>, </td>
391         </tr>
392         <tr>
393           <td></td>
394           <td></td>
395           <td class="md" nowrap>char *&nbsp;</td>
396           <td class="mdname" nowrap>&nbsp; <em>host</em></td>
397         </tr>
398         <tr>
399           <td></td>
400           <td class="md">)&nbsp;</td>
401           <td class="md" colspan="2"></td>
402         </tr>
403
404       </table>
405     </td>
406   </tr>
407 </table>
408 <table cellspacing=5 cellpadding=0 border=0>
409   <tr>
410     <td>
411       &nbsp;
412     </td>
413     <td>
414
415 <p>
416 Returns the next available packet and returns true if data is available.
417 <p>
418 Writes the servername the data came from to 'host'. If no data is available this function returns false. This function will automatically close broken links and reroute pathways, generating split messages on the network.    </td>
419   </tr>
420 </table>
421 <a name="a5" doxytag="connection::SendPacket"></a><p>
422 <table width="100%" cellpadding="2" cellspacing="0" border="0">
423   <tr>
424     <td class="md">
425       <table cellpadding="0" cellspacing="0" border="0">
426         <tr>
427           <td class="md" nowrap valign="top"> bool connection::SendPacket </td>
428           <td class="md" valign="top">(&nbsp;</td>
429           <td class="md" nowrap valign="top">char *&nbsp;</td>
430           <td class="mdname" nowrap>&nbsp; <em>message</em>, </td>
431         </tr>
432         <tr>
433           <td></td>
434           <td></td>
435           <td class="md" nowrap>const char *&nbsp;</td>
436           <td class="mdname" nowrap>&nbsp; <em>host</em></td>
437         </tr>
438         <tr>
439           <td></td>
440           <td class="md">)&nbsp;</td>
441           <td class="md" colspan="2"></td>
442         </tr>
443
444       </table>
445     </td>
446   </tr>
447 </table>
448 <table cellspacing=5 cellpadding=0 border=0>
449   <tr>
450     <td>
451       &nbsp;
452     </td>
453     <td>
454
455 <p>
456 Send a message to a server by name, if the server is unavailable directly route the packet via another server If the server still cannot be reached after attempting to route the message remotely, returns false.
457 <p>
458     </td>
459   </tr>
460 </table>
461 <a name="a4" doxytag="connection::TerminateLink"></a><p>
462 <table width="100%" cellpadding="2" cellspacing="0" border="0">
463   <tr>
464     <td class="md">
465       <table cellpadding="0" cellspacing="0" border="0">
466         <tr>
467           <td class="md" nowrap valign="top"> void connection::TerminateLink </td>
468           <td class="md" valign="top">(&nbsp;</td>
469           <td class="md" nowrap valign="top">char *&nbsp;</td>
470           <td class="mdname1" valign="top" nowrap>&nbsp; <em>targethost</em>          </td>
471           <td class="md" valign="top">)&nbsp;</td>
472           <td class="md" nowrap></td>
473         </tr>
474
475       </table>
476     </td>
477   </tr>
478 </table>
479 <table cellspacing=5 cellpadding=0 border=0>
480   <tr>
481     <td>
482       &nbsp;
483     </td>
484     <td>
485
486 <p>
487 Terminate a link to 'targethost' by calling the <a class="el" href="classircd__connector.html#a13">ircd_connector::CloseConnection</a> method.
488 <p>
489     </td>
490   </tr>
491 </table>
492 <hr><h2>Member Data Documentation</h2>
493 <a name="m4" doxytag="connection::bytes_in"></a><p>
494 <table width="100%" cellpadding="2" cellspacing="0" border="0">
495   <tr>
496     <td class="md">
497       <table cellpadding="0" cellspacing="0" border="0">
498         <tr>
499           <td class="md" nowrap valign="top"> long connection::bytes_in
500       </table>
501     </td>
502   </tr>
503 </table>
504 <table cellspacing=5 cellpadding=0 border=0>
505   <tr>
506     <td>
507       &nbsp;
508     </td>
509     <td>
510
511 <p>
512 Stats counter for bytes inbound.
513 <p>
514
515 <p>
516 Definition at line <a class="el" href="connection_8h-source.html#l00182">182</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
517 <p>
518 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
519   </tr>
520 </table>
521 <a name="m5" doxytag="connection::bytes_out"></a><p>
522 <table width="100%" cellpadding="2" cellspacing="0" border="0">
523   <tr>
524     <td class="md">
525       <table cellpadding="0" cellspacing="0" border="0">
526         <tr>
527           <td class="md" nowrap valign="top"> long connection::bytes_out
528       </table>
529     </td>
530   </tr>
531 </table>
532 <table cellspacing=5 cellpadding=0 border=0>
533   <tr>
534     <td>
535       &nbsp;
536     </td>
537     <td>
538
539 <p>
540 Stats counter for bytes outbound.
541 <p>
542
543 <p>
544 Definition at line <a class="el" href="connection_8h-source.html#l00186">186</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
545 <p>
546 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
547   </tr>
548 </table>
549 <a name="m6" doxytag="connection::cmds_in"></a><p>
550 <table width="100%" cellpadding="2" cellspacing="0" border="0">
551   <tr>
552     <td class="md">
553       <table cellpadding="0" cellspacing="0" border="0">
554         <tr>
555           <td class="md" nowrap valign="top"> long connection::cmds_in
556       </table>
557     </td>
558   </tr>
559 </table>
560 <table cellspacing=5 cellpadding=0 border=0>
561   <tr>
562     <td>
563       &nbsp;
564     </td>
565     <td>
566
567 <p>
568 Stats counter for commands inbound.
569 <p>
570
571 <p>
572 Definition at line <a class="el" href="connection_8h-source.html#l00190">190</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
573 <p>
574 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
575   </tr>
576 </table>
577 <a name="m7" doxytag="connection::cmds_out"></a><p>
578 <table width="100%" cellpadding="2" cellspacing="0" border="0">
579   <tr>
580     <td class="md">
581       <table cellpadding="0" cellspacing="0" border="0">
582         <tr>
583           <td class="md" nowrap valign="top"> long connection::cmds_out
584       </table>
585     </td>
586   </tr>
587 </table>
588 <table cellspacing=5 cellpadding=0 border=0>
589   <tr>
590     <td>
591       &nbsp;
592     </td>
593     <td>
594
595 <p>
596 Stats counter for commands outbound.
597 <p>
598
599 <p>
600 Definition at line <a class="el" href="connection_8h-source.html#l00194">194</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
601 <p>
602 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
603   </tr>
604 </table>
605 <a name="m18" doxytag="connection::connectors"></a><p>
606 <table width="100%" cellpadding="2" cellspacing="0" border="0">
607   <tr>
608     <td class="md">
609       <table cellpadding="0" cellspacing="0" border="0">
610         <tr>
611           <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classircd__connector.html">ircd_connector</a>&gt; connection::connectors
612       </table>
613     </td>
614   </tr>
615 </table>
616 <table cellspacing=5 cellpadding=0 border=0>
617   <tr>
618     <td>
619       &nbsp;
620     </td>
621     <td>
622
623 <p>
624 With a serverrec, this is a list of all established server connections.
625 <p>
626 With a userrec this is unused.
627 <p>
628 Definition at line <a class="el" href="connection_8h-source.html#l00241">241</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
629   </tr>
630 </table>
631 <a name="m0" doxytag="connection::fd"></a><p>
632 <table width="100%" cellpadding="2" cellspacing="0" border="0">
633   <tr>
634     <td class="md">
635       <table cellpadding="0" cellspacing="0" border="0">
636         <tr>
637           <td class="md" nowrap valign="top"> int connection::fd
638       </table>
639     </td>
640   </tr>
641 </table>
642 <table cellspacing=5 cellpadding=0 border=0>
643   <tr>
644     <td>
645       &nbsp;
646     </td>
647     <td>
648
649 <p>
650 File descriptor of the connection.
651 <p>
652
653 <p>
654 Definition at line <a class="el" href="connection_8h-source.html#l00166">166</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
655 <p>
656 Referenced by <a class="el" href="modules_8cpp-source.html#l00222">Server::SendTo()</a>, <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
657   </tr>
658 </table>
659 <a name="m8" doxytag="connection::haspassed"></a><p>
660 <table width="100%" cellpadding="2" cellspacing="0" border="0">
661   <tr>
662     <td class="md">
663       <table cellpadding="0" cellspacing="0" border="0">
664         <tr>
665           <td class="md" nowrap valign="top"> bool connection::haspassed
666       </table>
667     </td>
668   </tr>
669 </table>
670 <table cellspacing=5 cellpadding=0 border=0>
671   <tr>
672     <td>
673       &nbsp;
674     </td>
675     <td>
676
677 <p>
678 True if server/user has authenticated, false if otherwise.
679 <p>
680
681 <p>
682 Definition at line <a class="el" href="connection_8h-source.html#l00198">198</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
683 <p>
684 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
685   </tr>
686 </table>
687 <a name="m1" doxytag="connection::host"></a><p>
688 <table width="100%" cellpadding="2" cellspacing="0" border="0">
689   <tr>
690     <td class="md">
691       <table cellpadding="0" cellspacing="0" border="0">
692         <tr>
693           <td class="md" nowrap valign="top"> char connection::host[256]
694       </table>
695     </td>
696   </tr>
697 </table>
698 <table cellspacing=5 cellpadding=0 border=0>
699   <tr>
700     <td>
701       &nbsp;
702     </td>
703     <td>
704
705 <p>
706 Hostname of connection.
707 <p>
708 Not used if this is a serverrec
709 <p>
710 Definition at line <a class="el" href="connection_8h-source.html#l00170">170</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
711   </tr>
712 </table>
713 <a name="m14" doxytag="connection::idle_lastmsg"></a><p>
714 <table width="100%" cellpadding="2" cellspacing="0" border="0">
715   <tr>
716     <td class="md">
717       <table cellpadding="0" cellspacing="0" border="0">
718         <tr>
719           <td class="md" nowrap valign="top"> time_t connection::idle_lastmsg
720       </table>
721     </td>
722   </tr>
723 </table>
724 <table cellspacing=5 cellpadding=0 border=0>
725   <tr>
726     <td>
727       &nbsp;
728     </td>
729     <td>
730
731 <p>
732 Time that the connection last sent data, used to calculate idle time.
733 <p>
734
735 <p>
736 Definition at line <a class="el" href="connection_8h-source.html#l00224">224</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
737 <p>
738 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
739   </tr>
740 </table>
741 <a name="m3" doxytag="connection::inbuf"></a><p>
742 <table width="100%" cellpadding="2" cellspacing="0" border="0">
743   <tr>
744     <td class="md">
745       <table cellpadding="0" cellspacing="0" border="0">
746         <tr>
747           <td class="md" nowrap valign="top"> char connection::inbuf[MAXBUF]
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 Inbuf of connection.
761 <p>
762 Only used for userrec
763 <p>
764 Definition at line <a class="el" href="connection_8h-source.html#l00178">178</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
765   </tr>
766 </table>
767 <a name="m16" doxytag="connection::internal_addr"></a><p>
768 <table width="100%" cellpadding="2" cellspacing="0" border="0">
769   <tr>
770     <td class="md">
771       <table cellpadding="0" cellspacing="0" border="0">
772         <tr>
773           <td class="md" nowrap valign="top"> char connection::internal_addr[MAXBUF]
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 Unused, will be removed in a future alpha/beta.
787 <p>
788
789 <p>
790 Definition at line <a class="el" href="connection_8h-source.html#l00232">232</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
791   </tr>
792 </table>
793 <a name="m17" doxytag="connection::internal_port"></a><p>
794 <table width="100%" cellpadding="2" cellspacing="0" border="0">
795   <tr>
796     <td class="md">
797       <table cellpadding="0" cellspacing="0" border="0">
798         <tr>
799           <td class="md" nowrap valign="top"> int connection::internal_port
800       </table>
801     </td>
802   </tr>
803 </table>
804 <table cellspacing=5 cellpadding=0 border=0>
805   <tr>
806     <td>
807       &nbsp;
808     </td>
809     <td>
810
811 <p>
812 Unused, will be removed in a future alpha/beta.
813 <p>
814
815 <p>
816 Definition at line <a class="el" href="connection_8h-source.html#l00236">236</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
817   </tr>
818 </table>
819 <a name="m2" doxytag="connection::ip"></a><p>
820 <table width="100%" cellpadding="2" cellspacing="0" border="0">
821   <tr>
822     <td class="md">
823       <table cellpadding="0" cellspacing="0" border="0">
824         <tr>
825           <td class="md" nowrap valign="top"> char connection::ip[32]
826       </table>
827     </td>
828   </tr>
829 </table>
830 <table cellspacing=5 cellpadding=0 border=0>
831   <tr>
832     <td>
833       &nbsp;
834     </td>
835     <td>
836
837 <p>
838 IP of connection.
839 <p>
840 Reserved for future use.
841 <p>
842 Definition at line <a class="el" href="connection_8h-source.html#l00174">174</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
843   </tr>
844 </table>
845 <a name="m12" doxytag="connection::lastping"></a><p>
846 <table width="100%" cellpadding="2" cellspacing="0" border="0">
847   <tr>
848     <td class="md">
849       <table cellpadding="0" cellspacing="0" border="0">
850         <tr>
851           <td class="md" nowrap valign="top"> time_t connection::lastping
852       </table>
853     </td>
854   </tr>
855 </table>
856 <table cellspacing=5 cellpadding=0 border=0>
857   <tr>
858     <td>
859       &nbsp;
860     </td>
861     <td>
862
863 <p>
864 Time the connection was last pinged.
865 <p>
866
867 <p>
868 Definition at line <a class="el" href="connection_8h-source.html#l00216">216</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
869 <p>
870 Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
871   </tr>
872 </table>
873 <a name="m15" doxytag="connection::nping"></a><p>
874 <table width="100%" cellpadding="2" cellspacing="0" border="0">
875   <tr>
876     <td class="md">
877       <table cellpadding="0" cellspacing="0" border="0">
878         <tr>
879           <td class="md" nowrap valign="top"> time_t connection::nping
880       </table>
881     </td>
882   </tr>
883 </table>
884 <table cellspacing=5 cellpadding=0 border=0>
885   <tr>
886     <td>
887       &nbsp;
888     </td>
889     <td>
890
891 <p>
892 Used by PING checks with clients.
893 <p>
894
895 <p>
896 Definition at line <a class="el" href="connection_8h-source.html#l00228">228</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
897 <p>
898 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
899   </tr>
900 </table>
901 <a name="m9" doxytag="connection::port"></a><p>
902 <table width="100%" cellpadding="2" cellspacing="0" border="0">
903   <tr>
904     <td class="md">
905       <table cellpadding="0" cellspacing="0" border="0">
906         <tr>
907           <td class="md" nowrap valign="top"> int connection::port
908       </table>
909     </td>
910   </tr>
911 </table>
912 <table cellspacing=5 cellpadding=0 border=0>
913   <tr>
914     <td>
915       &nbsp;
916     </td>
917     <td>
918
919 <p>
920 Port number For a userrec, this is the port they connected to the network on.
921 <p>
922 For a serverrec this is the current listening port of the serverrec object.
923 <p>
924 Definition at line <a class="el" href="connection_8h-source.html#l00204">204</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
925 <p>
926 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
927   </tr>
928 </table>
929 <a name="m10" doxytag="connection::registered"></a><p>
930 <table width="100%" cellpadding="2" cellspacing="0" border="0">
931   <tr>
932     <td class="md">
933       <table cellpadding="0" cellspacing="0" border="0">
934         <tr>
935           <td class="md" nowrap valign="top"> int connection::registered
936       </table>
937     </td>
938   </tr>
939 </table>
940 <table cellspacing=5 cellpadding=0 border=0>
941   <tr>
942     <td>
943       &nbsp;
944     </td>
945     <td>
946
947 <p>
948 Used by userrec to indicate the registration status of the connection.
949 <p>
950
951 <p>
952 Definition at line <a class="el" href="connection_8h-source.html#l00208">208</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
953 <p>
954 Referenced by <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
955   </tr>
956 </table>
957 <a name="m13" doxytag="connection::signon"></a><p>
958 <table width="100%" cellpadding="2" cellspacing="0" border="0">
959   <tr>
960     <td class="md">
961       <table cellpadding="0" cellspacing="0" border="0">
962         <tr>
963           <td class="md" nowrap valign="top"> time_t connection::signon
964       </table>
965     </td>
966   </tr>
967 </table>
968 <table cellspacing=5 cellpadding=0 border=0>
969   <tr>
970     <td>
971       &nbsp;
972     </td>
973     <td>
974
975 <p>
976 Time the connection was created, set in the constructor.
977 <p>
978
979 <p>
980 Definition at line <a class="el" href="connection_8h-source.html#l00220">220</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
981 <p>
982 Referenced by <a class="el" href="servers_8cpp-source.html#l00012">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00011">userrec::userrec()</a>.    </td>
983   </tr>
984 </table>
985 <a name="m11" doxytag="connection::state"></a><p>
986 <table width="100%" cellpadding="2" cellspacing="0" border="0">
987   <tr>
988     <td class="md">
989       <table cellpadding="0" cellspacing="0" border="0">
990         <tr>
991           <td class="md" nowrap valign="top"> short int connection::state
992       </table>
993     </td>
994   </tr>
995 </table>
996 <table cellspacing=5 cellpadding=0 border=0>
997   <tr>
998     <td>
999       &nbsp;
1000     </td>
1001     <td>
1002
1003 <p>
1004 Reserved for future use.
1005 <p>
1006
1007 <p>
1008 Definition at line <a class="el" href="connection_8h-source.html#l00212">212</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
1009   </tr>
1010 </table>
1011 <hr>The documentation for this class was generated from the following file:<ul>
1012 <li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
1013 <hr><address style="align: right;"><small>Generated on Sun Apr 25 00:24:20 2004 for InspIRCd by
1014 <a href="http://www.doxygen.org/index.html">
1015 <img src="doxygen.png" alt="doxygen" align="middle" border=0 
1016 width=110 height=53></a>1.3-rc3 </small></address>
1017 </body>
1018 </html>