X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fnickserv.c;h=4cb86a7adb1d7287fea278e96ee61c72f0121499;hb=6ad7e65ad5121cd1ad3f2f19c7e9a9912cfa44f0;hp=b9931de907b2be615401eec661d972b369502326;hpb=57fd78c7ef01d78b939698da6040c7164ff6647d;p=srvx.git diff --git a/src/nickserv.c b/src/nickserv.c index b9931de..4cb86a7 100644 --- a/src/nickserv.c +++ b/src/nickserv.c @@ -1382,11 +1382,11 @@ static NICKSERV_FUNC(cmd_register) return 0; /* Add any masks they should get. */ if (nickserv_conf.default_hostmask) { - string_list_append(hi->masks, strdup("*@*")); + nickserv_addmask(NULL, hi, strdup("*@*")); } else { - string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); + nickserv_addmask(NULL, hi, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); if (irc_in_addr_is_valid(user->ip) && !irc_pton(&ip, NULL, user->hostname)) - string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); + nickserv_addmask(NULL, hi, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); } /* If they're the first to register, give them level 1000. */ @@ -1959,9 +1959,9 @@ static NICKSERV_FUNC(cmd_auth) cryptpass(passwd, hi->passwd); if (!hi->masks->used) { irc_in_addr_t ip; - string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); + nickserv_addmask(NULL, hi, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); if (irc_in_addr_is_valid(user->ip) && irc_pton(&ip, NULL, user->hostname)) - string_list_append(hi->masks, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); + nickserv_addmask(NULL, hi, generate_hostmask(user, GENMASK_OMITNICK|GENMASK_BYIP|GENMASK_NO_HIDING|GENMASK_ANY_IDENT)); } authlog_add(hi, user, NULL); argv[pw_arg] = "****"; @@ -1969,7 +1969,7 @@ static NICKSERV_FUNC(cmd_auth) return 1; } -struct handle_info *checklogin(const char *user, const char *pass, const char *numeric, const char *hostmask, const char *ipmask) +struct handle_info *checklogin(const char *user, const char *pass, UNUSED_ARG(const char *numeric), const char *hostmask, const char *ipmask) { struct handle_info *hi; unsigned int match = 0, ii = 0; @@ -2421,13 +2421,15 @@ nickserv_addmask(struct userNode *user, struct handle_info *hi, const char *mask char *new_mask = canonicalize_hostmask(strdup(mask)); for (i=0; imasks->used; i++) { if (!irccasecmp(new_mask, hi->masks->list[i])) { - send_message(user, nickserv, "NSMSG_ADDMASK_ALREADY", new_mask); + if(user) + send_message(user, nickserv, "NSMSG_ADDMASK_ALREADY", new_mask); free(new_mask); return 0; } } string_list_append(hi->masks, new_mask); - send_message(user, nickserv, "NSMSG_ADDMASK_SUCCESS", new_mask); + if(user) + send_message(user, nickserv, "NSMSG_ADDMASK_SUCCESS", new_mask); return 1; }