]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - docs/module-doc/classircd__connector.html
Re-added the dot graphs again
[user/henk/code/inspircd.git] / docs / module-doc / classircd__connector.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3 <title>InspIRCd: ircd_connector class Reference</title>
4 <link href="inspircd.css" rel="stylesheet" type="text/css">
5 </head><body>
6 <!-- Generated by Doxygen 1.3.3 -->
7 <div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Compound&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Compound&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a></div>
8 <h1>ircd_connector Class Reference</h1>Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds.  
9 <a href="#_details">More...</a>
10 <p>
11 <code>#include &lt;<a class="el" href="connection_8h-source.html">connection.h</a>&gt;</code>
12 <p>
13 Inheritance diagram for ircd_connector:<p><center><img src="classircd__connector__inherit__graph.gif" border="0" usemap="#ircd__connector__inherit__map" alt="Inheritance graph"></center>
14 <map name="ircd__connector__inherit__map">
15 <area href="classExtensible.html" shape="rect" coords="21,82,103,109" alt="">
16 <area href="classclassbase.html" shape="rect" coords="22,8,102,34" alt="">
17 </map>
18 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ircd_connector:<p><center><img src="classircd__connector__coll__graph.gif" border="0" usemap="#ircd__connector__coll__map" alt="Collaboration graph"></center>
19 <map name="ircd__connector__coll__map">
20 <area href="classExtensible.html" shape="rect" coords="7,7,90,34" alt="">
21 </map>
22 <center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center><a href="classircd__connector-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
23 <tr><td></td></tr>
24 <tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
25 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a0">MakeOutboundConnection</a> (char *newhost, int newport)</td></tr>
26
27 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create an outbound connection to a listening socket. </em> <a href="#a0"></a><em><br><br></td></tr>
28 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a1">GetServerName</a> ()</td></tr>
29
30 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the servername on this established connection. </em> <a href="#a1"></a><em><br><br></td></tr>
31 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a2">SetServerName</a> (std::string serv)</td></tr>
32
33 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the server name of this connection. </em> <a href="#a2"></a><em><br><br></td></tr>
34 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a3">GetDescriptor</a> ()</td></tr>
35
36 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the file descriptor associated with this connection. </em> <a href="#a3"></a><em><br><br></td></tr>
37 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a4">SetDescriptor</a> (int <a class="el" href="classircd__connector.html#r1">fd</a>)</td></tr>
38
39 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the file descriptor for this connection. </em> <a href="#a4"></a><em><br><br></td></tr>
40 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a5">GetState</a> ()</td></tr>
41
42 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the state flags for this connection. </em> <a href="#a5"></a><em><br><br></td></tr>
43 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a6">SetState</a> (int <a class="el" href="classircd__connector.html#r4">state</a>)</td></tr>
44
45 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the state flags for this connection. </em> <a href="#a6"></a><em><br><br></td></tr>
46 <tr><td class="memItemLeft" nowrap align=right valign=top>char *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a7">GetServerIP</a> ()</td></tr>
47
48 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the ip address (not servername) associated with this connection. </em> <a href="#a7"></a><em><br><br></td></tr>
49 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a8">GetDescription</a> ()</td></tr>
50
51 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the server description of this connection. </em> <a href="#a8"></a><em><br><br></td></tr>
52 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a9">SetDescription</a> (std::string desc)</td></tr>
53
54 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the server description of this connection. </em> <a href="#a9"></a><em><br><br></td></tr>
55 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a10">GetServerPort</a> ()</td></tr>
56
57 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>. </em> <a href="#a10"></a><em><br><br></td></tr>
58 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a11">SetServerPort</a> (int p)</td></tr>
59
60 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the port used by this connection. </em> <a href="#a11"></a><em><br><br></td></tr>
61 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a12">SetHostAndPort</a> (char *newhost, int newport)</td></tr>
62
63 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set both the host and the port in one operation for this connection. </em> <a href="#a12"></a><em><br><br></td></tr>
64 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a13">CloseConnection</a> ()</td></tr>
65
66 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close the connection by calling close() on its file descriptor This function call updates no other data. </em> <a href="#a13"></a><em><br><br></td></tr>
67 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a14">AddBuffer</a> (std::string a)</td></tr>
68
69 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method adds text to the ircd connection's buffer There is no limitation on how much text of what line width may be added to this buffer. </em> <a href="#a14"></a><em><br><br></td></tr>
70 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a15">BufferIsComplete</a> ()</td></tr>
71
72 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns true if the buffer contains at least one carriage return character, e.g. </em> <a href="#a15"></a><em><br><br></td></tr>
73 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a16">ClearBuffer</a> ()</td></tr>
74
75 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method clears the server's buffer by setting it to an empty string. </em> <a href="#a16"></a><em><br><br></td></tr>
76 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a17">GetBuffer</a> ()</td></tr>
77
78 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method retrieves the first string from the tail end of the buffer and advances the tail end of the buffer past the returned string, in a similar manner to strtok(). </em> <a href="#a17"></a><em><br><br></td></tr>
79 <tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a18">SetVersionString</a> (std::string newversion)</td></tr>
80
81 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method sets the version string of the remote server. </em> <a href="#a18"></a><em><br><br></td></tr>
82 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#a19">GetVersionString</a> ()</td></tr>
83
84 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This method returns the version string of the remote server. </em> <a href="#a19"></a><em><br><br></td></tr>
85 <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr>
86 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o0">ircdbuffer</a></td></tr>
87
88 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">IRCD Buffer for input characters, holds as many lines as are pending - Note that the final line may not be complete and should only be read when there is a <br>
89  seperator. </em> <a href="#o0"></a><em><br><br></td></tr>
90 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o1">host</a> [MAXBUF]</td></tr>
91
92 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. </em> <a href="#o1"></a><em><br><br></td></tr>
93 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o2">port</a></td></tr>
94
95 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. </em> <a href="#o2"></a><em><br><br></td></tr>
96 <tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; std::string &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#o3">routes</a></td></tr>
97
98 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B. </em> <a href="#o3"></a><em><br><br></td></tr>
99 <tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
100 <tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#d0">SetHostAddress</a> (char *<a class="el" href="classircd__connector.html#o1">host</a>, int <a class="el" href="classircd__connector.html#o2">port</a>)</td></tr>
101
102 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">PRIVATE function to set the host address and port to connect to. </em> <a href="#d0"></a><em><br><br></td></tr>
103 <tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
104 <tr><td class="memItemLeft" nowrap align=right valign=top>sockaddr_in&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r0">addr</a></td></tr>
105
106 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sockaddr of the outbound ip and port. </em> <a href="#r0"></a><em><br><br></td></tr>
107 <tr><td class="memItemLeft" nowrap align=right valign=top>int&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r1">fd</a></td></tr>
108
109 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">File descriptor of the connection. </em> <a href="#r1"></a><em><br><br></td></tr>
110 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r2">servername</a></td></tr>
111
112 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> name. </em> <a href="#r2"></a><em><br><br></td></tr>
113 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r3">description</a></td></tr>
114
115 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><a class="el" href="classServer.html">Server</a> 'GECOS'. </em> <a href="#r3"></a><em><br><br></td></tr>
116 <tr><td class="memItemLeft" nowrap align=right valign=top>char&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r4">state</a></td></tr>
117
118 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">State. </em> <a href="#r4"></a><em><br><br></td></tr>
119 <tr><td class="memItemLeft" nowrap align=right valign=top>std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classircd__connector.html#r5">version</a></td></tr>
120
121 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This string holds the ircd's version response. </em> <a href="#r5"></a><em><br><br></td></tr>
122 </table>
123 <hr><a name="_details"></a><h2>Detailed Description</h2>
124 Each connection has one or more of these each represents ONE outbound connection to another ircd so each inbound has multiple outbounds. 
125 <p>
126 A listening socket that accepts server type connections is represented by one class serverrec. Class serverrec will instantiate several objects of type ircd_connector to represent each established connection, inbound or outbound. So, to determine all linked servers you must walk through all the serverrecs that the core defines, and in each one iterate through until you find connection(s) relating to the server you want information on. The core and module API provide functions for this. 
127 <p>
128
129 <p>
130 Definition at line <a class="el" href="connection_8h-source.html#l00054">54</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.<hr><h2>Member Function Documentation</h2>
131 <a name="a14" doxytag="ircd_connector::AddBuffer"></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"> void ircd_connector::AddBuffer </td>
138           <td class="md" valign="top">(&nbsp;</td>
139           <td class="md" nowrap valign="top">std::string&nbsp;</td>
140           <td class="mdname1" valign="top" nowrap> <em>a</em>          </td>
141           <td class="md" valign="top">&nbsp;)&nbsp;</td>
142           <td class="md" nowrap></td>
143         </tr>
144
145       </table>
146     </td>
147   </tr>
148 </table>
149 <table cellspacing=5 cellpadding=0 border=0>
150   <tr>
151     <td>
152       &nbsp;
153     </td>
154     <td>
155
156 <p>
157 This method adds text to the ircd connection's buffer There is no limitation on how much text of what line width may be added to this buffer. 
158 <p>
159 It is the sending server's responsibility to ensure sent data is kept within reasonable quanities.    </td>
160   </tr>
161 </table>
162 <a name="a15" doxytag="ircd_connector::BufferIsComplete"></a><p>
163 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
164   <tr>
165     <td class="mdRow">
166       <table cellpadding="0" cellspacing="0" border="0">
167         <tr>
168           <td class="md" nowrap valign="top"> bool ircd_connector::BufferIsComplete </td>
169           <td class="md" valign="top">(&nbsp;</td>
170           <td class="mdname1" valign="top" nowrap>          </td>
171           <td class="md" valign="top">&nbsp;)&nbsp;</td>
172           <td class="md" nowrap></td>
173         </tr>
174
175       </table>
176     </td>
177   </tr>
178 </table>
179 <table cellspacing=5 cellpadding=0 border=0>
180   <tr>
181     <td>
182       &nbsp;
183     </td>
184     <td>
185
186 <p>
187 This method returns true if the buffer contains at least one carriage return character, e.g. 
188 <p>
189 one line can be read from the buffer successfully.    </td>
190   </tr>
191 </table>
192 <a name="a16" doxytag="ircd_connector::ClearBuffer"></a><p>
193 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
194   <tr>
195     <td class="mdRow">
196       <table cellpadding="0" cellspacing="0" border="0">
197         <tr>
198           <td class="md" nowrap valign="top"> void ircd_connector::ClearBuffer </td>
199           <td class="md" valign="top">(&nbsp;</td>
200           <td class="mdname1" valign="top" nowrap>          </td>
201           <td class="md" valign="top">&nbsp;)&nbsp;</td>
202           <td class="md" nowrap></td>
203         </tr>
204
205       </table>
206     </td>
207   </tr>
208 </table>
209 <table cellspacing=5 cellpadding=0 border=0>
210   <tr>
211     <td>
212       &nbsp;
213     </td>
214     <td>
215
216 <p>
217 This method clears the server's buffer by setting it to an empty string. 
218 <p>
219     </td>
220   </tr>
221 </table>
222 <a name="a13" doxytag="ircd_connector::CloseConnection"></a><p>
223 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
224   <tr>
225     <td class="mdRow">
226       <table cellpadding="0" cellspacing="0" border="0">
227         <tr>
228           <td class="md" nowrap valign="top"> void ircd_connector::CloseConnection </td>
229           <td class="md" valign="top">(&nbsp;</td>
230           <td class="mdname1" valign="top" nowrap>          </td>
231           <td class="md" valign="top">&nbsp;)&nbsp;</td>
232           <td class="md" nowrap></td>
233         </tr>
234
235       </table>
236     </td>
237   </tr>
238 </table>
239 <table cellspacing=5 cellpadding=0 border=0>
240   <tr>
241     <td>
242       &nbsp;
243     </td>
244     <td>
245
246 <p>
247 Close the connection by calling close() on its file descriptor This function call updates no other data. 
248 <p>
249     </td>
250   </tr>
251 </table>
252 <a name="a17" doxytag="ircd_connector::GetBuffer"></a><p>
253 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
254   <tr>
255     <td class="mdRow">
256       <table cellpadding="0" cellspacing="0" border="0">
257         <tr>
258           <td class="md" nowrap valign="top"> std::string ircd_connector::GetBuffer </td>
259           <td class="md" valign="top">(&nbsp;</td>
260           <td class="mdname1" valign="top" nowrap>          </td>
261           <td class="md" valign="top">&nbsp;)&nbsp;</td>
262           <td class="md" nowrap></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 This method retrieves the first string from the tail end of the buffer and advances the tail end of the buffer past the returned string, in a similar manner to strtok(). 
278 <p>
279     </td>
280   </tr>
281 </table>
282 <a name="a8" doxytag="ircd_connector::GetDescription"></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"> std::string ircd_connector::GetDescription </td>
289           <td class="md" valign="top">(&nbsp;</td>
290           <td class="mdname1" valign="top" nowrap>          </td>
291           <td class="md" valign="top">&nbsp;)&nbsp;</td>
292           <td class="md" nowrap></td>
293         </tr>
294
295       </table>
296     </td>
297   </tr>
298 </table>
299 <table cellspacing=5 cellpadding=0 border=0>
300   <tr>
301     <td>
302       &nbsp;
303     </td>
304     <td>
305
306 <p>
307 Get the server description of this connection. 
308 <p>
309     </td>
310   </tr>
311 </table>
312 <a name="a3" doxytag="ircd_connector::GetDescriptor"></a><p>
313 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
314   <tr>
315     <td class="mdRow">
316       <table cellpadding="0" cellspacing="0" border="0">
317         <tr>
318           <td class="md" nowrap valign="top"> int ircd_connector::GetDescriptor </td>
319           <td class="md" valign="top">(&nbsp;</td>
320           <td class="mdname1" valign="top" nowrap>          </td>
321           <td class="md" valign="top">&nbsp;)&nbsp;</td>
322           <td class="md" nowrap></td>
323         </tr>
324
325       </table>
326     </td>
327   </tr>
328 </table>
329 <table cellspacing=5 cellpadding=0 border=0>
330   <tr>
331     <td>
332       &nbsp;
333     </td>
334     <td>
335
336 <p>
337 Get the file descriptor associated with this connection. 
338 <p>
339     </td>
340   </tr>
341 </table>
342 <a name="a7" doxytag="ircd_connector::GetServerIP"></a><p>
343 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
344   <tr>
345     <td class="mdRow">
346       <table cellpadding="0" cellspacing="0" border="0">
347         <tr>
348           <td class="md" nowrap valign="top"> char* ircd_connector::GetServerIP </td>
349           <td class="md" valign="top">(&nbsp;</td>
350           <td class="mdname1" valign="top" nowrap>          </td>
351           <td class="md" valign="top">&nbsp;)&nbsp;</td>
352           <td class="md" nowrap></td>
353         </tr>
354
355       </table>
356     </td>
357   </tr>
358 </table>
359 <table cellspacing=5 cellpadding=0 border=0>
360   <tr>
361     <td>
362       &nbsp;
363     </td>
364     <td>
365
366 <p>
367 Get the ip address (not servername) associated with this connection. 
368 <p>
369     </td>
370   </tr>
371 </table>
372 <a name="a1" doxytag="ircd_connector::GetServerName"></a><p>
373 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
374   <tr>
375     <td class="mdRow">
376       <table cellpadding="0" cellspacing="0" border="0">
377         <tr>
378           <td class="md" nowrap valign="top"> std::string ircd_connector::GetServerName </td>
379           <td class="md" valign="top">(&nbsp;</td>
380           <td class="mdname1" valign="top" nowrap>          </td>
381           <td class="md" valign="top">&nbsp;)&nbsp;</td>
382           <td class="md" nowrap></td>
383         </tr>
384
385       </table>
386     </td>
387   </tr>
388 </table>
389 <table cellspacing=5 cellpadding=0 border=0>
390   <tr>
391     <td>
392       &nbsp;
393     </td>
394     <td>
395
396 <p>
397 Return the servername on this established connection. 
398 <p>
399     </td>
400   </tr>
401 </table>
402 <a name="a10" doxytag="ircd_connector::GetServerPort"></a><p>
403 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
404   <tr>
405     <td class="mdRow">
406       <table cellpadding="0" cellspacing="0" border="0">
407         <tr>
408           <td class="md" nowrap valign="top"> int ircd_connector::GetServerPort </td>
409           <td class="md" valign="top">(&nbsp;</td>
410           <td class="mdname1" valign="top" nowrap>          </td>
411           <td class="md" valign="top">&nbsp;)&nbsp;</td>
412           <td class="md" nowrap></td>
413         </tr>
414
415       </table>
416     </td>
417   </tr>
418 </table>
419 <table cellspacing=5 cellpadding=0 border=0>
420   <tr>
421     <td>
422       &nbsp;
423     </td>
424     <td>
425
426 <p>
427 Get the port number being used for this connection If the connection is outbound this will be the remote port otherwise it will be the local port, so it can always be gautanteed as open at the address given in <a class="el" href="classircd__connector.html#a7">GetServerIP()</a>. 
428 <p>
429     </td>
430   </tr>
431 </table>
432 <a name="a5" doxytag="ircd_connector::GetState"></a><p>
433 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
434   <tr>
435     <td class="mdRow">
436       <table cellpadding="0" cellspacing="0" border="0">
437         <tr>
438           <td class="md" nowrap valign="top"> int ircd_connector::GetState </td>
439           <td class="md" valign="top">(&nbsp;</td>
440           <td class="mdname1" valign="top" nowrap>          </td>
441           <td class="md" valign="top">&nbsp;)&nbsp;</td>
442           <td class="md" nowrap></td>
443         </tr>
444
445       </table>
446     </td>
447   </tr>
448 </table>
449 <table cellspacing=5 cellpadding=0 border=0>
450   <tr>
451     <td>
452       &nbsp;
453     </td>
454     <td>
455
456 <p>
457 Get the state flags for this connection. 
458 <p>
459     </td>
460   </tr>
461 </table>
462 <a name="a19" doxytag="ircd_connector::GetVersionString"></a><p>
463 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
464   <tr>
465     <td class="mdRow">
466       <table cellpadding="0" cellspacing="0" border="0">
467         <tr>
468           <td class="md" nowrap valign="top"> std::string ircd_connector::GetVersionString </td>
469           <td class="md" valign="top">(&nbsp;</td>
470           <td class="mdname1" valign="top" nowrap>          </td>
471           <td class="md" valign="top">&nbsp;)&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 This method returns the version string of the remote server. 
488 <p>
489 If the server has no version string an empty string is returned.    </td>
490   </tr>
491 </table>
492 <a name="a0" doxytag="ircd_connector::MakeOutboundConnection"></a><p>
493 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
494   <tr>
495     <td class="mdRow">
496       <table cellpadding="0" cellspacing="0" border="0">
497         <tr>
498           <td class="md" nowrap valign="top"> bool ircd_connector::MakeOutboundConnection </td>
499           <td class="md" valign="top">(&nbsp;</td>
500           <td class="md" nowrap valign="top">char *&nbsp;</td>
501           <td class="mdname" nowrap> <em>newhost</em>, </td>
502         </tr>
503         <tr>
504           <td></td>
505           <td></td>
506           <td class="md" nowrap>int&nbsp;</td>
507           <td class="mdname" nowrap> <em>newport</em></td>
508         </tr>
509         <tr>
510           <td></td>
511           <td class="md">)&nbsp;</td>
512           <td class="md" colspan="2"></td>
513         </tr>
514
515       </table>
516     </td>
517   </tr>
518 </table>
519 <table cellspacing=5 cellpadding=0 border=0>
520   <tr>
521     <td>
522       &nbsp;
523     </td>
524     <td>
525
526 <p>
527 Create an outbound connection to a listening socket. 
528 <p>
529     </td>
530   </tr>
531 </table>
532 <a name="a9" doxytag="ircd_connector::SetDescription"></a><p>
533 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
534   <tr>
535     <td class="mdRow">
536       <table cellpadding="0" cellspacing="0" border="0">
537         <tr>
538           <td class="md" nowrap valign="top"> void ircd_connector::SetDescription </td>
539           <td class="md" valign="top">(&nbsp;</td>
540           <td class="md" nowrap valign="top">std::string&nbsp;</td>
541           <td class="mdname1" valign="top" nowrap> <em>desc</em>          </td>
542           <td class="md" valign="top">&nbsp;)&nbsp;</td>
543           <td class="md" nowrap></td>
544         </tr>
545
546       </table>
547     </td>
548   </tr>
549 </table>
550 <table cellspacing=5 cellpadding=0 border=0>
551   <tr>
552     <td>
553       &nbsp;
554     </td>
555     <td>
556
557 <p>
558 Set the server description of this connection. 
559 <p>
560     </td>
561   </tr>
562 </table>
563 <a name="a4" doxytag="ircd_connector::SetDescriptor"></a><p>
564 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
565   <tr>
566     <td class="mdRow">
567       <table cellpadding="0" cellspacing="0" border="0">
568         <tr>
569           <td class="md" nowrap valign="top"> void ircd_connector::SetDescriptor </td>
570           <td class="md" valign="top">(&nbsp;</td>
571           <td class="md" nowrap valign="top">int&nbsp;</td>
572           <td class="mdname1" valign="top" nowrap> <em>fd</em>          </td>
573           <td class="md" valign="top">&nbsp;)&nbsp;</td>
574           <td class="md" nowrap></td>
575         </tr>
576
577       </table>
578     </td>
579   </tr>
580 </table>
581 <table cellspacing=5 cellpadding=0 border=0>
582   <tr>
583     <td>
584       &nbsp;
585     </td>
586     <td>
587
588 <p>
589 Set the file descriptor for this connection. 
590 <p>
591     </td>
592   </tr>
593 </table>
594 <a name="d0" doxytag="ircd_connector::SetHostAddress"></a><p>
595 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
596   <tr>
597     <td class="mdRow">
598       <table cellpadding="0" cellspacing="0" border="0">
599         <tr>
600           <td class="md" nowrap valign="top"> bool ircd_connector::SetHostAddress </td>
601           <td class="md" valign="top">(&nbsp;</td>
602           <td class="md" nowrap valign="top">char *&nbsp;</td>
603           <td class="mdname" nowrap> <em>host</em>, </td>
604         </tr>
605         <tr>
606           <td></td>
607           <td></td>
608           <td class="md" nowrap>int&nbsp;</td>
609           <td class="mdname" nowrap> <em>port</em></td>
610         </tr>
611         <tr>
612           <td></td>
613           <td class="md">)&nbsp;</td>
614           <td class="md" colspan="2"><code> [private]</code></td>
615         </tr>
616
617       </table>
618     </td>
619   </tr>
620 </table>
621 <table cellspacing=5 cellpadding=0 border=0>
622   <tr>
623     <td>
624       &nbsp;
625     </td>
626     <td>
627
628 <p>
629 PRIVATE function to set the host address and port to connect to. 
630 <p>
631     </td>
632   </tr>
633 </table>
634 <a name="a12" doxytag="ircd_connector::SetHostAndPort"></a><p>
635 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
636   <tr>
637     <td class="mdRow">
638       <table cellpadding="0" cellspacing="0" border="0">
639         <tr>
640           <td class="md" nowrap valign="top"> bool ircd_connector::SetHostAndPort </td>
641           <td class="md" valign="top">(&nbsp;</td>
642           <td class="md" nowrap valign="top">char *&nbsp;</td>
643           <td class="mdname" nowrap> <em>newhost</em>, </td>
644         </tr>
645         <tr>
646           <td></td>
647           <td></td>
648           <td class="md" nowrap>int&nbsp;</td>
649           <td class="mdname" nowrap> <em>newport</em></td>
650         </tr>
651         <tr>
652           <td></td>
653           <td class="md">)&nbsp;</td>
654           <td class="md" colspan="2"></td>
655         </tr>
656
657       </table>
658     </td>
659   </tr>
660 </table>
661 <table cellspacing=5 cellpadding=0 border=0>
662   <tr>
663     <td>
664       &nbsp;
665     </td>
666     <td>
667
668 <p>
669 Set both the host and the port in one operation for this connection. 
670 <p>
671     </td>
672   </tr>
673 </table>
674 <a name="a2" doxytag="ircd_connector::SetServerName"></a><p>
675 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
676   <tr>
677     <td class="mdRow">
678       <table cellpadding="0" cellspacing="0" border="0">
679         <tr>
680           <td class="md" nowrap valign="top"> void ircd_connector::SetServerName </td>
681           <td class="md" valign="top">(&nbsp;</td>
682           <td class="md" nowrap valign="top">std::string&nbsp;</td>
683           <td class="mdname1" valign="top" nowrap> <em>serv</em>          </td>
684           <td class="md" valign="top">&nbsp;)&nbsp;</td>
685           <td class="md" nowrap></td>
686         </tr>
687
688       </table>
689     </td>
690   </tr>
691 </table>
692 <table cellspacing=5 cellpadding=0 border=0>
693   <tr>
694     <td>
695       &nbsp;
696     </td>
697     <td>
698
699 <p>
700 Set the server name of this connection. 
701 <p>
702     </td>
703   </tr>
704 </table>
705 <a name="a11" doxytag="ircd_connector::SetServerPort"></a><p>
706 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
707   <tr>
708     <td class="mdRow">
709       <table cellpadding="0" cellspacing="0" border="0">
710         <tr>
711           <td class="md" nowrap valign="top"> void ircd_connector::SetServerPort </td>
712           <td class="md" valign="top">(&nbsp;</td>
713           <td class="md" nowrap valign="top">int&nbsp;</td>
714           <td class="mdname1" valign="top" nowrap> <em>p</em>          </td>
715           <td class="md" valign="top">&nbsp;)&nbsp;</td>
716           <td class="md" nowrap></td>
717         </tr>
718
719       </table>
720     </td>
721   </tr>
722 </table>
723 <table cellspacing=5 cellpadding=0 border=0>
724   <tr>
725     <td>
726       &nbsp;
727     </td>
728     <td>
729
730 <p>
731 Set the port used by this connection. 
732 <p>
733     </td>
734   </tr>
735 </table>
736 <a name="a6" doxytag="ircd_connector::SetState"></a><p>
737 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
738   <tr>
739     <td class="mdRow">
740       <table cellpadding="0" cellspacing="0" border="0">
741         <tr>
742           <td class="md" nowrap valign="top"> void ircd_connector::SetState </td>
743           <td class="md" valign="top">(&nbsp;</td>
744           <td class="md" nowrap valign="top">int&nbsp;</td>
745           <td class="mdname1" valign="top" nowrap> <em>state</em>          </td>
746           <td class="md" valign="top">&nbsp;)&nbsp;</td>
747           <td class="md" nowrap></td>
748         </tr>
749
750       </table>
751     </td>
752   </tr>
753 </table>
754 <table cellspacing=5 cellpadding=0 border=0>
755   <tr>
756     <td>
757       &nbsp;
758     </td>
759     <td>
760
761 <p>
762 Set the state flags for this connection. 
763 <p>
764     </td>
765   </tr>
766 </table>
767 <a name="a18" doxytag="ircd_connector::SetVersionString"></a><p>
768 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
769   <tr>
770     <td class="mdRow">
771       <table cellpadding="0" cellspacing="0" border="0">
772         <tr>
773           <td class="md" nowrap valign="top"> void ircd_connector::SetVersionString </td>
774           <td class="md" valign="top">(&nbsp;</td>
775           <td class="md" nowrap valign="top">std::string&nbsp;</td>
776           <td class="mdname1" valign="top" nowrap> <em>newversion</em>          </td>
777           <td class="md" valign="top">&nbsp;)&nbsp;</td>
778           <td class="md" nowrap></td>
779         </tr>
780
781       </table>
782     </td>
783   </tr>
784 </table>
785 <table cellspacing=5 cellpadding=0 border=0>
786   <tr>
787     <td>
788       &nbsp;
789     </td>
790     <td>
791
792 <p>
793 This method sets the version string of the remote server. 
794 <p>
795     </td>
796   </tr>
797 </table>
798 <hr><h2>Member Data Documentation</h2>
799 <a name="r0" doxytag="ircd_connector::addr"></a><p>
800 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
801   <tr>
802     <td class="mdRow">
803       <table cellpadding="0" cellspacing="0" border="0">
804         <tr>
805           <td class="md" nowrap valign="top"> sockaddr_in <a class="el" href="classircd__connector.html#r0">ircd_connector::addr</a><code> [private]</code>
806       </table>
807     </td>
808   </tr>
809 </table>
810 <table cellspacing=5 cellpadding=0 border=0>
811   <tr>
812     <td>
813       &nbsp;
814     </td>
815     <td>
816
817 <p>
818 Sockaddr of the outbound ip and port. 
819 <p>
820
821 <p>
822 Definition at line <a class="el" href="connection_8h-source.html#l00059">59</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
823   </tr>
824 </table>
825 <a name="r3" doxytag="ircd_connector::description"></a><p>
826 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
827   <tr>
828     <td class="mdRow">
829       <table cellpadding="0" cellspacing="0" border="0">
830         <tr>
831           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#r3">ircd_connector::description</a><code> [private]</code>
832       </table>
833     </td>
834   </tr>
835 </table>
836 <table cellspacing=5 cellpadding=0 border=0>
837   <tr>
838     <td>
839       &nbsp;
840     </td>
841     <td>
842
843 <p>
844 <a class="el" href="classServer.html">Server</a> 'GECOS'. 
845 <p>
846
847 <p>
848 Definition at line <a class="el" href="connection_8h-source.html#l00071">71</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
849   </tr>
850 </table>
851 <a name="r1" doxytag="ircd_connector::fd"></a><p>
852 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
853   <tr>
854     <td class="mdRow">
855       <table cellpadding="0" cellspacing="0" border="0">
856         <tr>
857           <td class="md" nowrap valign="top"> int <a class="el" href="classircd__connector.html#r1">ircd_connector::fd</a><code> [private]</code>
858       </table>
859     </td>
860   </tr>
861 </table>
862 <table cellspacing=5 cellpadding=0 border=0>
863   <tr>
864     <td>
865       &nbsp;
866     </td>
867     <td>
868
869 <p>
870 File descriptor of the connection. 
871 <p>
872
873 <p>
874 Definition at line <a class="el" href="connection_8h-source.html#l00063">63</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
875   </tr>
876 </table>
877 <a name="o1" doxytag="ircd_connector::host"></a><p>
878 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
879   <tr>
880     <td class="mdRow">
881       <table cellpadding="0" cellspacing="0" border="0">
882         <tr>
883           <td class="md" nowrap valign="top"> char <a class="el" href="classircd__connector.html#o1">ircd_connector::host</a>[MAXBUF]
884       </table>
885     </td>
886   </tr>
887 </table>
888 <table cellspacing=5 cellpadding=0 border=0>
889   <tr>
890     <td>
891       &nbsp;
892     </td>
893     <td>
894
895 <p>
896 When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. 
897 <p>
898
899 <p>
900 Definition at line <a class="el" href="connection_8h-source.html#l00099">99</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
901   </tr>
902 </table>
903 <a name="o0" doxytag="ircd_connector::ircdbuffer"></a><p>
904 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
905   <tr>
906     <td class="mdRow">
907       <table cellpadding="0" cellspacing="0" border="0">
908         <tr>
909           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#o0">ircd_connector::ircdbuffer</a>
910       </table>
911     </td>
912   </tr>
913 </table>
914 <table cellspacing=5 cellpadding=0 border=0>
915   <tr>
916     <td>
917       &nbsp;
918     </td>
919     <td>
920
921 <p>
922 IRCD Buffer for input characters, holds as many lines as are pending - Note that the final line may not be complete and should only be read when there is a <br>
923  seperator. 
924 <p>
925
926 <p>
927 Definition at line <a class="el" href="connection_8h-source.html#l00092">92</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
928   </tr>
929 </table>
930 <a name="o2" doxytag="ircd_connector::port"></a><p>
931 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
932   <tr>
933     <td class="mdRow">
934       <table cellpadding="0" cellspacing="0" border="0">
935         <tr>
936           <td class="md" nowrap valign="top"> int <a class="el" href="classircd__connector.html#o2">ircd_connector::port</a>
937       </table>
938     </td>
939   </tr>
940 </table>
941 <table cellspacing=5 cellpadding=0 border=0>
942   <tr>
943     <td>
944       &nbsp;
945     </td>
946     <td>
947
948 <p>
949 When MakeOutboundConnection is called, these public members are filled with the details passed to the function, for future reference. 
950 <p>
951
952 <p>
953 Definition at line <a class="el" href="connection_8h-source.html#l00105">105</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
954   </tr>
955 </table>
956 <a name="o3" doxytag="ircd_connector::routes"></a><p>
957 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
958   <tr>
959     <td class="mdRow">
960       <table cellpadding="0" cellspacing="0" border="0">
961         <tr>
962           <td class="md" nowrap valign="top"> std::vector&lt;std::string&gt; <a class="el" href="classircd__connector.html#o3">ircd_connector::routes</a>
963       </table>
964     </td>
965   </tr>
966 </table>
967 <table cellspacing=5 cellpadding=0 border=0>
968   <tr>
969     <td>
970       &nbsp;
971     </td>
972     <td>
973
974 <p>
975 <a class="el" href="classServer.html">Server</a> names of servers that this server is linked to So for A-&gt;B-&gt;C, if this was the record for B it would contain A and C whilever both servers are connected to B. 
976 <p>
977
978 <p>
979 Definition at line <a class="el" href="connection_8h-source.html#l00111">111</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
980   </tr>
981 </table>
982 <a name="r2" doxytag="ircd_connector::servername"></a><p>
983 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
984   <tr>
985     <td class="mdRow">
986       <table cellpadding="0" cellspacing="0" border="0">
987         <tr>
988           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#r2">ircd_connector::servername</a><code> [private]</code>
989       </table>
990     </td>
991   </tr>
992 </table>
993 <table cellspacing=5 cellpadding=0 border=0>
994   <tr>
995     <td>
996       &nbsp;
997     </td>
998     <td>
999
1000 <p>
1001 <a class="el" href="classServer.html">Server</a> name. 
1002 <p>
1003
1004 <p>
1005 Definition at line <a class="el" href="connection_8h-source.html#l00067">67</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
1006   </tr>
1007 </table>
1008 <a name="r4" doxytag="ircd_connector::state"></a><p>
1009 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1010   <tr>
1011     <td class="mdRow">
1012       <table cellpadding="0" cellspacing="0" border="0">
1013         <tr>
1014           <td class="md" nowrap valign="top"> char <a class="el" href="classircd__connector.html#r4">ircd_connector::state</a><code> [private]</code>
1015       </table>
1016     </td>
1017   </tr>
1018 </table>
1019 <table cellspacing=5 cellpadding=0 border=0>
1020   <tr>
1021     <td>
1022       &nbsp;
1023     </td>
1024     <td>
1025
1026 <p>
1027 State. 
1028 <p>
1029 STATE_NOAUTH_INBOUND, STATE_NOAUTH_OUTBOUND STATE_SYNC, STATE_DISCONNECTED, STATE_CONNECTED
1030 <p>
1031 Definition at line <a class="el" href="connection_8h-source.html#l00076">76</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
1032   </tr>
1033 </table>
1034 <a name="r5" doxytag="ircd_connector::version"></a><p>
1035 <table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1036   <tr>
1037     <td class="mdRow">
1038       <table cellpadding="0" cellspacing="0" border="0">
1039         <tr>
1040           <td class="md" nowrap valign="top"> std::string <a class="el" href="classircd__connector.html#r5">ircd_connector::version</a><code> [private]</code>
1041       </table>
1042     </td>
1043   </tr>
1044 </table>
1045 <table cellspacing=5 cellpadding=0 border=0>
1046   <tr>
1047     <td>
1048       &nbsp;
1049     </td>
1050     <td>
1051
1052 <p>
1053 This string holds the ircd's version response. 
1054 <p>
1055
1056 <p>
1057 Definition at line <a class="el" href="connection_8h-source.html#l00084">84</a> of file <a class="el" href="connection_8h-source.html">connection.h</a>.    </td>
1058   </tr>
1059 </table>
1060 <hr>The documentation for this class was generated from the following file:<ul>
1061 <li><a class="el" href="connection_8h-source.html">connection.h</a></ul>
1062 <hr size="1"><address style="align: right;"><small>Generated on Fri May 13 01:59:49 2005 for InspIRCd by
1063 <a href="http://www.doxygen.org/index.html">
1064 <img src="doxygen.png" alt="doxygen" align="middle" border=0 > 
1065 </a>1.3.3 </small></address>
1066 </body>
1067 </html>