Take auth_user into account when detecting redundant/duplicate auth{}.
from ircd-seven (spb)
This commit is contained in:
parent
90afc118fd
commit
3d1f32c07a
1 changed files with 6 additions and 3 deletions
|
@ -892,7 +892,7 @@ conf_begin_auth(struct TopConf *tc)
|
|||
static int
|
||||
conf_end_auth(struct TopConf *tc)
|
||||
{
|
||||
struct ConfItem *yy_tmp;
|
||||
struct ConfItem *yy_tmp, *found_conf;
|
||||
rb_dlink_node *ptr;
|
||||
rb_dlink_node *next_ptr;
|
||||
|
||||
|
@ -910,9 +910,12 @@ conf_end_auth(struct TopConf *tc)
|
|||
collapse(yy_aconf->user);
|
||||
collapse(yy_aconf->host);
|
||||
conf_add_class_to_conf(yy_aconf);
|
||||
if (find_exact_conf_by_address("*", CONF_CLIENT, "*"))
|
||||
if ((found_conf = find_exact_conf_by_address("*", CONF_CLIENT, "*")) && found_conf->spasswd == NULL)
|
||||
conf_report_error("Ignoring redundant auth block (after *@*)");
|
||||
else if (find_exact_conf_by_address(yy_aconf->host, CONF_CLIENT, yy_aconf->user))
|
||||
else if ((found_conf = find_exact_conf_by_address(yy_aconf->host, CONF_CLIENT, yy_aconf->user)) &&
|
||||
( (!found_conf->spasswd && !yy_aconf->spasswd) ||
|
||||
(found_conf->spasswd && yy_aconf->spasswd &&
|
||||
0 == irccmp(found_conf->spasswd, yy_aconf->spasswd))))
|
||||
conf_report_error("Ignoring duplicate auth block for %s@%s",
|
||||
yy_aconf->user, yy_aconf->host);
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue