1185 |
|
|
1186 |
|
if (!irccmp(conf->name, name)) |
1187 |
|
{ |
1188 |
– |
if (conf->class->ref_count >= conf->class->max_total) |
1189 |
– |
continue; |
1188 |
|
if (!who) |
1189 |
|
return conf; |
1190 |
|
if (EmptyString(conf->user) || EmptyString(conf->host)) |
1195 |
|
{ |
1196 |
|
case HM_HOST: |
1197 |
|
if (match(conf->host, who->host) || match(conf->host, who->sockhost)) |
1198 |
< |
return conf; |
1198 |
> |
if (!conf->class->max_total || conf->class->ref_count < conf->class->max_total) |
1199 |
> |
return conf; |
1200 |
|
break; |
1201 |
|
case HM_IPV4: |
1202 |
|
if (who->localClient->aftype == AF_INET) |
1203 |
|
if (match_ipv4(&who->localClient->ip, &conf->addr, conf->bits)) |
1204 |
< |
return conf; |
1204 |
> |
if (!conf->class->max_total || conf->class->ref_count < conf->class->max_total) |
1205 |
> |
return conf; |
1206 |
|
break; |
1207 |
|
#ifdef IPV6 |
1208 |
|
case HM_IPV6: |
1209 |
|
if (who->localClient->aftype == AF_INET6) |
1210 |
|
if (match_ipv6(&who->localClient->ip, &conf->addr, conf->bits)) |
1211 |
< |
return conf; |
1211 |
> |
if (!conf->class->max_total || conf->class->ref_count < conf->class->max_total) |
1212 |
> |
return conf; |
1213 |
|
break; |
1214 |
|
#endif |
1215 |
|
default: |