X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=docs%2Fmodule-doc%2Fconnection_8h-source.html;h=66fa4b81576a129ba2b8f7cd4dce8e8d679ba406;hb=654ff4ae2f06704de2beb1050021c8196f693cb5;hp=5f3cf8ef64a9223030f99b2d9766cfed21bf43ea;hpb=59a2c6c2d96a4557cd885fefcbce97f490962692;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/docs/module-doc/connection_8h-source.html b/docs/module-doc/connection_8h-source.html index 5f3cf8ef6..66fa4b815 100644 --- a/docs/module-doc/connection_8h-source.html +++ b/docs/module-doc/connection_8h-source.html @@ -1,87 +1,176 @@ -connection.h Source File +InspIRCd: connection.h Source File - -
-Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  
-

connection.h

Go to the documentation of this file.
00001 /*
-00002 
-00003 */
-00004 
-00005 #include "inspircd_config.h"
-00006 #include "base.h"
-00007 #include <string>
-00008 #include <map>
-00009 #include <sys/socket.h>
-00010 #include <sys/types.h>
-00011 #include <netdb.h>
-00012 #include <netinet/in.h>
-00013 #include <unistd.h>
-00014 #include <errno.h>
-00015 #include <time.h>
+
+
+

connection.h

Go to the documentation of this file.
00001 /*       +------------------------------------+
+00002  *       | Inspire Internet Relay Chat Daemon |
+00003  *       +------------------------------------+
+00004  *
+00005  *  Inspire is copyright (C) 2002-2004 ChatSpike-Dev.
+00006  *                       E-mail:
+00007  *                <brain@chatspike.net>
+00008  *                <Craig@chatspike.net>
+00009  *     
+00010  * Written by Craig Edwards, Craig McLure, and others.
+00011  * This program is free but copyrighted software; see
+00012  *            the file COPYING for details.
+00013  *
+00014  * ---------------------------------------------------
+00015  */
 00016 
-00017 #ifndef __CONNECTION_H__
-00018 #define __CONNECTION_H__
-00019 
-00020 #define PT_SYN_ONLY 0
-00021 #define PT_ACK_ONLY 1
-00022 #define PT_SYN_WITH_DATA 2
-00023 #define PT_KEY_EXCHANGE 3
-00024 
-00025 
-00026 class packet : public classbase
-00027 {
-00028  public:
-00029         long key;
-00030         short int id;
-00031         short int type;
-00032         char data[MAXBUF];
-00033 
-00034         packet();
-00035         ~packet();
-00036 };
-00037 
-00038 
-00039 class connection : public classbase
-00040 {
-00041  public:
-00042         long key;
-00043         int fd;                 // file descriptor
-00044         char host[256];         // hostname
-00045         long ip;                // ipv4 address
-00046         char inbuf[MAXBUF];     // recvQ
-00047         long bytes_in;
-00048         long bytes_out;
-00049         long cmds_in;
-00050         long cmds_out;
-00051         bool haspassed;
-00052         int port;
-00053         int registered;
-00054         time_t lastping;
-00055         time_t signon;
-00056         time_t idle_lastmsg;
-00057         time_t nping;
-00058         char internal_addr[1024];
+00017 #include "inspircd_config.h"
+00018 #include "base.h"
+00019 #include <string>
+00020 #include <map>
+00021 #include <sys/types.h>
+00022 #include <sys/socket.h>
+00023 #include <netdb.h>
+00024 #include <netinet/in.h>
+00025 #include <unistd.h>
+00026 #include <errno.h>
+00027 #include <time.h>
+00028 #include <vector>
+00029 #include <deque>
+00030 
+00031 #ifndef __CONNECTION_H__
+00032 #define __CONNECTION_H__
+00033 
+00034 #define STATE_DISCONNECTED      0
+00035 #define STATE_CONNECTED         1
+00036 #define STATE_SYNC              2
+00037 #define STATE_NOAUTH_INBOUND    3
+00038 #define STATE_NOAUTH_OUTBOUND   4
+00039 #define STATE_SERVICES          5
+00040 
+00053 class ircd_connector : public Extensible
+00054 {
+00055  private:
+00058         sockaddr_in addr;
 00059         
-00060         connection();
-00061         bool CreateListener(char* host, int p);
-00062         bool BeginLink(char* targethost, int port, char* password);
-00063         void TerminateLink(char* targethost);
-00064         bool SendPacket(char *message, char* host, int port, long ourkey);
-00065         bool RecvPacket(char *message, char* host, int &prt, long &theirkey);
-00066         bool SendSYN(char* host, int port);
-00067         bool SendACK(char* host, int port, int reply_id);
-00068         long GenKey();
-00069 };
-00070 
-00071 
-00072 #endif
-00073 
-

Generated on Tue Apr 6 21:13:19 2004 for InspIRCd by +00062 int fd; +00063 +00066 std::string servername; +00067 +00070 std::string description; +00071 +00075 int state; +00076 +00079 bool SetHostAddress(char* host, int port); +00080 +00081 public: +00082 +00087 char host[MAXBUF]; +00088 +00093 int port; +00094 +00099 std::vector<std::string> routes; +00100 +00101 +00104 bool MakeOutboundConnection(char* host, int port); +00105 +00108 std::string GetServerName(); +00109 +00112 void SetServerName(std::string serv); +00113 +00116 int GetDescriptor(); +00117 +00120 void SetDescriptor(int fd); +00121 +00124 int GetState(); +00125 +00128 void SetState(int state); +00129 +00132 char* GetServerIP(); +00133 +00136 std::string GetDescription(); +00137 +00140 void SetDescription(std::string desc); +00141 +00147 int GetServerPort(); +00148 +00151 void SetServerPort(int p); +00152 +00155 bool SetHostAndPort(char* host, int port); +00156 +00160 void CloseConnection(); +00161 }; +00162 +00163 +00167 class packet : public classbase +00168 { +00169 }; +00170 +00173 class connection : public Extensible +00174 { +00175 public: +00178 int fd; +00179 +00182 char host[256]; +00183 +00186 char ip[32]; +00187 +00190 char inbuf[MAXBUF]; +00191 +00194 long bytes_in; +00195 +00198 long bytes_out; +00199 +00202 long cmds_in; +00203 +00206 long cmds_out; +00207 +00210 bool haspassed; +00211 +00216 int port; +00217 +00220 int registered; +00221 +00224 short int state; +00225 +00228 time_t lastping; +00229 +00232 time_t signon; +00233 +00236 time_t idle_lastmsg; +00237 +00240 time_t nping; +00241 +00244 char internal_addr[MAXBUF]; +00245 +00248 int internal_port; +00249 +00253 std::vector<ircd_connector> connectors; +00254 +00257 connection(); +00258 +00261 bool CreateListener(char* host, int p); +00262 +00265 bool BeginLink(char* targethost, int port, char* password, char* servername, int myport); +00266 +00269 bool MeshCookie(char* targethost, int port, long cookie, char* servername); +00270 +00273 void TerminateLink(char* targethost); +00274 +00278 bool SendPacket(char *message, const char* host); +00279 +00284 bool RecvPacket(std::deque<std::string> &messages, char* host); +00285 +00288 ircd_connector* FindHost(std::string host); +00289 +00293 bool AddIncoming(int fd,char* targethost, int sourceport); +00294 +00297 long GenKey(); +00298 }; +00299 +00300 +00301 #endif +00302 +

Generated on Wed Apr 13 13:06:52 2005 for InspIRCd by -doxygen1.3-rc3
+doxygen +1.3.3