From b3ad96ad3c29a3bd904bc83dd3b92fe0ed52f2a1 Mon Sep 17 00:00:00 2001 From: "rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b" Date: Sat, 14 May 2005 15:32:03 +0000 Subject: [PATCH] BUILD : 1.7.9 (796) BUGS : N/A NOTES : Updated inspircd module to work with inspircd beta 5 and up git-svn-id: svn://svn.anope.org/anope/trunk@796 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@555 5417fbe8-f217-4b02-8779-1006273d7864 --- Changes.conf | 2 +- data/example.conf | 2 +- src/protocol/inspircd.c | 351 +++++++++++++++++++++------------------- src/protocol/plexus.c | 2 +- version.log | 6 +- 5 files changed, 190 insertions(+), 173 deletions(-) diff --git a/Changes.conf b/Changes.conf index 09dd93dc5..7e0d20739 100644 --- a/Changes.conf +++ b/Changes.conf @@ -17,7 +17,7 @@ Anope Version 1.7.9 # Bahamut 1.4.27 [or later] - "bahamut" # DreamForge 4.6.7 - "dreamforge" # Hybrid IRCd 7.0 [experimental] - "hybrid" -# InspIRCd 1.0 Beta 3 - "inspircd" +# InspIRCd 1.0 Beta 5 - "inspircd" # InspIRCd module is provided by Brain # Plexus 2.0 [or later] - "plexus" # PTLink 6.15.0 [experimental] - "ptlink" diff --git a/data/example.conf b/data/example.conf index 4f9f24133..51db3e629 100644 --- a/data/example.conf +++ b/data/example.conf @@ -78,7 +78,7 @@ # Bahamut 1.4.27 [or later] - "bahamut" # DreamForge 4.6.7 - "dreamforge" # Hybrid IRCd 7.0 [experimental] - "hybrid" -# InspIRCd 1.0 Beta 3 - "inspircd" +# InspIRCd 1.0 Beta 5 - "inspircd" # InspIRCd module is provided by Brain # Plexus 2.0 [or later] - "plexus" # PTLink 6.15.0 [experimental] - "ptlink" diff --git a/src/protocol/inspircd.c b/src/protocol/inspircd.c index 11b01ec79..e16f38e9d 100644 --- a/src/protocol/inspircd.c +++ b/src/protocol/inspircd.c @@ -468,7 +468,17 @@ void moduleAddIRCDMsgs(void) { m = createMessage("a", anope_event_chgname); addCoreMessage(IRCD,m); // change gecos } -/* *INDENT-ON* */ +char* xsumtable = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; + +char* CreateSum() +{ + int q = 0; + static char sum[8]; + sum[7] = '\0'; + for(q = 0; q < 7; q++) + sum[q] = xsumtable[rand()%52]; + return sum; +} /* Event: PROTOCTL */ int anope_event_capab(char *source, int ac, char **av) @@ -485,7 +495,7 @@ int anope_event_nickchange(char *source, int ac, char **av) void inspircd_cmd_svsnoop(char *server, int set) { - send_cmd(NULL, "*"); + send_cmd(CreateSum(), "*"); } void inspircd_cmd_svsadmin(char *server, int set) @@ -495,25 +505,24 @@ void inspircd_cmd_svsadmin(char *server, int set) void inspircd_cmd_remove_akill(char *user, char *host) { - send_cmd(NULL, ". %s@%s %s", user, host, s_OperServ); + send_cmd(CreateSum(), ". %s@%s %s", user, host, s_OperServ); } void inspircd_cmd_topic(char *whosets, char *chan, char *whosetit, - char *topic, time_t when) + char *topic, time_t when) { - send_cmd(NULL, "t %s %s :%s", whosets, chan, topic); + send_cmd(CreateSum(), "t %s %s :%s", whosets, chan, topic); } void inspircd_cmd_vhost_off(User * u) { - send_cmd(NULL, "m %s %s -x", s_HostServ, u->nick); + send_cmd(CreateSum(), "m %s %s -x", s_HostServ, u->nick); } void inspircd_cmd_akill(char *user, char *host, char *who, time_t when, - time_t expires, char *reason) + time_t expires, char *reason) { - send_cmd(NULL, "# %s@%s %s %lu %lu :%s", user, host, who, - (long int) when, 86400 * 2, reason); + send_cmd(CreateSum(), "# %s@%s %s %lu %lu :%s", user, host, who, (long int)when, 86400 * 2, reason); } void inspircd_cmd_svskill(char *source, char *user, char *buf) @@ -521,12 +530,12 @@ void inspircd_cmd_svskill(char *source, char *user, char *buf) if (!buf || !source || !user) { return; } - send_cmd(NULL, "K %s %s :%s", s_OperServ, user, buf); + send_cmd(CreateSum(),"K %s %s :%s", s_OperServ, user, buf); } void inspircd_cmd_svsmode(User * u, int ac, char **av) { - send_cmd(NULL, "M %s %s", u->nick, av[0]); + send_cmd(CreateSum(), "M %s %s", u->nick, av[0]); } @@ -549,19 +558,15 @@ void inspircd_cmd_376(char *source) void inspircd_cmd_nick(char *nick, char *name, char *modes) { // N