1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
|
.TH "connection" 3 "13 May 2005" "InspIRCd" \" -*- nroff -*-
.ad l
.nh
.SH NAME
connection \- Please note: classes serverrec and userrec both inherit from class connection.
.PP
.SH SYNOPSIS
.br
.PP
\fC#include <connection.h>\fP
.PP
Inherits \fBExtensible\fP.
.PP
Inherited by \fBserverrec\fP, and \fBuserrec\fP.
.PP
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBconnection\fP ()"
.br
.RI "\fIDefault constructor. \fP"
.ti -1c
.RI "bool \fBCreateListener\fP (char *\fBhost\fP, int p)"
.br
.RI "\fICreate a listening socket on 'host' using port number 'p'. \fP"
.ti -1c
.RI "bool \fBBeginLink\fP (char *targethost, int \fBport\fP, char *password, char *servername, int myport)"
.br
.RI "\fIBegin an outbound link to another ircd at targethost. \fP"
.ti -1c
.RI "bool \fBMeshCookie\fP (char *targethost, int \fBport\fP, unsigned long cookie, char *servername)"
.br
.RI "\fIBegin an outbound mesh link to another ircd on a network you are already an authenticated member of. \fP"
.ti -1c
.RI "void \fBTerminateLink\fP (char *targethost)"
.br
.RI "\fITerminate a link to 'targethost' by calling the \fBircd_connector::CloseConnection\fP method. \fP"
.ti -1c
.RI "bool \fBSendPacket\fP (char *message, const char *\fBhost\fP)"
.br
.RI "\fISend 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. \fP"
.ti -1c
.RI "bool \fBRecvPacket\fP (std::deque< std::string > &messages, char *\fBhost\fP)"
.br
.RI "\fIReturns the next available packet and returns true if data is available. \fP"
.ti -1c
.RI "\fBircd_connector\fP * \fBFindHost\fP (std::string \fBhost\fP)"
.br
.RI "\fIFind the \fBircd_connector\fP oject related to a certain servername given in 'host'. \fP"
.ti -1c
.RI "bool \fBAddIncoming\fP (int \fBfd\fP, char *targethost, int sourceport)"
.br
.RI "\fIAdd an incoming connection to the connection pool. \fP"
.in -1c
.SS "Public Attributes"
.in +1c
.ti -1c
.RI "int \fBfd\fP"
.br
.RI "\fIFile descriptor of the connection. \fP"
.ti -1c
.RI "char \fBhost\fP [160]"
.br
.RI "\fIHostname of connection. \fP"
.ti -1c
.RI "char \fBip\fP [16]"
.br
.RI "\fIIP of connection. \fP"
.ti -1c
.RI "long \fBbytes_in\fP"
.br
.RI "\fIStats counter for bytes inbound. \fP"
.ti -1c
.RI "long \fBbytes_out\fP"
.br
.RI "\fIStats counter for bytes outbound. \fP"
.ti -1c
.RI "long \fBcmds_in\fP"
.br
.RI "\fIStats counter for commands inbound. \fP"
.ti -1c
.RI "long \fBcmds_out\fP"
.br
.RI "\fIStats counter for commands outbound. \fP"
.ti -1c
.RI "bool \fBhaspassed\fP"
.br
.RI "\fITrue if server/user has authenticated, false if otherwise. \fP"
.ti -1c
.RI "int \fBport\fP"
.br
.RI "\fIPort number For a userrec, this is the port they connected to the network on. \fP"
.ti -1c
.RI "char \fBregistered\fP"
.br
.RI "\fIUsed by userrec to indicate the registration status of the connection. \fP"
.ti -1c
.RI "time_t \fBlastping\fP"
.br
.RI "\fITime the connection was last pinged. \fP"
.ti -1c
.RI "time_t \fBsignon\fP"
.br
.RI "\fITime the connection was created, set in the constructor. \fP"
.ti -1c
.RI "time_t \fBidle_lastmsg\fP"
.br
.RI "\fITime that the connection last sent data, used to calculate idle time. \fP"
.ti -1c
.RI "time_t \fBnping\fP"
.br
.RI "\fIUsed by PING checks with clients. \fP"
.ti -1c
.RI "std::vector< \fBircd_connector\fP > \fBconnectors\fP"
.br
.RI "\fIWith a serverrec, this is a list of all established server connections. \fP"
.in -1c
.SH "Detailed Description"
.PP
Please note: classes serverrec and userrec both inherit from class connection. Definition at line 210 of file connection.h.
.SH "Constructor & Destructor Documentation"
.PP
.SS "connection::connection ()"
.PP
Default constructor.
.SH "Member Function Documentation"
.PP
.SS "bool connection::AddIncoming (int fd, char * targethost, int sourceport)"
.PP
Add an incoming connection to the connection pool. (reserved for core use)
.SS "bool connection::BeginLink (char * targethost, int port, char * password, char * servername, int myport)"
.PP
Begin an outbound link to another ircd at targethost.
.SS "bool connection::CreateListener (char * host, int p)"
.PP
Create a listening socket on 'host' using port number 'p'.
.SS "\fBircd_connector\fP* connection::FindHost (std::string host)"
.PP
Find the \fBircd_connector\fP oject related to a certain servername given in 'host'.
.SS "bool connection::MeshCookie (char * targethost, int port, unsigned long cookie, char * servername)"
.PP
Begin an outbound mesh link to another ircd on a network you are already an authenticated member of.
.SS "bool connection::RecvPacket (std::deque< std::string > & messages, char * host)"
.PP
Returns the next available packet and returns true if data is available. 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.
.SS "bool connection::SendPacket (char * message, const char * host)"
.PP
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.
.SS "void connection::TerminateLink (char * targethost)"
.PP
Terminate a link to 'targethost' by calling the \fBircd_connector::CloseConnection\fP method.
.SH "Member Data Documentation"
.PP
.SS "long \fBconnection::bytes_in\fP"
.PP
Stats counter for bytes inbound. Definition at line 227 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "long \fBconnection::bytes_out\fP"
.PP
Stats counter for bytes outbound. Definition at line 231 of file connection.h.
.PP
Referenced by userrec::FlushWriteBuf(), and userrec::userrec().
.SS "long \fBconnection::cmds_in\fP"
.PP
Stats counter for commands inbound. Definition at line 235 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "long \fBconnection::cmds_out\fP"
.PP
Stats counter for commands outbound. Definition at line 239 of file connection.h.
.PP
Referenced by userrec::FlushWriteBuf(), and userrec::userrec().
.SS "std::vector<\fBircd_connector\fP> \fBconnection::connectors\fP"
.PP
With a serverrec, this is a list of all established server connections. With a userrec this is unused.Definition at line 274 of file connection.h.
.SS "int \fBconnection::fd\fP"
.PP
File descriptor of the connection. Definition at line 215 of file connection.h.
.PP
Referenced by ConfigReader::DumpErrors(), Server::PseudoToUser(), Server::SendTo(), serverrec::serverrec(), userrec::userrec(), and Server::UserToPseudo().
.SS "bool \fBconnection::haspassed\fP"
.PP
True if server/user has authenticated, false if otherwise. Definition at line 243 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "char \fBconnection::host\fP[160]"
.PP
Hostname of connection. Not used if this is a serverrecDefinition at line 219 of file connection.h.
.PP
Referenced by userrec::GetFullRealHost(), Server::PseudoToUser(), userrec::userrec(), and Server::UserToPseudo().
.SS "time_t \fBconnection::idle_lastmsg\fP"
.PP
Time that the connection last sent data, used to calculate idle time. Definition at line 265 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "char \fBconnection::ip\fP[16]"
.PP
IP of connection. Definition at line 223 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "time_t \fBconnection::lastping\fP"
.PP
Time the connection was last pinged. Definition at line 257 of file connection.h.
.PP
Referenced by serverrec::serverrec(), and userrec::userrec().
.SS "time_t \fBconnection::nping\fP"
.PP
Used by PING checks with clients. Definition at line 269 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "int \fBconnection::port\fP"
.PP
Port number For a userrec, this is the port they connected to the network on. For a serverrec this is the current listening port of the serverrec object.Definition at line 249 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "char \fBconnection::registered\fP"
.PP
Used by userrec to indicate the registration status of the connection. Definition at line 253 of file connection.h.
.PP
Referenced by userrec::userrec().
.SS "time_t \fBconnection::signon\fP"
.PP
Time the connection was created, set in the constructor. Definition at line 261 of file connection.h.
.PP
Referenced by serverrec::serverrec(), and userrec::userrec().
.SH "Author"
.PP
Generated automatically by Doxygen for InspIRCd from the source code.
|