summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-05-14 18:29:44 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-05-14 18:29:44 +0000
commit36127608a981c809c9b8e52980a6c23874eb633e (patch)
tree65f21267165128c6b4f7acf3e443c0f163bd9f35 /include
parentce82525b3e7daf417448390479de7fd7da7d27ec (diff)
Added 'uniqueness sums': http://www.inspircd.org/wiki/InspIRCd_Server_Protocol#Uniqueness_Sums
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1378 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'include')
-rw-r--r--include/commands.h48
-rw-r--r--include/connection.h4
-rw-r--r--include/inspircd.h2
3 files changed, 29 insertions, 25 deletions
diff --git a/include/commands.h b/include/commands.h
index 2777de1a2..f83ab5f81 100644
--- a/include/commands.h
+++ b/include/commands.h
@@ -84,33 +84,33 @@ void handle_unloadmodule(char **parameters, int pcnt, userrec *user);
/** Special functions for processing server to server traffic
*/
-void handle_link_packet(char* tcp_msg, char* tcp_host, serverrec *serv);
-void process_restricted_commands(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host,char* ipaddr,int port);
+void handle_link_packet(char* tcp_msg, char* tcp_host, serverrec *serv, char* tcp_sum);
+void process_restricted_commands(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host,char* ipaddr,int port, char* tcp_sum);
/** These are the handlers for server commands (tokens)
*/
-void handle_amp(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_dollar(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_J(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_R(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_plus(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_b(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_a(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_F(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_N(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_AT(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_k(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_n(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_Q(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_K(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_L(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_m(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_M(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_T(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_t(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_i(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_P(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
-void handle_V(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host);
+void handle_amp(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_dollar(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_J(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_R(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_plus(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_b(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_a(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_F(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_N(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_AT(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_k(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_n(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_Q(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_K(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_L(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_m(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_M(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_T(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_t(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_i(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_P(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
+void handle_V(char token,char* params,serverrec* source,serverrec* reply, char* tcp_host, char* tcp_sum);
/** Functions for u:lined servers
*/
diff --git a/include/connection.h b/include/connection.h
index c6adedf26..b84d39df9 100644
--- a/include/connection.h
+++ b/include/connection.h
@@ -39,6 +39,8 @@
#define STATE_NOAUTH_OUTBOUND 4
#define STATE_SERVICES 5
+std::string CreateSum();
+
/** Each connection has one or more of these
* each represents ONE outbound connection to another ircd
* so each inbound has multiple outbounds. A listening socket
@@ -302,7 +304,7 @@ class connection : public Extensible
* 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.
*/
- bool RecvPacket(std::deque<std::string> &messages, char* host);
+ bool RecvPacket(std::deque<std::string> &messages, char* host, std::deque<std::string> &sums);
/** Find the ircd_connector oject related to a certain servername given in 'host'
*/
diff --git a/include/inspircd.h b/include/inspircd.h
index d58d4eeff..4a6e98437 100644
--- a/include/inspircd.h
+++ b/include/inspircd.h
@@ -168,9 +168,11 @@ void NoticeAllOpers(userrec *source, bool local_only, char* text, ...);
void NetSendToCommon(userrec* u, char* s);
void NetSendToAll(char* s);
+void NetSendToAll_WithSum(char* s,char* u);
void NetSendToAllAlive(char* s);
void NetSendToOne(char* target,char* s);
void NetSendToAllExcept(const char* target,char* s);
+void NetSendToAllExcept_WithSum(const char* target,char* s,char* u);
void NetSendMyRoutingTable();
bool ChanAnyOnThisServer(chanrec *c,char* servername);
bool CommonOnThisServer(userrec* u,const char* servername);