mirror of
https://github.com/anope/anope.git
synced 2026-07-08 22:33:13 +02:00
BUILD : 1.7.19 (1286) BUGS : 731 NOTES : Fixed TS6 UID generation
git-svn-id: svn://svn.anope.org/anope/trunk@1286 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1004 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
parent
53fbcea421
commit
071a08c7ec
@@ -14,8 +14,6 @@
|
||||
#include "pseudo.h"
|
||||
#include "charybdis.h"
|
||||
|
||||
int ts6nickcount = 0;
|
||||
|
||||
IRCDVar myIrcd[] = {
|
||||
{"Charybdis 1.0+", /* ircd name */
|
||||
"+oiS", /* nickserv mode */
|
||||
@@ -144,6 +142,8 @@ IRCDCAPAB myIrcdcap[] = {
|
||||
0, 0, 0}
|
||||
};
|
||||
|
||||
/*******************************************************************/
|
||||
|
||||
void charybdis_set_umode(User * user, int ac, char **av)
|
||||
{
|
||||
int add = 1; /* 1 if adding modes, 0 if deleting */
|
||||
@@ -1051,16 +1051,13 @@ void charybdis_cmd_connect(int servernum)
|
||||
void charybdis_cmd_bot_nick(char *nick, char *user, char *host, char *real,
|
||||
char *modes)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
if (UseTS6) {
|
||||
snprintf(nicknumbuf, 10, "%sAAAAA%c", Numeric,
|
||||
(ts6nickcount + 'A'));
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0 %s :%s", nick,
|
||||
(long int) time(NULL), modes, user, host, nicknumbuf,
|
||||
(long int) time(NULL), modes, user, host, uidbuf,
|
||||
real);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount++;
|
||||
new_uid(nick, uidbuf);
|
||||
} else {
|
||||
send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
|
||||
(long int) time(NULL), modes, user, host, ServerName,
|
||||
@@ -1429,22 +1426,19 @@ void charybdis_cmd_tmode(char *source, char *dest, const char *fmt, ...)
|
||||
|
||||
void charybdis_cmd_nick(char *nick, char *name, char *mode)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
if (UseTS6) {
|
||||
snprintf(nicknumbuf, 10, "%sAAAAA%c", Numeric,
|
||||
(ts6nickcount + 'A'));
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0 %s :%s", nick,
|
||||
(long int) time(NULL), mode, ServiceUser, ServiceHost,
|
||||
nicknumbuf, name);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount++;
|
||||
uidbuf, name);
|
||||
new_uid(nick, uidbuf);
|
||||
} else {
|
||||
send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
|
||||
(long int) time(NULL), mode, ServiceUser, ServiceHost,
|
||||
ServerName, name);
|
||||
}
|
||||
send_cmd(UseTS6 ? nicknumbuf : nick, "RESV * %s :%s", nick, "Reserved for services");
|
||||
charybdis_cmd_sqline(nick, "Reserved for services");
|
||||
}
|
||||
|
||||
void charybdis_cmd_kick(char *source, char *chan, char *user, char *buf)
|
||||
|
||||
+7
-15
@@ -15,8 +15,6 @@
|
||||
#include "pseudo.h"
|
||||
#include "ratbox.h"
|
||||
|
||||
int ts6nickcount = 0;
|
||||
|
||||
IRCDVar myIrcd[] = {
|
||||
{"Ratbox 2.0+", /* ircd name */
|
||||
"+oi", /* nickserv mode */
|
||||
@@ -989,16 +987,13 @@ void ratbox_cmd_connect(int servernum)
|
||||
void ratbox_cmd_bot_nick(char *nick, char *user, char *host, char *real,
|
||||
char *modes)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
if (UseTS6) {
|
||||
snprintf(nicknumbuf, 10, "%sAAAAA%c", Numeric,
|
||||
(ts6nickcount + 'A'));
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0 %s :%s", nick,
|
||||
(long int) time(NULL), modes, user, host, nicknumbuf,
|
||||
(long int) time(NULL), modes, user, host, uidbuf,
|
||||
real);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount++;
|
||||
new_uid(nick, uidbuf);
|
||||
} else {
|
||||
send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
|
||||
(long int) time(NULL), modes, user, host, ServerName,
|
||||
@@ -1360,22 +1355,19 @@ void ratbox_cmd_tmode(char *source, char *dest, const char *fmt, ...)
|
||||
|
||||
void ratbox_cmd_nick(char *nick, char *name, char *mode)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
if (UseTS6) {
|
||||
snprintf(nicknumbuf, 10, "%sAAAAA%c", Numeric,
|
||||
(ts6nickcount + 'A'));
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0 %s :%s", nick,
|
||||
(long int) time(NULL), mode, ServiceUser, ServiceHost,
|
||||
nicknumbuf, name);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount++;
|
||||
uidbuf, name);
|
||||
new_uid(nick, uidbuf);
|
||||
} else {
|
||||
send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
|
||||
(long int) time(NULL), mode, ServiceUser, ServiceHost,
|
||||
ServerName, name);
|
||||
}
|
||||
send_cmd(UseTS6 ? nicknumbuf : nick, "RESV * %s :%s", nick, "Reserved for services");
|
||||
ratbox_cmd_sqline(nick, "Reserved for services");
|
||||
}
|
||||
|
||||
void ratbox_cmd_kick(char *source, char *chan, char *user, char *buf)
|
||||
|
||||
@@ -16,9 +16,6 @@
|
||||
#include "pseudo.h"
|
||||
#include "shadowircd.h"
|
||||
|
||||
/* 6 slot array, 35 possible combinations per slot, exponential. */
|
||||
int ts6nickcount[6] = { 0, 0, 0, 0, 0, 0 };
|
||||
|
||||
IRCDVar myIrcd[] = {
|
||||
{"ShadowIRCd 4.0+", /* ircd name */
|
||||
"+oiqSK", /* nickserv mode */
|
||||
@@ -992,19 +989,13 @@ void shadowircd_cmd_connect(int servernum)
|
||||
void shadowircd_cmd_bot_nick(char *nick, char *user, char *host,
|
||||
char *real, char *modes)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
snprintf(nicknumbuf, 10, "%sAAAA%c%c", Numeric,
|
||||
(ts6nickcount[1] + 'A'), (ts6nickcount[0] + 'A'));
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0.0.0.0 %s %s :%s", nick,
|
||||
(long int) time(NULL), modes, user, host, nicknumbuf, host,
|
||||
(long int) time(NULL), modes, user, host, uidbuf, host,
|
||||
real);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount[0]++;
|
||||
if (ts6nickcount[0] > 35) { /* AAAAA9 */
|
||||
ts6nickcount[1]++;
|
||||
ts6nickcount[0] = 0; /* AAAABA */
|
||||
}
|
||||
new_uid(nick, uidbuf);
|
||||
shadowircd_cmd_sqline(nick, "Reserved for services");
|
||||
}
|
||||
|
||||
@@ -1360,14 +1351,13 @@ void shadowircd_cmd_tmode(char *source, char *dest, char *buf)
|
||||
|
||||
void shadowircd_cmd_nick(char *nick, char *name, char *mode)
|
||||
{
|
||||
char nicknumbuf[10];
|
||||
char *uidbuf = ts6_uid_retrieve();
|
||||
|
||||
EnforceQlinedNick(nick, NULL);
|
||||
snprintf(nicknumbuf, 10, "%sAAAAA%c", TS6SID, (ts6nickcount[0] + 'A'));
|
||||
send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0.0.0.0 %s %s :%s", nick,
|
||||
(long int) time(NULL), mode, ServiceUser, ServiceHost,
|
||||
nicknumbuf, ServiceHost, name);
|
||||
new_uid(nick, nicknumbuf);
|
||||
ts6nickcount[0]++;
|
||||
uidbuf, ServiceHost, name);
|
||||
new_uid(nick, uidbuf);
|
||||
shadowircd_cmd_sqline(nick, "Reserved for services");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user