const char *reason = NULL;
const char *exit_reason = conn_closed;
- if(ConfigFileEntry.kline_with_reason && !EmptyString(aconf->passwd))
+ if(ConfigFileEntry.kline_with_reason)
{
- reason = aconf->passwd;
- exit_reason = aconf->passwd;
+ reason = get_user_ban_reason(aconf);
+ exit_reason = reason;
}
else
{
if(IsOper(source_p))
rb_dlinkFindDestroy(source_p, &oper_list);
+ /* get rid of any metadata the user may have */
+ user_metadata_clear(source_p);
+
sendto_common_channels_local(source_p, ":%s!%s@%s QUIT :%s",
source_p->name,
source_p->username, source_p->host, comment);
{
free_away(client_p);
- /* get rid of any metadata the user may have */
- user_metadata_clear(client_p);
-
if(--user->refcnt <= 0)
{
if(user->away)
if(propegate)
sendto_match_servs(&me, "*", CAP_ENCAP, NOCAPS, "ENCAP * METADATA ADD %s %s :%s",
- target->name, name, value);
+ target->id, name, value);
return md;
}
if(propegate)
sendto_match_servs(&me, "*", CAP_ENCAP, NOCAPS, "ENCAP * METADATA DELETE %s %s",
- target->name, name);
+ target->id, name);
}
/*