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