return find_conf_by_address(NULL, NULL, NULL, addr, CONF_DLINE | 1, aftype, NULL);
}
-/* void find_exact_conf_by_address(const char*, int, const char *,
- * struct ConfItem *aconf)
+/* void find_exact_conf_by_address(const char*, int, const char *)
* Input:
* Output: ConfItem if found
* Side-effects: None
{
if (arec->type == type &&
arec->masktype == masktype &&
- !irccmp(arec->username, username))
+ (arec->username == NULL || username == NULL ? arec->username == username : !irccmp(arec->username, username)))
{
if (masktype == HM_HOST)
{
prefix_ptr = prefix_of_host;
if(IsNoTilde(aconf))
*prefix_ptr++ = '-';
- if(IsLimitIp(aconf))
- *prefix_ptr++ = '!';
if(IsNeedIdentd(aconf))
*prefix_ptr++ = '+';
- if(IsPassIdentd(aconf))
- *prefix_ptr++ = '$';
- if(IsNoMatchIp(aconf))
- *prefix_ptr++ = '%';
if(IsConfDoSpoofIp(aconf))
*prefix_ptr++ = '=';
if(MyOper(sptr) && IsConfExemptKline(aconf))