RESV FNC: Sign off/on monitor, and don't try to FNC users that already have a UID nick.

This commit is contained in:
Keith Buck 2012-03-25 01:49:34 +00:00
parent 330692a1f2
commit 07d3283f38

View file

@ -625,6 +625,10 @@ resv_nick_fnc(const char *mask, const char *reason, int temp_time)
if(IsMe(client_p) || !IsPerson(client_p) || IsExemptResv(client_p)) if(IsMe(client_p) || !IsPerson(client_p) || IsExemptResv(client_p))
continue; continue;
/* Skip users that already have UID nicks. */
if(IsDigit(client_p->name[0]))
continue;
if(match_esc(mask, client_p->name)) if(match_esc(mask, client_p->name))
{ {
nick = client_p->id; nick = client_p->id;
@ -656,6 +660,8 @@ resv_nick_fnc(const char *mask, const char *reason, int temp_time)
client_p->tsinfo = rb_current_time(); client_p->tsinfo = rb_current_time();
add_history(client_p, 1); add_history(client_p, 1);
monitor_signoff(client_p);
invalidate_bancache_user(client_p); invalidate_bancache_user(client_p);
sendto_common_channels_local(client_p, NOCAPS, ":%s!%s@%s NICK :%s", sendto_common_channels_local(client_p, NOCAPS, ":%s!%s@%s NICK :%s",
@ -667,6 +673,8 @@ resv_nick_fnc(const char *mask, const char *reason, int temp_time)
rb_strlcpy(client_p->name, nick, sizeof(client_p->name)); rb_strlcpy(client_p->name, nick, sizeof(client_p->name));
add_to_client_hash(nick, client_p); add_to_client_hash(nick, client_p);
monitor_signon(client_p);
RB_DLINK_FOREACH_SAFE(ptr, next_ptr, client_p->on_allow_list.head) RB_DLINK_FOREACH_SAFE(ptr, next_ptr, client_p->on_allow_list.head)
{ {
target_p = ptr->data; target_p = ptr->data;