Ensure AWAY pacing only affects local clients.

This commit is contained in:
William Pitcock 2012-02-21 21:09:33 -06:00
parent 63a0ed0604
commit dc0fd46236

View file

@ -94,6 +94,8 @@ m_away(struct Client *client_p, struct Client *source_p, int parc, const char *p
}
/* Rate limit this because it is sent to common channels. */
if (MyClient(source_p))
{
if(!IsOper(source_p) &&
source_p->localClient->next_away > rb_current_time())
{
@ -107,6 +109,7 @@ m_away(struct Client *client_p, struct Client *source_p, int parc, const char *p
else
source_p->localClient->next_away = rb_current_time() +
ConfigFileEntry.away_interval;
}
if(source_p->user->away == NULL)
allocate_away(source_p);
@ -127,6 +130,5 @@ m_away(struct Client *client_p, struct Client *source_p, int parc, const char *p
if(MyConnect(source_p))
sendto_one_numeric(source_p, RPL_NOWAWAY, form_str(RPL_NOWAWAY));
return 0;
}