summaryrefslogtreecommitdiff
path: root/src/unreal32.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/unreal32.c')
-rw-r--r--src/unreal32.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/unreal32.c b/src/unreal32.c
index 2bfbb5f57..062a57caf 100644
--- a/src/unreal32.c
+++ b/src/unreal32.c
@@ -42,7 +42,7 @@ IRCDVar ircd[] = {
"+ioS", /* Global alias mode */
"+qS", /* Used by BotServ Bots */
5, /* Chan Max Symbols */
- "-ckiflmnpstuzACGHKLMNOQRSTV", /* Modes to Remove */
+ "-cilmnpstuzACGHKMNOQRSTV", /* Modes to Remove */
"+ao", /* Channel Umode used by Botserv bots */
1, /* SVSNICK */
1, /* Vhost */
@@ -75,8 +75,8 @@ IRCDVar ircd[] = {
1, /* svshold */
1, /* time stamp on mode */
0, /* NICKIP */
- 1, /* UMODE */
1, /* O:LINE */
+ 1, /* UMODE */
1, /* VHOST ON NICK */
1, /* Change RealName */
CHAN_HELP_UNREAL, /* ChanServ extra */
@@ -106,7 +106,7 @@ IRCDCAPAB ircdcap[] = {
CAPAB_NOQUIT, /* NOQUIT */
0, /* TSMODE */
0, /* UNCONNECT */
- 0, /* NICKIP */
+ CAPAB_NICKIP, /* NICKIP */
0, /* SJOIN */
CAPAB_ZIP, /* ZIP */
0, /* BURST */
@@ -411,13 +411,14 @@ void anope_set_umode(User * user, int ac, char **av)
add = 0;
break;
case 'd':
- if (ac == 0) {
+ if (ac <= 0) {
break;
}
-
ac--;
av++;
- user->svid = strtoul(*av, NULL, 0);
+ if (av) {
+ user->svid = strtoul(*av, NULL, 0);
+ }
break;
case 'o':
if (add) {
@@ -434,13 +435,7 @@ void anope_set_umode(User * user, int ac, char **av)
break;
case 'r':
if (add && !nick_identified(user)) {
- if (UseSVS2MODE) {
- send_cmd(ServerName, "%s %s -r",
- send_token("SVS2MODE", "v"), user->nick);
- } else {
- send_cmd(ServerName, "%s %s -r",
- send_token("SVSMODE", "n"), user->nick);
- }
+ common_svsmode(user, "-r", NULL);
user->mode &= ~UMODE_r;
}
break;