mirror of
https://github.com/anope/anope.git
synced 2026-07-04 06:13:11 +02:00
BUILD : 1.7.14 (1069) BUGS : N/A NOTES : Added support for ircd modules to set extra modes based on services access (plexus needs this)
git-svn-id: svn://svn.anope.org/anope/trunk@1069 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@793 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
parent
6690784bff
commit
cff6e7eb1a
@@ -3,6 +3,9 @@ Anope Version S V N
|
||||
Provided by Anope Dev. <dev@anope.org> - 2006
|
||||
06/14 A Indication in the version string if we're running on win32. [ #00]
|
||||
06/20 A Added support for Visual Studio 2005. [#408]
|
||||
06/22 A Ability for ircd modules to set extra modes on id. [ #00]
|
||||
06/22 A Support startup flag. [ #00]
|
||||
06/21 A Module version check. [ #00]
|
||||
04/08 F Fixed Charybdis support on win32. [#487]
|
||||
04/08 F Fixed thread stuff on windows. [#488]
|
||||
04/08 F Fixed SGLine stuff on inspircd (not supported). [#489]
|
||||
|
||||
@@ -286,6 +286,9 @@ struct ircdvars_ {
|
||||
char *adminset; /* Mode to set for admin */
|
||||
char *adminunset; /* Mode to unset for admin */
|
||||
char *modeonreg; /* Mode on Register */
|
||||
char *rootmodeonid; /* Mode on ID for ROOTS */
|
||||
char *adminmodeonid; /* Mode on ID for ADMINS */
|
||||
char *opermodeonid; /* Mode on ID for OPERS */
|
||||
char *modeonunreg; /* Mode on Unregister */
|
||||
char *modeonnick; /* Mode on nick change */
|
||||
int sgline; /* Supports SGline */
|
||||
|
||||
+13
-2
@@ -94,6 +94,8 @@ int do_group(User * u)
|
||||
char *pass = strtok(NULL, " ");
|
||||
int i;
|
||||
char tsbuf[16];
|
||||
char modes[512];
|
||||
int len;
|
||||
|
||||
if (NSEmailReg && (findrequestnick(u->nick))) {
|
||||
notice_lang(s_NickServ, u, NICK_REQUESTED);
|
||||
@@ -229,10 +231,19 @@ int do_group(User * u)
|
||||
snprintf(tsbuf, sizeof(tsbuf), "%lu",
|
||||
(unsigned long int) u->timestamp);
|
||||
if (ircd->modeonreg) {
|
||||
len = strlen(ircd->modeonreg);
|
||||
strncpy(modes,ircd->modeonreg,512);
|
||||
if(ircd->rootmodeonid && (u->na->nc->flags & NI_SERVICES_ROOT)) {
|
||||
strncat(modes,ircd->rootmodeonid,512-len);
|
||||
} else if(ircd->adminmodeonid && (u->na->nc->flags & NI_SERVICES_ADMIN)) {
|
||||
strncat(modes,ircd->adminmodeonid,512-len);
|
||||
} else if(ircd->opermodeonid && (u->na->nc->flags & NI_SERVICES_OPER)) {
|
||||
strncat(modes,ircd->opermodeonid,512-len);
|
||||
}
|
||||
if (ircd->tsonmode) {
|
||||
common_svsmode(u, ircd->modeonreg, tsbuf);
|
||||
common_svsmode(u, modes, tsbuf);
|
||||
} else {
|
||||
common_svsmode(u, ircd->modeonreg, NULL);
|
||||
common_svsmode(u, modes, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+13
-2
@@ -79,6 +79,8 @@ int do_identify(User * u)
|
||||
NickRequest *nr;
|
||||
int res;
|
||||
char tsbuf[16];
|
||||
char modes[512];
|
||||
int len;
|
||||
|
||||
if (!pass) {
|
||||
syntax_error(s_NickServ, u, "IDENTIFY", NICK_IDENTIFY_SYNTAX);
|
||||
@@ -121,10 +123,19 @@ int do_identify(User * u)
|
||||
(unsigned long int) u->timestamp);
|
||||
|
||||
if (ircd->modeonreg) {
|
||||
len = strlen(ircd->modeonreg);
|
||||
strncpy(modes,ircd->modeonreg,512);
|
||||
if(ircd->rootmodeonid && (u->na->nc->flags & NI_SERVICES_ROOT)) {
|
||||
strncat(modes,ircd->rootmodeonid,512-len);
|
||||
} else if(ircd->adminmodeonid && (u->na->nc->flags & NI_SERVICES_ADMIN)) {
|
||||
strncat(modes,ircd->adminmodeonid,512-len);
|
||||
} else if(ircd->opermodeonid && (u->na->nc->flags & NI_SERVICES_OPER)) {
|
||||
strncat(modes,ircd->opermodeonid,512-len);
|
||||
}
|
||||
if (ircd->tsonmode) {
|
||||
common_svsmode(u, ircd->modeonreg, tsbuf);
|
||||
common_svsmode(u, modes, tsbuf);
|
||||
} else {
|
||||
common_svsmode(u, ircd->modeonreg, "");
|
||||
common_svsmode(u, modes, "");
|
||||
}
|
||||
}
|
||||
send_event(EVENT_NICK_IDENTIFY, 1, u->nick);
|
||||
|
||||
+14
-4
@@ -253,9 +253,9 @@ int do_confirm(User * u)
|
||||
char *email = NULL;
|
||||
int forced = 0;
|
||||
User *utmp = NULL;
|
||||
#ifdef USE_ENCRYPTION
|
||||
char modes[512];
|
||||
int len;
|
||||
#endif
|
||||
|
||||
nr = findrequestnick(u->nick);
|
||||
|
||||
if (NSEmailReg) {
|
||||
@@ -383,12 +383,22 @@ int do_confirm(User * u)
|
||||
#endif
|
||||
u->lastnickreg = time(NULL);
|
||||
if (ircd->modeonreg) {
|
||||
len = strlen(ircd->modeonreg);
|
||||
strncpy(modes,ircd->modeonreg,512);
|
||||
if(ircd->rootmodeonid && (u->na->nc->flags & NI_SERVICES_ROOT)) {
|
||||
strncat(modes,ircd->rootmodeonid,512-len);
|
||||
} else if(ircd->adminmodeonid && (u->na->nc->flags & NI_SERVICES_ADMIN)) {
|
||||
strncat(modes,ircd->adminmodeonid,512-len);
|
||||
} else if(ircd->opermodeonid && (u->na->nc->flags & NI_SERVICES_OPER)) {
|
||||
strncat(modes,ircd->opermodeonid,512-len);
|
||||
}
|
||||
|
||||
if (ircd->tsonmode) {
|
||||
snprintf(tsbuf, sizeof(tsbuf), "%lu",
|
||||
(unsigned long int) u->timestamp);
|
||||
common_svsmode(u, ircd->modeonreg, tsbuf);
|
||||
common_svsmode(u, modes, tsbuf);
|
||||
} else {
|
||||
common_svsmode(u, ircd->modeonreg, NULL);
|
||||
common_svsmode(u, modes, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -586,7 +586,9 @@ int loadModule(Module * m, User * u)
|
||||
if (func) {
|
||||
version = (int (*)())ano_modsym(m->handle,"getAnopeBuildVersion");
|
||||
if(version && version() >= VERSION_BUILD ) {
|
||||
alog("Module %s compiled against anope revision %d, this is %d",m->name,version(),VERSION_BUILD);
|
||||
if(debug) {
|
||||
alog("Module %s compiled against anope revision %d, this is %d",m->name,version(),VERSION_BUILD);
|
||||
}
|
||||
} else {
|
||||
ano_modclose(m->handle);
|
||||
ano_modclearerr();
|
||||
|
||||
@@ -49,6 +49,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for channel admin */
|
||||
NULL, /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -48,6 +48,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to unset for chan admin */
|
||||
NULL, /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
NULL, /* Mode on UnReg */
|
||||
NULL, /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to unset for chan admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"+d", /* Mode on Nick Change */
|
||||
0, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for admin */
|
||||
NULL, /* Mode to unset for admin */
|
||||
NULL, /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
NULL, /* Mode on UnReg */
|
||||
NULL, /* Mode on Nick Change */
|
||||
0, /* Supports SGlines */
|
||||
|
||||
@@ -66,6 +66,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+r", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r", /* Mode on UnReg */
|
||||
"-r", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -45,6 +45,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to unset for chan admin */
|
||||
"+R", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-R", /* Mode on UnReg */
|
||||
"-R", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -45,6 +45,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for chan admin */
|
||||
"-a", /* Mode to unset for chan admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for chan admin */
|
||||
"-a", /* Mode to unset for chan admin */
|
||||
"+r", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r", /* Mode on UnReg */
|
||||
NULL, /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-rd", /* Mode on UnReg */
|
||||
"-r+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -49,6 +49,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to unset for chan admin */
|
||||
NULL, /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
NULL, /* Mode on UnReg */
|
||||
NULL, /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -51,6 +51,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+e", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-e", /* Mode on UnReg */
|
||||
"-e", /* Mode on Nick Change */
|
||||
0, /* Supports SGlines */
|
||||
|
||||
@@ -49,6 +49,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to unset for chan admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
NULL, /* Mode to set for chan admin */
|
||||
NULL, /* Mode to remove for chan admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"-r+d", /* Mode on Nick Change */
|
||||
0, /* Supports SGlines */
|
||||
|
||||
@@ -47,6 +47,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -49,6 +49,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"-r+d", /* Mode on Nick Change */
|
||||
0, /* Supports SGlines */
|
||||
|
||||
@@ -49,6 +49,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"-r+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
@@ -48,6 +48,9 @@ IRCDVar myIrcd[] = {
|
||||
"+a", /* Mode to set for channel admin */
|
||||
"-a", /* Mode to unset for channel admin */
|
||||
"+rd", /* Mode On Reg */
|
||||
NULL, /* Mode on ID for Roots */
|
||||
NULL, /* Mode on ID for Admins */
|
||||
NULL, /* Mode on ID for Opers */
|
||||
"-r+d", /* Mode on UnReg */
|
||||
"-r+d", /* Mode on Nick Change */
|
||||
1, /* Supports SGlines */
|
||||
|
||||
+5
-1
@@ -9,10 +9,14 @@ VERSION_MAJOR="1"
|
||||
VERSION_MINOR="7"
|
||||
VERSION_PATCH="14"
|
||||
VERSION_EXTRA=""
|
||||
VERSION_BUILD="1068"
|
||||
VERSION_BUILD="1069"
|
||||
|
||||
# $Log$
|
||||
#
|
||||
# BUILD : 1.7.14 (1069)
|
||||
# BUGS : N/A
|
||||
# NOTES : Added support for ircd modules to set extra modes based on services access (plexus needs this)
|
||||
#
|
||||
# BUILD : 1.7.14 (1068)
|
||||
# BUGS : N/A
|
||||
# NOTES : Added -nothird and -support command line options
|
||||
|
||||
Reference in New Issue
Block a user