diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/hostserv.c | 20 | ||||
-rw-r--r-- | src/operserv.c | 1 |
2 files changed, 14 insertions, 7 deletions
diff --git a/src/hostserv.c b/src/hostserv.c index 3a660fd0d..229b809a0 100644 --- a/src/hostserv.c +++ b/src/hostserv.c @@ -709,7 +709,11 @@ int do_setall(User * u) notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick); return MOD_CONT; } - alog("vHost for all nicks in group \002%s\002 set to \002%s\002 by oper \002%s\002", nick, hostmask, u->nick); + if (vIdent && ircd->vident) { + alog("vHost for all nicks in group \002%s\002 set to \002%s@%s\002 by oper \002%s\002", nick, vIdent, hostmask, u->nick); + } else { + alog("vHost for all nicks in group \002%s\002 set to \002%s\002 by oper \002%s\002", nick, hostmask, u->nick); + } do_hs_sync(na->nc, vIdent, hostmask, u->nick, tmp_time); if (vIdent) { notice_lang(s_HostServ, u, HOST_IDENT_SETALL, nick, vIdent, @@ -740,10 +744,6 @@ int do_delall(User * u) notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick); return MOD_CONT; } - if (na->status & NS_VERBOTEN) { - notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick); - return MOD_CONT; - } nc = na->nc; for (i = 0; i < nc->aliases.count; i++) { na = nc->aliases.list[i]; @@ -900,7 +900,11 @@ int do_set(User * u) notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick); return MOD_CONT; } - alog("vHost for user \002%s\002 set to \002%s\002 by oper \002%s\002", nick, hostmask, u->nick); + if (vIdent && ircd->vident) { + alog("vHost for user \002%s\002 set to \002%s@%s\002 by oper \002%s\002", nick, vIdent, hostmask, u->nick); + } else { + alog("vHost for user \002%s\002 set to \002%s\002 by oper \002%s\002", nick, hostmask, u->nick); + } addHostCore(nick, vIdent, hostmask, u->nick, tmp_time); if (vIdent) { notice_lang(s_HostServ, u, HOST_IDENT_SET, nick, vIdent, @@ -987,6 +991,10 @@ int do_del(User * u) char *nick = strtok(NULL, " "); if (nick) { if ((na = findnick(nick))) { + if (na->status & NS_VERBOTEN) { + notice_lang(s_HostServ, u, NICK_X_FORBIDDEN, nick); + return MOD_CONT; + } alog("vHost for user \002%s\002 deleted by oper \002%s\002", nick, u->nick); delHostCore(nick); diff --git a/src/operserv.c b/src/operserv.c index 76ebf671a..542e23b13 100644 --- a/src/operserv.c +++ b/src/operserv.c @@ -2982,7 +2982,6 @@ int check_sqline(char *nick, int nick_change) /* We kill nick since s_sqline can't */ snprintf(reason, sizeof(reason), "Q-Lined: %s", sx->reason); kill_user(s_OperServ, nick, reason); - free(reason); return 1; } } |