]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/treesocket.h
Fire every debug.
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / treesocket.h
index e3c59e4b6168eddf59eea8f6cc6feec275a3d7f2..31231c7958862b6272debb6e9de04a1cbc3994bc 100644 (file)
@@ -18,7 +18,6 @@
 #include "commands/cmd_stats.h"
 #include "socket.h"
 #include "inspircd.h"
-#include "wildcard.h"
 #include "xline.h"
 #include "transport.h"
 
  * to apply an operation to a server, and any of its child objects
  * we can resort to recursion to walk the tree structure.
  * Any socket can have one of five states at any one time.
- * The LISTENER state indicates a socket which is listening
- * for connections. It cannot receive data itself, only incoming
- * sockets.
- * The CONNECTING state indicates an outbound socket which is
- * waiting to be writeable.
- * The WAIT_AUTH_1 state indicates the socket is outbound and
- * has successfully connected, but has not yet sent and received
- * SERVER strings.
- * The WAIT_AUTH_2 state indicates that the socket is inbound
- * (allocated by a LISTENER) but has not yet sent and received
- * SERVER strings.
- * The CONNECTED state represents a fully authorized, fully
- * connected server.
+ *
+ * CONNECTING: indicates an outbound socket which is
+ *                                                     waiting to be writeable.
+ * WAIT_AUTH_1:        indicates the socket is outbound and
+ *                                                     has successfully connected, but has not
+ *                                                     yet sent and received SERVER strings.
+ * WAIT_AUTH_2:        indicates that the socket is inbound
+ *                                                     but has not yet sent and received
+ *                                                     SERVER strings.
+ * CONNECTED:          represents a fully authorized, fully
+ *                                                     connected server.
  */
-enum ServerState { LISTENER, CONNECTING, WAIT_AUTH_1, WAIT_AUTH_2, CONNECTED };
+enum ServerState { CONNECTING, WAIT_AUTH_1, WAIT_AUTH_2, CONNECTED };
 
 /** Every SERVER connection inbound or outbound is represented by
  * an object of type TreeSocket.
@@ -99,14 +96,7 @@ class TreeSocket : public BufferedSocket
         * most of the action, and append a few of our own values
         * to it.
         */
-       TreeSocket(SpanningTreeUtilities* Util, InspIRCd* SI, std::string host, int port, bool listening, unsigned long maxtime, Module* HookMod = NULL);
-
-       /** Because most of the I/O gubbins are encapsulated within
-        * BufferedSocket, we just call the superclass constructor for
-        * most of the action, and append a few of our own values
-        * to it.
-        */
-       TreeSocket(SpanningTreeUtilities* Util, InspIRCd* SI, std::string host, int port, bool listening, unsigned long maxtime, const std::string &ServerName, const std::string &bindto, Module* HookMod = NULL);
+       TreeSocket(SpanningTreeUtilities* Util, InspIRCd* SI, std::string host, int port, unsigned long maxtime, const std::string &ServerName, const std::string &bindto, Module* HookMod = NULL);
 
        /** When a listening socket gives us a new file descriptor,
         * we must associate it with a socket without creating a new
@@ -227,7 +217,7 @@ class TreeSocket : public BufferedSocket
        bool ForceJoin(const std::string &source, std::deque<std::string> &params);
 
        /* Used on nick collision ... XXX ugly function HACK */
-       int DoCollision(User *u, time_t remotets, const char *remoteident, const char *remoteip, const char *remoteuid);
+       int DoCollision(User *u, time_t remotets, const std::string &remoteident, const std::string &remoteip, const std::string &remoteuid);
 
        /** UID command */
        bool ParseUID(const std::string &source, std::deque<std::string> &params);
@@ -266,7 +256,7 @@ class TreeSocket : public BufferedSocket
 
        /** Send one or more complete lines down the socket
         */
-       int WriteLine(std::string line);
+       void WriteLine(std::string line);
 
        /** Handle ERROR command */
        bool Error(std::deque<std::string> &params);
@@ -292,6 +282,10 @@ class TreeSocket : public BufferedSocket
         */
        bool ForceNick(const std::string &prefix, std::deque<std::string> &params);
 
+       /** PRIVMSG or NOTICE with server origin ONLY
+        */
+       bool ServerMessage(const std::string &messagetype, const std::string &prefix, std::deque<std::string> &params, const std::string &sourceserv);
+
        /** ENCAP command
         */
        bool Encap(const std::string &prefix, std::deque<std::string> &params);
@@ -308,10 +302,6 @@ class TreeSocket : public BufferedSocket
         */
        bool ServicePart(const std::string &prefix, std::deque<std::string> &params);
 
-       /** REHASH
-        */
-       bool RemoteRehash(const std::string &prefix, std::deque<std::string> &params);
-
        /** KILL
         */
        bool RemoteKill(const std::string &prefix, std::deque<std::string> &params);
@@ -396,10 +386,6 @@ class TreeSocket : public BufferedSocket
        /** Handle socket close event
         */
        virtual void OnClose();
-
-       /** Handle incoming connection event
-        */
-       virtual int OnIncomingConnection(int newsock, char* ip);
 };
 
 /* Used to validate the value lengths of multiple parameters for a command */