addr = (struct rb_sockaddr_storage *)&xaddr;
else
addr = (struct rb_sockaddr_storage *)naddr;
-
+
+ if(strpbrk(ip, "*?") != NULL)
+ {
+ return HM_HOST;
+ }
#ifdef RB_IPV6
if(strchr(ip, ':'))
{
/* if theres a spoof, check it against klines.. */
if(IsConfDoSpoofIp(iconf))
{
- char *p = strchr(iconf->name, '@');
+ char *p = strchr(iconf->info.name, '@');
/* note, we dont need to pass sockhost here, as its
* guaranteed to not match by whats above.. --anfl
if(p)
{
*p = '\0';
- kconf = find_conf_by_address(p+1, NULL, NULL, ip, CONF_KILL, aftype, iconf->name, NULL);
+ kconf = find_conf_by_address(p+1, NULL, NULL, ip, CONF_KILL, aftype, iconf->info.name, NULL);
*p = '@';
}
else
- kconf = find_conf_by_address(iconf->name, NULL, NULL, ip, CONF_KILL, aftype, vuser, NULL);
+ kconf = find_conf_by_address(iconf->info.name, NULL, NULL, ip, CONF_KILL, aftype, vuser, NULL);
if(kconf)
return kconf;
if(address == NULL)
address = "/NOMATCH!/";
- arec = rb_malloc(sizeof(struct AddressRec));
masktype = parse_netmask(address, (struct sockaddr *)&addr, &bits);
#ifdef RB_IPV6
if(masktype == HM_IPV6)
void
report_auth(struct Client *client_p)
{
- char *name, *host, *pass = "*", *user, *classname;
+ char *name, *host, *pass, *user, *classname;
struct AddressRec *arec;
struct ConfItem *aconf;
int i, port;