]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - docs/module-doc/classconnection.html
Re-added the dot graphs again
[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>InspIRCd: connection 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>connection Class Reference</h1>Please note: classes serverrec and userrec both inherit from class connection.  
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 Inheritance diagram for connection:<p><center><img src="classconnection__inherit__graph.gif" border="0" usemap="#connection__inherit__map" alt="Inheritance graph"></center>
14 <map name="connection__inherit__map">
15 <area href="classserverrec.html" shape="rect" coords="8,232,85,258" alt="">
16 <area href="classuserrec.html" shape="rect" coords="109,232,176,258" alt="">
17 <area href="classExtensible.html" shape="rect" coords="53,82,136,109" alt="">
18 <area href="classclassbase.html" shape="rect" coords="54,8,134,34" 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="classExtensible.html" shape="rect" coords="52,8,134,34" 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 class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a0">connection</a> ()</td></tr>
28
29 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. </em> <a href="#a0"></a><em><br><br></td></tr>
30 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a1">CreateListener</a> (char *<a class="el" href="classconnection.html#o1">host</a>, int p)</td></tr>
31
32 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a listening socket on 'host' using port number 'p'. </em> <a href="#a1"></a><em><br><br></td></tr>
33 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a2">BeginLink</a> (char *targethost, int <a class="el" href="classconnection.html#o8">port</a>, char *password, char *servername, int myport)</td></tr>
34
35 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Begin an outbound link to another ircd at targethost. </em> <a href="#a2"></a><em><br><br></td></tr>
36 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a3">MeshCookie</a> (char *targethost, int <a class="el" href="classconnection.html#o8">port</a>, unsigned long cookie, char *servername)</td></tr>
37
38 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Begin an outbound mesh link to another ircd on a network you are already an authenticated member of. </em> <a href="#a3"></a><em><br><br></td></tr>
39 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a4">TerminateLink</a> (char *targethost)</td></tr>
40
41 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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><br><br></td></tr>
42 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a5">SendPacket</a> (char *message, const char *<a class="el" href="classconnection.html#o1">host</a>)</td></tr>
43
44 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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><br><br></td></tr>
45 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" 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#o1">host</a>)</td></tr>
46
47 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the next available packet and returns true if data is available. </em> <a href="#a6"></a><em><br><br></td></tr>
48 <tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classircd__connector.html">ircd_connector</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a7">FindHost</a> (std::string <a class="el" href="classconnection.html#o1">host</a>)</td></tr>
49
50 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">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><br><br></td></tr>
51 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#a8">AddIncoming</a> (int <a class="el" href="classconnection.html#o0">fd</a>, char *targethost, int sourceport)</td></tr>
52
53 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add an incoming connection to the connection pool. </em> <a href="#a8"></a><em><br><br></td></tr>
54 <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
55 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o0">fd</a></td></tr>
56
57 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor of the connection. </em> <a href="#o0"></a><em><br><br></td></tr>
58 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o1">host</a> [160]</td></tr>
59
60 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Hostname of connection. </em> <a href="#o1"></a><em><br><br></td></tr>
61 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o2">ip</a> [16]</td></tr>
62
63 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IP of connection. </em> <a href="#o2"></a><em><br><br></td></tr>
64 <tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o3">bytes_in</a></td></tr>
65
66 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes inbound. </em> <a href="#o3"></a><em><br><br></td></tr>
67 <tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o4">bytes_out</a></td></tr>
68
69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for bytes outbound. </em> <a href="#o4"></a><em><br><br></td></tr>
70 <tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o5">cmds_in</a></td></tr>
71
72 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands inbound. </em> <a href="#o5"></a><em><br><br></td></tr>
73 <tr><td class="memItemLeft" nowrap align=right valign=top>long&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o6">cmds_out</a></td></tr>
74
75 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Stats counter for commands outbound. </em> <a href="#o6"></a><em><br><br></td></tr>
76 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o7">haspassed</a></td></tr>
77
78 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True if server/user has authenticated, false if otherwise. </em> <a href="#o7"></a><em><br><br></td></tr>
79 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o8">port</a></td></tr>
80
81 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Port number For a userrec, this is the port they connected to the network on. </em> <a href="#o8"></a><em><br><br></td></tr>
82 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o9">registered</a></td></tr>
83
84 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by userrec to indicate the registration status of the connection. </em> <a href="#o9"></a><em><br><br></td></tr>
85 <tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o10">lastping</a></td></tr>
86
87 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was last pinged. </em> <a href="#o10"></a><em><br><br></td></tr>
88 <tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o11">signon</a></td></tr>
89
90 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time the connection was created, set in the constructor. </em> <a href="#o11"></a><em><br><br></td></tr>
91 <tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o12">idle_lastmsg</a></td></tr>
92
93 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Time that the connection last sent data, used to calculate idle time. </em> <a href="#o12"></a><em><br><br></td></tr>
94 <tr><td class="memItemLeft" nowrap align=right valign=top>time_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o13">nping</a></td></tr>
95
96 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Used by PING checks with clients. </em> <a href="#o13"></a><em><br><br></td></tr>
97 <tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classircd__connector.html">ircd_connector</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classconnection.html#o14">connectors</a></td></tr>
98
99 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">With a serverrec, this is a list of all established server connections. </em> <a href="#o14"></a><em><br><br></td></tr>
100 </table>
101 <hr><a name="_details"></a><h2>Detailed Description</h2>
102 Please note: classes serverrec and userrec both inherit from class connection. 
103 <p>
104
105 <p>
106 Definition at line <a class="el" href="connection_8h-source.html#l00210">210</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
107 <a name="a0" doxytag="connection::connection"></a><p>
108 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
109   <tr>
110     <td class="mdRow">
111       <table cellpadding="0" cellspacing="0" border="0">
112         <tr>
113           <td class="md" nowrap valign="top"> connection::connection </td>
114           <td class="md" valign="top">(&nbsp;</td>
115           <td class="mdname1" valign="top" nowrap>          </td>
116           <td class="md" valign="top">&nbsp;)&nbsp;</td>
117           <td class="md" nowrap></td>
118         </tr>
119
120       </table>
121     </td>
122   </tr>
123 </table>
124 <table cellspacing=5 cellpadding=0 border=0>
125   <tr>
126     <td>
127       &nbsp;
128     </td>
129     <td>
130
131 <p>
132 Default constructor. 
133 <p>
134     </td>
135   </tr>
136 </table>
137 <hr><h2>Member Function Documentation</h2>
138 <a name="a8" doxytag="connection::AddIncoming"></a><p>
139 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
140   <tr>
141     <td class="mdRow">
142       <table cellpadding="0" cellspacing="0" border="0">
143         <tr>
144           <td class="md" nowrap valign="top"> bool connection::AddIncoming </td>
145           <td class="md" valign="top">(&nbsp;</td>
146           <td class="md" nowrap valign="top">int&nbsp;</td>
147           <td class="mdname" nowrap> <em>fd</em>, </td>
148         </tr>
149         <tr>
150           <td></td>
151           <td></td>
152           <td class="md" nowrap>char *&nbsp;</td>
153           <td class="mdname" nowrap> <em>targethost</em>, </td>
154         </tr>
155         <tr>
156           <td></td>
157           <td></td>
158           <td class="md" nowrap>int&nbsp;</td>
159           <td class="mdname" nowrap> <em>sourceport</em></td>
160         </tr>
161         <tr>
162           <td></td>
163           <td class="md">)&nbsp;</td>
164           <td class="md" colspan="2"></td>
165         </tr>
166
167       </table>
168     </td>
169   </tr>
170 </table>
171 <table cellspacing=5 cellpadding=0 border=0>
172   <tr>
173     <td>
174       &nbsp;
175     </td>
176     <td>
177
178 <p>
179 Add an incoming connection to the connection pool. 
180 <p>
181 (reserved for core use)    </td>
182   </tr>
183 </table>
184 <a name="a2" doxytag="connection::BeginLink"></a><p>
185 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
186   <tr>
187     <td class="mdRow">
188       <table cellpadding="0" cellspacing="0" border="0">
189         <tr>
190           <td class="md" nowrap valign="top"> bool connection::BeginLink </td>
191           <td class="md" valign="top">(&nbsp;</td>
192           <td class="md" nowrap valign="top">char *&nbsp;</td>
193           <td class="mdname" nowrap> <em>targethost</em>, </td>
194         </tr>
195         <tr>
196           <td></td>
197           <td></td>
198           <td class="md" nowrap>int&nbsp;</td>
199           <td class="mdname" nowrap> <em>port</em>, </td>
200         </tr>
201         <tr>
202           <td></td>
203           <td></td>
204           <td class="md" nowrap>char *&nbsp;</td>
205           <td class="mdname" nowrap> <em>password</em>, </td>
206         </tr>
207         <tr>
208           <td></td>
209           <td></td>
210           <td class="md" nowrap>char *&nbsp;</td>
211           <td class="mdname" nowrap> <em>servername</em>, </td>
212         </tr>
213         <tr>
214           <td></td>
215           <td></td>
216           <td class="md" nowrap>int&nbsp;</td>
217           <td class="mdname" nowrap> <em>myport</em></td>
218         </tr>
219         <tr>
220           <td></td>
221           <td class="md">)&nbsp;</td>
222           <td class="md" colspan="2"></td>
223         </tr>
224
225       </table>
226     </td>
227   </tr>
228 </table>
229 <table cellspacing=5 cellpadding=0 border=0>
230   <tr>
231     <td>
232       &nbsp;
233     </td>
234     <td>
235
236 <p>
237 Begin an outbound link to another ircd at targethost. 
238 <p>
239     </td>
240   </tr>
241 </table>
242 <a name="a1" doxytag="connection::CreateListener"></a><p>
243 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
244   <tr>
245     <td class="mdRow">
246       <table cellpadding="0" cellspacing="0" border="0">
247         <tr>
248           <td class="md" nowrap valign="top"> bool connection::CreateListener </td>
249           <td class="md" valign="top">(&nbsp;</td>
250           <td class="md" nowrap valign="top">char *&nbsp;</td>
251           <td class="mdname" nowrap> <em>host</em>, </td>
252         </tr>
253         <tr>
254           <td></td>
255           <td></td>
256           <td class="md" nowrap>int&nbsp;</td>
257           <td class="mdname" nowrap> <em>p</em></td>
258         </tr>
259         <tr>
260           <td></td>
261           <td class="md">)&nbsp;</td>
262           <td class="md" colspan="2"></td>
263         </tr>
264
265       </table>
266     </td>
267   </tr>
268 </table>
269 <table cellspacing=5 cellpadding=0 border=0>
270   <tr>
271     <td>
272       &nbsp;
273     </td>
274     <td>
275
276 <p>
277 Create a listening socket on 'host' using port number 'p'. 
278 <p>
279     </td>
280   </tr>
281 </table>
282 <a name="a7" doxytag="connection::FindHost"></a><p>
283 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
284   <tr>
285     <td class="mdRow">
286       <table cellpadding="0" cellspacing="0" border="0">
287         <tr>
288           <td class="md" nowrap valign="top"> <a class="el" href="classircd__connector.html">ircd_connector</a>* connection::FindHost </td>
289           <td class="md" valign="top">(&nbsp;</td>
290           <td class="md" nowrap valign="top">std::string&nbsp;</td>
291           <td class="mdname1" valign="top" nowrap> <em>host</em>          </td>
292           <td class="md" valign="top">&nbsp;)&nbsp;</td>
293           <td class="md" nowrap></td>
294         </tr>
295
296       </table>
297     </td>
298   </tr>
299 </table>
300 <table cellspacing=5 cellpadding=0 border=0>
301   <tr>
302     <td>
303       &nbsp;
304     </td>
305     <td>
306
307 <p>
308 Find the <a class="el" href="classircd__connector.html">ircd_connector</a> oject related to a certain servername given in 'host'. 
309 <p>
310     </td>
311   </tr>
312 </table>
313 <a name="a3" doxytag="connection::MeshCookie"></a><p>
314 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
315   <tr>
316     <td class="mdRow">
317       <table cellpadding="0" cellspacing="0" border="0">
318         <tr>
319           <td class="md" nowrap valign="top"> bool connection::MeshCookie </td>
320           <td class="md" valign="top">(&nbsp;</td>
321           <td class="md" nowrap valign="top">char *&nbsp;</td>
322           <td class="mdname" nowrap> <em>targethost</em>, </td>
323         </tr>
324         <tr>
325           <td></td>
326           <td></td>
327           <td class="md" nowrap>int&nbsp;</td>
328           <td class="mdname" nowrap> <em>port</em>, </td>
329         </tr>
330         <tr>
331           <td></td>
332           <td></td>
333           <td class="md" nowrap>unsigned long&nbsp;</td>
334           <td class="mdname" nowrap> <em>cookie</em>, </td>
335         </tr>
336         <tr>
337           <td></td>
338           <td></td>
339           <td class="md" nowrap>char *&nbsp;</td>
340           <td class="mdname" nowrap> <em>servername</em></td>
341         </tr>
342         <tr>
343           <td></td>
344           <td class="md">)&nbsp;</td>
345           <td class="md" colspan="2"></td>
346         </tr>
347
348       </table>
349     </td>
350   </tr>
351 </table>
352 <table cellspacing=5 cellpadding=0 border=0>
353   <tr>
354     <td>
355       &nbsp;
356     </td>
357     <td>
358
359 <p>
360 Begin an outbound mesh link to another ircd on a network you are already an authenticated member of. 
361 <p>
362     </td>
363   </tr>
364 </table>
365 <a name="a6" doxytag="connection::RecvPacket"></a><p>
366 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
367   <tr>
368     <td class="mdRow">
369       <table cellpadding="0" cellspacing="0" border="0">
370         <tr>
371           <td class="md" nowrap valign="top"> bool connection::RecvPacket </td>
372           <td class="md" valign="top">(&nbsp;</td>
373           <td class="md" nowrap valign="top">std::deque&lt; std::string &gt; &amp;&nbsp;</td>
374           <td class="mdname" nowrap> <em>messages</em>, </td>
375         </tr>
376         <tr>
377           <td></td>
378           <td></td>
379           <td class="md" nowrap>char *&nbsp;</td>
380           <td class="mdname" nowrap> <em>host</em></td>
381         </tr>
382         <tr>
383           <td></td>
384           <td class="md">)&nbsp;</td>
385           <td class="md" colspan="2"></td>
386         </tr>
387
388       </table>
389     </td>
390   </tr>
391 </table>
392 <table cellspacing=5 cellpadding=0 border=0>
393   <tr>
394     <td>
395       &nbsp;
396     </td>
397     <td>
398
399 <p>
400 Returns the next available packet and returns true if data is available. 
401 <p>
402 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>
403   </tr>
404 </table>
405 <a name="a5" doxytag="connection::SendPacket"></a><p>
406 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
407   <tr>
408     <td class="mdRow">
409       <table cellpadding="0" cellspacing="0" border="0">
410         <tr>
411           <td class="md" nowrap valign="top"> bool connection::SendPacket </td>
412           <td class="md" valign="top">(&nbsp;</td>
413           <td class="md" nowrap valign="top">char *&nbsp;</td>
414           <td class="mdname" nowrap> <em>message</em>, </td>
415         </tr>
416         <tr>
417           <td></td>
418           <td></td>
419           <td class="md" nowrap>const char *&nbsp;</td>
420           <td class="mdname" nowrap> <em>host</em></td>
421         </tr>
422         <tr>
423           <td></td>
424           <td class="md">)&nbsp;</td>
425           <td class="md" colspan="2"></td>
426         </tr>
427
428       </table>
429     </td>
430   </tr>
431 </table>
432 <table cellspacing=5 cellpadding=0 border=0>
433   <tr>
434     <td>
435       &nbsp;
436     </td>
437     <td>
438
439 <p>
440 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. 
441 <p>
442     </td>
443   </tr>
444 </table>
445 <a name="a4" doxytag="connection::TerminateLink"></a><p>
446 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
447   <tr>
448     <td class="mdRow">
449       <table cellpadding="0" cellspacing="0" border="0">
450         <tr>
451           <td class="md" nowrap valign="top"> void connection::TerminateLink </td>
452           <td class="md" valign="top">(&nbsp;</td>
453           <td class="md" nowrap valign="top">char *&nbsp;</td>
454           <td class="mdname1" valign="top" nowrap> <em>targethost</em>          </td>
455           <td class="md" valign="top">&nbsp;)&nbsp;</td>
456           <td class="md" nowrap></td>
457         </tr>
458
459       </table>
460     </td>
461   </tr>
462 </table>
463 <table cellspacing=5 cellpadding=0 border=0>
464   <tr>
465     <td>
466       &nbsp;
467     </td>
468     <td>
469
470 <p>
471 Terminate a link to 'targethost' by calling the <a class="el" href="classircd__connector.html#a13">ircd_connector::CloseConnection</a> method. 
472 <p>
473     </td>
474   </tr>
475 </table>
476 <hr><h2>Member Data Documentation</h2>
477 <a name="o3" doxytag="connection::bytes_in"></a><p>
478 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
479   <tr>
480     <td class="mdRow">
481       <table cellpadding="0" cellspacing="0" border="0">
482         <tr>
483           <td class="md" nowrap valign="top"> long <a class="el" href="classconnection.html#o3">connection::bytes_in</a>
484       </table>
485     </td>
486   </tr>
487 </table>
488 <table cellspacing=5 cellpadding=0 border=0>
489   <tr>
490     <td>
491       &nbsp;
492     </td>
493     <td>
494
495 <p>
496 Stats counter for bytes inbound. 
497 <p>
498
499 <p>
500 Definition at line <a class="el" href="connection_8h-source.html#l00227">227</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
501 <p>
502 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
503   </tr>
504 </table>
505 <a name="o4" doxytag="connection::bytes_out"></a><p>
506 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
507   <tr>
508     <td class="mdRow">
509       <table cellpadding="0" cellspacing="0" border="0">
510         <tr>
511           <td class="md" nowrap valign="top"> long <a class="el" href="classconnection.html#o4">connection::bytes_out</a>
512       </table>
513     </td>
514   </tr>
515 </table>
516 <table cellspacing=5 cellpadding=0 border=0>
517   <tr>
518     <td>
519       &nbsp;
520     </td>
521     <td>
522
523 <p>
524 Stats counter for bytes outbound. 
525 <p>
526
527 <p>
528 Definition at line <a class="el" href="connection_8h-source.html#l00231">231</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
529 <p>
530 Referenced by <a class="el" href="users_8cpp-source.html#l00241">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
531   </tr>
532 </table>
533 <a name="o5" doxytag="connection::cmds_in"></a><p>
534 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
535   <tr>
536     <td class="mdRow">
537       <table cellpadding="0" cellspacing="0" border="0">
538         <tr>
539           <td class="md" nowrap valign="top"> long <a class="el" href="classconnection.html#o5">connection::cmds_in</a>
540       </table>
541     </td>
542   </tr>
543 </table>
544 <table cellspacing=5 cellpadding=0 border=0>
545   <tr>
546     <td>
547       &nbsp;
548     </td>
549     <td>
550
551 <p>
552 Stats counter for commands inbound. 
553 <p>
554
555 <p>
556 Definition at line <a class="el" href="connection_8h-source.html#l00235">235</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
557 <p>
558 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
559   </tr>
560 </table>
561 <a name="o6" doxytag="connection::cmds_out"></a><p>
562 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
563   <tr>
564     <td class="mdRow">
565       <table cellpadding="0" cellspacing="0" border="0">
566         <tr>
567           <td class="md" nowrap valign="top"> long <a class="el" href="classconnection.html#o6">connection::cmds_out</a>
568       </table>
569     </td>
570   </tr>
571 </table>
572 <table cellspacing=5 cellpadding=0 border=0>
573   <tr>
574     <td>
575       &nbsp;
576     </td>
577     <td>
578
579 <p>
580 Stats counter for commands outbound. 
581 <p>
582
583 <p>
584 Definition at line <a class="el" href="connection_8h-source.html#l00239">239</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
585 <p>
586 Referenced by <a class="el" href="users_8cpp-source.html#l00241">userrec::FlushWriteBuf()</a>, and <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
587   </tr>
588 </table>
589 <a name="o14" doxytag="connection::connectors"></a><p>
590 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
591   <tr>
592     <td class="mdRow">
593       <table cellpadding="0" cellspacing="0" border="0">
594         <tr>
595           <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classircd__connector.html">ircd_connector</a>&gt; <a class="el" href="classconnection.html#o14">connection::connectors</a>
596       </table>
597     </td>
598   </tr>
599 </table>
600 <table cellspacing=5 cellpadding=0 border=0>
601   <tr>
602     <td>
603       &nbsp;
604     </td>
605     <td>
606
607 <p>
608 With a serverrec, this is a list of all established server connections. 
609 <p>
610 With a userrec this is unused.
611 <p>
612 Definition at line <a class="el" href="connection_8h-source.html#l00274">274</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
613   </tr>
614 </table>
615 <a name="o0" doxytag="connection::fd"></a><p>
616 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
617   <tr>
618     <td class="mdRow">
619       <table cellpadding="0" cellspacing="0" border="0">
620         <tr>
621           <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o0">connection::fd</a>
622       </table>
623     </td>
624   </tr>
625 </table>
626 <table cellspacing=5 cellpadding=0 border=0>
627   <tr>
628     <td>
629       &nbsp;
630     </td>
631     <td>
632
633 <p>
634 File descriptor of the connection. 
635 <p>
636
637 <p>
638 Definition at line <a class="el" href="connection_8h-source.html#l00215">215</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
639 <p>
640 Referenced by <a class="el" href="modules_8cpp-source.html#l00967">ConfigReader::DumpErrors()</a>, <a class="el" href="modules_8cpp-source.html#l00700">Server::PseudoToUser()</a>, <a class="el" href="modules_8cpp-source.html#l00529">Server::SendTo()</a>, <a class="el" href="servers_8cpp-source.html#l00026">serverrec::serverrec()</a>, <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00681">Server::UserToPseudo()</a>.    </td>
641   </tr>
642 </table>
643 <a name="o7" doxytag="connection::haspassed"></a><p>
644 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
645   <tr>
646     <td class="mdRow">
647       <table cellpadding="0" cellspacing="0" border="0">
648         <tr>
649           <td class="md" nowrap valign="top"> bool <a class="el" href="classconnection.html#o7">connection::haspassed</a>
650       </table>
651     </td>
652   </tr>
653 </table>
654 <table cellspacing=5 cellpadding=0 border=0>
655   <tr>
656     <td>
657       &nbsp;
658     </td>
659     <td>
660
661 <p>
662 True if server/user has authenticated, false if otherwise. 
663 <p>
664
665 <p>
666 Definition at line <a class="el" href="connection_8h-source.html#l00243">243</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
667 <p>
668 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
669   </tr>
670 </table>
671 <a name="o1" doxytag="connection::host"></a><p>
672 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
673   <tr>
674     <td class="mdRow">
675       <table cellpadding="0" cellspacing="0" border="0">
676         <tr>
677           <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o1">connection::host</a>[160]
678       </table>
679     </td>
680   </tr>
681 </table>
682 <table cellspacing=5 cellpadding=0 border=0>
683   <tr>
684     <td>
685       &nbsp;
686     </td>
687     <td>
688
689 <p>
690 Hostname of connection. 
691 <p>
692 Not used if this is a serverrec
693 <p>
694 Definition at line <a class="el" href="connection_8h-source.html#l00219">219</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
695 <p>
696 Referenced by <a class="el" href="users_8cpp-source.html#l00068">userrec::GetFullRealHost()</a>, <a class="el" href="modules_8cpp-source.html#l00700">Server::PseudoToUser()</a>, <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>, and <a class="el" href="modules_8cpp-source.html#l00681">Server::UserToPseudo()</a>.    </td>
697   </tr>
698 </table>
699 <a name="o12" doxytag="connection::idle_lastmsg"></a><p>
700 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
701   <tr>
702     <td class="mdRow">
703       <table cellpadding="0" cellspacing="0" border="0">
704         <tr>
705           <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o12">connection::idle_lastmsg</a>
706       </table>
707     </td>
708   </tr>
709 </table>
710 <table cellspacing=5 cellpadding=0 border=0>
711   <tr>
712     <td>
713       &nbsp;
714     </td>
715     <td>
716
717 <p>
718 Time that the connection last sent data, used to calculate idle time. 
719 <p>
720
721 <p>
722 Definition at line <a class="el" href="connection_8h-source.html#l00265">265</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
723 <p>
724 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
725   </tr>
726 </table>
727 <a name="o2" doxytag="connection::ip"></a><p>
728 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
729   <tr>
730     <td class="mdRow">
731       <table cellpadding="0" cellspacing="0" border="0">
732         <tr>
733           <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o2">connection::ip</a>[16]
734       </table>
735     </td>
736   </tr>
737 </table>
738 <table cellspacing=5 cellpadding=0 border=0>
739   <tr>
740     <td>
741       &nbsp;
742     </td>
743     <td>
744
745 <p>
746 IP of connection. 
747 <p>
748
749 <p>
750 Definition at line <a class="el" href="connection_8h-source.html#l00223">223</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
751 <p>
752 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
753   </tr>
754 </table>
755 <a name="o10" doxytag="connection::lastping"></a><p>
756 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
757   <tr>
758     <td class="mdRow">
759       <table cellpadding="0" cellspacing="0" border="0">
760         <tr>
761           <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o10">connection::lastping</a>
762       </table>
763     </td>
764   </tr>
765 </table>
766 <table cellspacing=5 cellpadding=0 border=0>
767   <tr>
768     <td>
769       &nbsp;
770     </td>
771     <td>
772
773 <p>
774 Time the connection was last pinged. 
775 <p>
776
777 <p>
778 Definition at line <a class="el" href="connection_8h-source.html#l00257">257</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
779 <p>
780 Referenced by <a class="el" href="servers_8cpp-source.html#l00026">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
781   </tr>
782 </table>
783 <a name="o13" doxytag="connection::nping"></a><p>
784 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
785   <tr>
786     <td class="mdRow">
787       <table cellpadding="0" cellspacing="0" border="0">
788         <tr>
789           <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o13">connection::nping</a>
790       </table>
791     </td>
792   </tr>
793 </table>
794 <table cellspacing=5 cellpadding=0 border=0>
795   <tr>
796     <td>
797       &nbsp;
798     </td>
799     <td>
800
801 <p>
802 Used by PING checks with clients. 
803 <p>
804
805 <p>
806 Definition at line <a class="el" href="connection_8h-source.html#l00269">269</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
807 <p>
808 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
809   </tr>
810 </table>
811 <a name="o8" doxytag="connection::port"></a><p>
812 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
813   <tr>
814     <td class="mdRow">
815       <table cellpadding="0" cellspacing="0" border="0">
816         <tr>
817           <td class="md" nowrap valign="top"> int <a class="el" href="classconnection.html#o8">connection::port</a>
818       </table>
819     </td>
820   </tr>
821 </table>
822 <table cellspacing=5 cellpadding=0 border=0>
823   <tr>
824     <td>
825       &nbsp;
826     </td>
827     <td>
828
829 <p>
830 Port number For a userrec, this is the port they connected to the network on. 
831 <p>
832 For a serverrec this is the current listening port of the serverrec object.
833 <p>
834 Definition at line <a class="el" href="connection_8h-source.html#l00249">249</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
835 <p>
836 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
837   </tr>
838 </table>
839 <a name="o9" doxytag="connection::registered"></a><p>
840 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
841   <tr>
842     <td class="mdRow">
843       <table cellpadding="0" cellspacing="0" border="0">
844         <tr>
845           <td class="md" nowrap valign="top"> char <a class="el" href="classconnection.html#o9">connection::registered</a>
846       </table>
847     </td>
848   </tr>
849 </table>
850 <table cellspacing=5 cellpadding=0 border=0>
851   <tr>
852     <td>
853       &nbsp;
854     </td>
855     <td>
856
857 <p>
858 Used by userrec to indicate the registration status of the connection. 
859 <p>
860
861 <p>
862 Definition at line <a class="el" href="connection_8h-source.html#l00253">253</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
863 <p>
864 Referenced by <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
865   </tr>
866 </table>
867 <a name="o11" doxytag="connection::signon"></a><p>
868 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
869   <tr>
870     <td class="mdRow">
871       <table cellpadding="0" cellspacing="0" border="0">
872         <tr>
873           <td class="md" nowrap valign="top"> time_t <a class="el" href="classconnection.html#o11">connection::signon</a>
874       </table>
875     </td>
876   </tr>
877 </table>
878 <table cellspacing=5 cellpadding=0 border=0>
879   <tr>
880     <td>
881       &nbsp;
882     </td>
883     <td>
884
885 <p>
886 Time the connection was created, set in the constructor. 
887 <p>
888
889 <p>
890 Definition at line <a class="el" href="connection_8h-source.html#l00261">261</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.
891 <p>
892 Referenced by <a class="el" href="servers_8cpp-source.html#l00026">serverrec::serverrec()</a>, and <a class="el" href="users_8cpp-source.html#l00028">userrec::userrec()</a>.    </td>
893   </tr>
894 </table>
895 <hr>The documentation for this class was generated from the following file:<ul>
896 <li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
897 <hr size="1"><address style="align: right;"><small>Generated on Fri May 13 01:59:35 2005 for InspIRCd by
898 <a href="http://www.doxygen.org/index.html">
899 <img src="doxygen.png" alt="doxygen" align="middle" border=0 > 
900 </a>1.3.3 </small></address>
901 </body>
902 </html>