remove RB_IPV6
This commit is contained in:
parent
f21ef0cebc
commit
de2934965c
34 changed files with 15 additions and 336 deletions
|
@ -335,11 +335,9 @@ configure_authd(void)
|
|||
rb_helper_write(authd_helper, "O opm_listener %s %hu",
|
||||
opm_listeners[LISTEN_IPV4].ipaddr, opm_listeners[LISTEN_IPV4].port);
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(opm_listeners[LISTEN_IPV6].ipaddr[0] != '\0')
|
||||
rb_helper_write(authd_helper, "O opm_listener %s %hu",
|
||||
opm_listeners[LISTEN_IPV6].ipaddr, opm_listeners[LISTEN_IPV6].port);
|
||||
#endif
|
||||
|
||||
RB_DLINK_FOREACH(ptr, opm_list.head)
|
||||
{
|
||||
|
|
|
@ -226,11 +226,9 @@ bandb_check_kline(struct ConfItem *aconf)
|
|||
|
||||
if(aftype != HM_HOST)
|
||||
{
|
||||
#ifdef RB_IPV6
|
||||
if(aftype == HM_IPV6)
|
||||
aftype = AF_INET6;
|
||||
else
|
||||
#endif
|
||||
aftype = AF_INET;
|
||||
|
||||
kconf = find_conf_by_address(aconf->host, NULL, NULL, (struct sockaddr *)&daddr,
|
||||
|
|
|
@ -578,7 +578,6 @@ is_banned_list(struct Channel *chptr, rb_dlink_list *list,
|
|||
s3 = src_althost;
|
||||
}
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&who->localClient->ip) == AF_INET6 &&
|
||||
rb_ipv4_from_ipv6((const struct sockaddr_in6 *)&who->localClient->ip, &ip4))
|
||||
{
|
||||
|
@ -588,7 +587,6 @@ is_banned_list(struct Channel *chptr, rb_dlink_list *list,
|
|||
s4, src_ip4host + sizeof src_ip4host - s4);
|
||||
s4 = src_ip4host;
|
||||
}
|
||||
#endif
|
||||
|
||||
RB_DLINK_FOREACH(ptr, list->head)
|
||||
{
|
||||
|
@ -597,11 +595,8 @@ is_banned_list(struct Channel *chptr, rb_dlink_list *list,
|
|||
match(actualBan->banstr, s2) ||
|
||||
match_cidr(actualBan->banstr, s2) ||
|
||||
match_extban(actualBan->banstr, who, chptr, CHFL_BAN) ||
|
||||
(s3 != NULL && match(actualBan->banstr, s3))
|
||||
#ifdef RB_IPV6
|
||||
||
|
||||
(s3 != NULL && match(actualBan->banstr, s3)) ||
|
||||
(s4 != NULL && (match(actualBan->banstr, s4) || match_cidr(actualBan->banstr, s4)))
|
||||
#endif
|
||||
)
|
||||
break;
|
||||
else
|
||||
|
|
|
@ -147,11 +147,9 @@ lookup_hostname(const char *hostname, int aftype, DNSCB callback, void *data)
|
|||
req->callback = callback;
|
||||
req->data = data;
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(aftype == AF_INET6)
|
||||
aft = 6;
|
||||
else
|
||||
#endif
|
||||
aft = 4;
|
||||
|
||||
submit_dns(rid, aft == 4 ? DNS_HOST_IPV4 : DNS_HOST_IPV6, hostname);
|
||||
|
@ -172,11 +170,9 @@ lookup_ip(const char *addr, int aftype, DNSCB callback, void *data)
|
|||
req->callback = callback;
|
||||
req->data = data;
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(aftype == AF_INET6)
|
||||
aft = 6;
|
||||
else
|
||||
#endif
|
||||
aft = 4;
|
||||
|
||||
submit_dns(rid, aft == 4 ? DNS_REVERSE_IPV4 : DNS_REVERSE_IPV6, addr);
|
||||
|
@ -226,11 +222,9 @@ dns_results_callback(const char *callid, const char *status, const char *type, c
|
|||
req->data = NULL;
|
||||
return;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
if(aft == 6)
|
||||
aft = AF_INET6;
|
||||
else
|
||||
#endif
|
||||
aft = AF_INET;
|
||||
|
||||
req->callback(results, st, aft, req->data);
|
||||
|
|
|
@ -31,9 +31,7 @@
|
|||
#include "send.h"
|
||||
#include "match.h"
|
||||
|
||||
#ifdef RB_IPV6
|
||||
static unsigned long hash_ipv6(struct sockaddr *, int);
|
||||
#endif
|
||||
static unsigned long hash_ipv4(struct sockaddr *, int);
|
||||
|
||||
|
||||
|
@ -65,7 +63,6 @@ parse_netmask(const char *text, struct rb_sockaddr_storage *naddr, int *nb)
|
|||
{
|
||||
return HM_HOST;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
if(strchr(ip, ':'))
|
||||
{
|
||||
if((ptr = strchr(ip, '/')))
|
||||
|
@ -84,7 +81,6 @@ parse_netmask(const char *text, struct rb_sockaddr_storage *naddr, int *nb)
|
|||
else
|
||||
return HM_HOST;
|
||||
} else
|
||||
#endif
|
||||
if(strchr(text, '.'))
|
||||
{
|
||||
if((ptr = strchr(ip, '/')))
|
||||
|
@ -139,7 +135,6 @@ hash_ipv4(struct sockaddr *saddr, int bits)
|
|||
* Output: A hash value of the IP address.
|
||||
* Side effects: None
|
||||
*/
|
||||
#ifdef RB_IPV6
|
||||
static unsigned long
|
||||
hash_ipv6(struct sockaddr *saddr, int bits)
|
||||
{
|
||||
|
@ -162,7 +157,6 @@ hash_ipv6(struct sockaddr *saddr, int bits)
|
|||
}
|
||||
return v & (ATABLE_SIZE - 1);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* int hash_text(const char *start)
|
||||
* Input: The start of the text to hash.
|
||||
|
@ -227,7 +221,6 @@ find_conf_by_address(const char *name, const char *sockhost,
|
|||
if(addr)
|
||||
{
|
||||
/* Check for IPV6 matches... */
|
||||
#ifdef RB_IPV6
|
||||
if(fam == AF_INET6)
|
||||
{
|
||||
|
||||
|
@ -249,7 +242,6 @@ find_conf_by_address(const char *name, const char *sockhost,
|
|||
}
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if(fam == AF_INET)
|
||||
{
|
||||
for (b = 32; b >= 0; b -= 8)
|
||||
|
@ -369,9 +361,7 @@ find_address_conf(const char *host, const char *sockhost, const char *user,
|
|||
{
|
||||
struct ConfItem *iconf, *kconf;
|
||||
const char *vuser;
|
||||
#ifdef RB_IPV6
|
||||
struct sockaddr_in ip4;
|
||||
#endif
|
||||
|
||||
/* Find the best I-line... If none, return NULL -A1kmm */
|
||||
if(!(iconf = find_conf_by_address(host, sockhost, NULL, ip, CONF_CLIENT, aftype, user, auth_user)))
|
||||
|
@ -422,7 +412,6 @@ find_address_conf(const char *host, const char *sockhost, const char *user,
|
|||
return kconf;
|
||||
}
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(ip != NULL && ip->sa_family == AF_INET6 &&
|
||||
rb_ipv4_from_ipv6((const struct sockaddr_in6 *)(const void *)ip, &ip4))
|
||||
{
|
||||
|
@ -430,7 +419,6 @@ find_address_conf(const char *host, const char *sockhost, const char *user,
|
|||
if(kconf)
|
||||
return kconf;
|
||||
}
|
||||
#endif /* RB_IPV6 */
|
||||
|
||||
return iconf;
|
||||
}
|
||||
|
@ -444,9 +432,7 @@ struct ConfItem *
|
|||
find_dline(struct sockaddr *addr, int aftype)
|
||||
{
|
||||
struct ConfItem *aconf;
|
||||
#ifdef RB_IPV6
|
||||
struct sockaddr_in addr2;
|
||||
#endif
|
||||
|
||||
aconf = find_conf_by_address(NULL, NULL, NULL, addr, CONF_EXEMPTDLINE | 1, aftype, NULL, NULL);
|
||||
if(aconf)
|
||||
|
@ -454,7 +440,6 @@ find_dline(struct sockaddr *addr, int aftype)
|
|||
aconf = find_conf_by_address(NULL, NULL, NULL, addr, CONF_DLINE | 1, aftype, NULL, NULL);
|
||||
if(aconf)
|
||||
return aconf;
|
||||
#ifdef RB_IPV6
|
||||
if(addr->sa_family == AF_INET6 &&
|
||||
rb_ipv4_from_ipv6((const struct sockaddr_in6 *)(const void *)addr, &addr2))
|
||||
{
|
||||
|
@ -462,7 +447,6 @@ find_dline(struct sockaddr *addr, int aftype)
|
|||
if(aconf)
|
||||
return aconf;
|
||||
}
|
||||
#endif
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -482,15 +466,12 @@ find_exact_conf_by_address(const char *address, int type, const char *username)
|
|||
if(address == NULL)
|
||||
address = "/NOMATCH!/";
|
||||
masktype = parse_netmask(address, &addr, &bits);
|
||||
#ifdef RB_IPV6
|
||||
if(masktype == HM_IPV6)
|
||||
{
|
||||
/* We have to do this, since we do not re-hash for every bit -A1kmm. */
|
||||
hv = hash_ipv6((struct sockaddr *)&addr, bits - bits % 16);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if(masktype == HM_IPV4)
|
||||
else if(masktype == HM_IPV4)
|
||||
{
|
||||
/* We have to do this, since we do not re-hash for every bit -A1kmm. */
|
||||
hv = hash_ipv4((struct sockaddr *)&addr, bits - bits % 8);
|
||||
|
@ -539,7 +520,6 @@ add_conf_by_address(const char *address, int type, const char *username, const c
|
|||
address = "/NOMATCH!/";
|
||||
arec = rb_malloc(sizeof(struct AddressRec));
|
||||
arec->masktype = parse_netmask(address, &arec->Mask.ipa.addr, &bits);
|
||||
#ifdef RB_IPV6
|
||||
if(arec->masktype == HM_IPV6)
|
||||
{
|
||||
arec->Mask.ipa.bits = bits;
|
||||
|
@ -548,9 +528,7 @@ add_conf_by_address(const char *address, int type, const char *username, const c
|
|||
arec->next = atable[(hv = hash_ipv6((struct sockaddr *)&arec->Mask.ipa.addr, bits))];
|
||||
atable[hv] = arec;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if(arec->masktype == HM_IPV4)
|
||||
else if(arec->masktype == HM_IPV4)
|
||||
{
|
||||
arec->Mask.ipa.bits = bits;
|
||||
/* We have to do this, since we do not re-hash for every bit -A1kmm. */
|
||||
|
@ -585,16 +563,13 @@ delete_one_address_conf(const char *address, struct ConfItem *aconf)
|
|||
struct AddressRec *arec, *arecl = NULL;
|
||||
struct rb_sockaddr_storage addr;
|
||||
masktype = parse_netmask(address, &addr, &bits);
|
||||
#ifdef RB_IPV6
|
||||
if(masktype == HM_IPV6)
|
||||
{
|
||||
/* We have to do this, since we do not re-hash for every bit -A1kmm. */
|
||||
bits -= bits % 16;
|
||||
hv = hash_ipv6((struct sockaddr *)&addr, bits);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if(masktype == HM_IPV4)
|
||||
else if(masktype == HM_IPV4)
|
||||
{
|
||||
/* We have to do this, since we do not re-hash for every bit -A1kmm. */
|
||||
bits -= bits % 8;
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
#include "s_assert.h"
|
||||
#include "logger.h"
|
||||
|
||||
#if defined(NO_IN6ADDR_ANY) && defined(RB_IPV6)
|
||||
#if defined(NO_IN6ADDR_ANY)
|
||||
static const struct in6_addr in6addr_any =
|
||||
{ { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } };
|
||||
#endif
|
||||
|
@ -164,7 +164,6 @@ inetport(struct Listener *listener)
|
|||
|
||||
F = rb_socket(GET_SS_FAMILY(&listener->addr), SOCK_STREAM, 0, "Listener socket");
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&listener->addr) == AF_INET6)
|
||||
{
|
||||
struct sockaddr_in6 *in6 = (struct sockaddr_in6 *)&listener->addr;
|
||||
|
@ -173,9 +172,7 @@ inetport(struct Listener *listener)
|
|||
rb_inet_ntop(AF_INET6, &in6->sin6_addr, listener->vhost, sizeof(listener->vhost));
|
||||
listener->name = listener->vhost;
|
||||
}
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
} else {
|
||||
struct sockaddr_in *in = (struct sockaddr_in *)&listener->addr;
|
||||
if(in->sin_addr.s_addr != INADDR_ANY)
|
||||
{
|
||||
|
@ -281,7 +278,6 @@ find_listener(struct rb_sockaddr_storage *addr)
|
|||
}
|
||||
break;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
case AF_INET6:
|
||||
{
|
||||
struct sockaddr_in6 *in6 = (struct sockaddr_in6 *)addr;
|
||||
|
@ -297,7 +293,6 @@ find_listener(struct rb_sockaddr_storage *addr)
|
|||
break;
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
default:
|
||||
break;
|
||||
|
@ -334,14 +329,12 @@ add_listener(int port, const char *vhost_ip, int family, int ssl, int defer_acce
|
|||
if(rb_inet_pton(family, vhost_ip, &((struct sockaddr_in *)&vaddr)->sin_addr) <= 0)
|
||||
return;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else
|
||||
{
|
||||
if(rb_inet_pton(family, vhost_ip, &((struct sockaddr_in6 *)&vaddr)->sin6_addr) <= 0)
|
||||
return;
|
||||
|
||||
}
|
||||
#endif
|
||||
} else
|
||||
{
|
||||
switch(family)
|
||||
|
@ -349,13 +342,11 @@ add_listener(int port, const char *vhost_ip, int family, int ssl, int defer_acce
|
|||
case AF_INET:
|
||||
((struct sockaddr_in *)&vaddr)->sin_addr.s_addr = INADDR_ANY;
|
||||
break;
|
||||
#ifdef RB_IPV6
|
||||
case AF_INET6:
|
||||
memcpy(&((struct sockaddr_in6 *)&vaddr)->sin6_addr, &in6addr_any, sizeof(struct in6_addr));
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
switch(family)
|
||||
|
@ -365,13 +356,11 @@ add_listener(int port, const char *vhost_ip, int family, int ssl, int defer_acce
|
|||
SET_SS_FAMILY(&vaddr, AF_INET);
|
||||
SET_SS_PORT(&vaddr, htons(port));
|
||||
break;
|
||||
#ifdef RB_IPV6
|
||||
case AF_INET6:
|
||||
SET_SS_LEN(&vaddr, sizeof(struct sockaddr_in6));
|
||||
SET_SS_FAMILY(&vaddr, AF_INET6);
|
||||
SET_SS_PORT(&vaddr, htons(port));
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
|
12
ircd/match.c
12
ircd/match.c
|
@ -332,14 +332,12 @@ int comp_with_mask_sock(struct sockaddr *addr, struct sockaddr *dest, unsigned i
|
|||
iaddr = &((struct sockaddr_in *)(void *)addr)->sin_addr;
|
||||
idest = &((struct sockaddr_in *)(void *)dest)->sin_addr;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else
|
||||
{
|
||||
iaddr = &((struct sockaddr_in6 *)(void *)addr)->sin6_addr;
|
||||
idest = &((struct sockaddr_in6 *)(void *)dest)->sin6_addr;
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
return (comp_with_mask(iaddr, idest, mask));
|
||||
}
|
||||
|
@ -371,7 +369,6 @@ int match_ips(const char *s1, const char *s2)
|
|||
if (cidrlen <= 0)
|
||||
return 0;
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if (strchr(mask, ':') && strchr(address, ':'))
|
||||
{
|
||||
if (cidrlen > 128)
|
||||
|
@ -381,9 +378,7 @@ int match_ips(const char *s1, const char *s2)
|
|||
ipptr = &((struct sockaddr_in6 *)&ipaddr)->sin6_addr;
|
||||
maskptr = &((struct sockaddr_in6 *)&maskaddr)->sin6_addr;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (!strchr(mask, ':') && !strchr(address, ':'))
|
||||
else if (!strchr(mask, ':') && !strchr(address, ':'))
|
||||
{
|
||||
if (cidrlen > 32)
|
||||
return 0;
|
||||
|
@ -447,7 +442,6 @@ int match_cidr(const char *s1, const char *s2)
|
|||
if (cidrlen <= 0)
|
||||
return 0;
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if (strchr(ip, ':') && strchr(ipmask, ':'))
|
||||
{
|
||||
if (cidrlen > 128)
|
||||
|
@ -457,9 +451,7 @@ int match_cidr(const char *s1, const char *s2)
|
|||
ipptr = &((struct sockaddr_in6 *)&ipaddr)->sin6_addr;
|
||||
maskptr = &((struct sockaddr_in6 *)&maskaddr)->sin6_addr;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
if (!strchr(ip, ':') && !strchr(ipmask, ':'))
|
||||
else if (!strchr(ip, ':') && !strchr(ipmask, ':'))
|
||||
{
|
||||
if (cidrlen > 32)
|
||||
return 0;
|
||||
|
|
|
@ -259,7 +259,6 @@ static void
|
|||
conf_set_serverinfo_vhost6(void *data)
|
||||
{
|
||||
|
||||
#ifdef RB_IPV6
|
||||
struct rb_sockaddr_storage addr;
|
||||
|
||||
if(rb_inet_pton_sock(data, (struct sockaddr *)&addr) <= 0 || GET_SS_FAMILY(&addr) != AF_INET6)
|
||||
|
@ -269,9 +268,6 @@ conf_set_serverinfo_vhost6(void *data)
|
|||
}
|
||||
|
||||
ServerInfo.bind6 = addr;
|
||||
#else
|
||||
conf_report_error("Warning -- ignoring serverinfo::vhost6 -- IPv6 support not available.");
|
||||
#endif
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -778,7 +774,6 @@ conf_set_class_cidr_ipv4_bitlen(void *data)
|
|||
|
||||
}
|
||||
|
||||
#ifdef RB_IPV6
|
||||
static void
|
||||
conf_set_class_cidr_ipv6_bitlen(void *data)
|
||||
{
|
||||
|
@ -791,7 +786,6 @@ conf_set_class_cidr_ipv6_bitlen(void *data)
|
|||
yy_class->cidr_ipv6_bitlen = *(unsigned int *) data;
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
conf_set_class_number_per_cidr(void *data)
|
||||
|
@ -890,18 +884,14 @@ conf_set_listen_port_both(void *data, int ssl)
|
|||
"It is suggested that users be migrated to SSL/TLS connections.", args->v.number);
|
||||
}
|
||||
add_listener(args->v.number, listener_address, AF_INET, ssl, ssl || yy_defer_accept, yy_wsock);
|
||||
#ifdef RB_IPV6
|
||||
add_listener(args->v.number, listener_address, AF_INET6, ssl, ssl || yy_defer_accept, yy_wsock);
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
int family;
|
||||
#ifdef RB_IPV6
|
||||
if(strchr(listener_address, ':') != NULL)
|
||||
family = AF_INET6;
|
||||
else
|
||||
#endif
|
||||
family = AF_INET;
|
||||
|
||||
if (!ssl)
|
||||
|
@ -1320,9 +1310,7 @@ conf_end_connect(struct TopConf *tc)
|
|||
|
||||
if(EmptyString(yy_server->connect_host)
|
||||
&& GET_SS_FAMILY(&yy_server->connect4) != AF_INET
|
||||
#ifdef RB_IPV6
|
||||
&& GET_SS_FAMILY(&yy_server->connect6) != AF_INET6
|
||||
#endif
|
||||
)
|
||||
{
|
||||
conf_report_error("Ignoring connect block for %s -- missing host.",
|
||||
|
@ -1359,12 +1347,10 @@ conf_set_connect_host(void *data)
|
|||
{
|
||||
yy_server->connect4 = addr;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else if(GET_SS_FAMILY(&addr) == AF_INET6)
|
||||
{
|
||||
yy_server->connect6 = addr;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
conf_report_error("Unsupported IP address for server connect host (%s)",
|
||||
|
@ -1387,12 +1373,10 @@ conf_set_connect_vhost(void *data)
|
|||
{
|
||||
yy_server->bind4 = addr;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else if(GET_SS_FAMILY(&addr) == AF_INET6)
|
||||
{
|
||||
yy_server->bind6 = addr;
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
conf_report_error("Unsupported IP address for server connect vhost (%s)",
|
||||
|
@ -1453,10 +1437,8 @@ conf_set_connect_aftype(void *data)
|
|||
|
||||
if(rb_strcasecmp(aft, "ipv4") == 0)
|
||||
yy_server->aftype = AF_INET;
|
||||
#ifdef RB_IPV6
|
||||
else if(rb_strcasecmp(aft, "ipv6") == 0)
|
||||
yy_server->aftype = AF_INET6;
|
||||
#endif
|
||||
else
|
||||
conf_report_error("connect::aftype '%s' is unknown.", aft);
|
||||
}
|
||||
|
@ -2207,7 +2189,6 @@ conf_set_opm_listen_address_both(void *data, bool ipv6)
|
|||
|
||||
if(ipv6)
|
||||
{
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&addr) != AF_INET6)
|
||||
{
|
||||
conf_report_error("%s is of the wrong address type: %s", confstr, ip);
|
||||
|
@ -2221,10 +2202,6 @@ conf_set_opm_listen_address_both(void *data, bool ipv6)
|
|||
}
|
||||
|
||||
yy_opm_address_ipv6 = rb_strdup(ip);
|
||||
#else
|
||||
conf_report_error("%s requires IPv6 support in your ircd", confstr, ip);
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -2262,14 +2239,6 @@ conf_set_opm_listen_port_both(void *data, bool ipv6)
|
|||
int port = *((int *)data);
|
||||
const char *confstr = (ipv6 ? "opm::port_ipv6" : "opm::port_ipv4");
|
||||
|
||||
#ifndef RB_IPV6
|
||||
if(ipv6)
|
||||
{
|
||||
conf_report_error("%s requires IPv6 support in your ircd", confstr);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
if(port > 65535 || port <= 0)
|
||||
{
|
||||
conf_report_error("%s is out of range: %d", confstr, port);
|
||||
|
@ -2696,9 +2665,7 @@ static struct ConfEntry conf_class_table[] =
|
|||
{
|
||||
{ "ping_time", CF_TIME, conf_set_class_ping_time, 0, NULL },
|
||||
{ "cidr_ipv4_bitlen", CF_INT, conf_set_class_cidr_ipv4_bitlen, 0, NULL },
|
||||
#ifdef RB_IPV6
|
||||
{ "cidr_ipv6_bitlen", CF_INT, conf_set_class_cidr_ipv6_bitlen, 0, NULL },
|
||||
#endif
|
||||
{ "number_per_cidr", CF_INT, conf_set_class_number_per_cidr, 0, NULL },
|
||||
{ "number_per_ip", CF_INT, conf_set_class_number_per_ip, 0, NULL },
|
||||
{ "number_per_ip_global", CF_INT,conf_set_class_number_per_ip_global, 0, NULL },
|
||||
|
|
|
@ -166,10 +166,8 @@ add_reject(struct Client *client_p, const char *mask1, const char *mask2)
|
|||
else
|
||||
{
|
||||
int bitlen = 32;
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&client_p->localClient->ip) == AF_INET6)
|
||||
bitlen = 128;
|
||||
#endif
|
||||
pnode = make_and_lookup_ip(reject_tree, (struct sockaddr *)&client_p->localClient->ip, bitlen);
|
||||
pnode->data = rdata = rb_malloc(sizeof(reject_t));
|
||||
rb_dlinkAddTail(pnode, &rdata->rnode, &reject_list);
|
||||
|
@ -321,10 +319,8 @@ throttle_add(struct sockaddr *addr)
|
|||
|
||||
} else {
|
||||
int bitlen = 32;
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(addr) == AF_INET6)
|
||||
bitlen = 128;
|
||||
#endif
|
||||
t = rb_malloc(sizeof(throttle_t));
|
||||
t->last = rb_current_time();
|
||||
t->count = 1;
|
||||
|
|
|
@ -679,10 +679,8 @@ set_default_conf(void)
|
|||
|
||||
memset(&ServerInfo.bind4, 0, sizeof(ServerInfo.bind4));
|
||||
SET_SS_FAMILY(&ServerInfo.bind4, AF_UNSPEC);
|
||||
#ifdef RB_IPV6
|
||||
memset(&ServerInfo.bind6, 0, sizeof(ServerInfo.bind6));
|
||||
SET_SS_FAMILY(&ServerInfo.bind6, AF_UNSPEC);
|
||||
#endif
|
||||
|
||||
AdminInfo.name = NULL;
|
||||
AdminInfo.email = NULL;
|
||||
|
|
|
@ -331,13 +331,11 @@ make_server_conf(void)
|
|||
SET_SS_FAMILY(&server_p->bind4, AF_UNSPEC);
|
||||
SET_SS_LEN(&server_p->bind4, sizeof(struct sockaddr_in));
|
||||
|
||||
#ifdef RB_IPV6
|
||||
SET_SS_FAMILY(&server_p->connect6, AF_UNSPEC);
|
||||
SET_SS_LEN(&server_p->connect6, sizeof(struct sockaddr_in6));
|
||||
|
||||
SET_SS_FAMILY(&server_p->bind6, AF_UNSPEC);
|
||||
SET_SS_LEN(&server_p->bind6, sizeof(struct sockaddr_in6));
|
||||
#endif
|
||||
|
||||
server_p->aftype = AF_UNSPEC;
|
||||
|
||||
|
@ -393,7 +391,6 @@ conf_connect_dns_callback(const char *result, int status, int aftype, void *data
|
|||
|
||||
server_p->dns_query_connect4 = 0;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else if(aftype == AF_INET6)
|
||||
{
|
||||
if(status == 1)
|
||||
|
@ -401,7 +398,6 @@ conf_connect_dns_callback(const char *result, int status, int aftype, void *data
|
|||
|
||||
server_p->dns_query_connect6 = 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -426,7 +422,6 @@ conf_bind_dns_callback(const char *result, int status, int aftype, void *data)
|
|||
|
||||
server_p->dns_query_bind4 = 0;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else if(aftype == AF_INET6)
|
||||
{
|
||||
if(status == 1)
|
||||
|
@ -434,7 +429,6 @@ conf_bind_dns_callback(const char *result, int status, int aftype, void *data)
|
|||
|
||||
server_p->dns_query_bind6 = 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -462,20 +456,16 @@ add_server_conf(struct server_conf *server_p)
|
|||
{
|
||||
server_p->dns_query_connect4 =
|
||||
lookup_hostname(server_p->connect_host, AF_INET, conf_connect_dns_callback, server_p);
|
||||
#ifdef RB_IPV6
|
||||
server_p->dns_query_connect6 =
|
||||
lookup_hostname(server_p->connect_host, AF_INET6, conf_connect_dns_callback, server_p);
|
||||
#endif
|
||||
}
|
||||
|
||||
if(server_p->bind_host)
|
||||
{
|
||||
server_p->dns_query_bind4 =
|
||||
lookup_hostname(server_p->bind_host, AF_INET, conf_bind_dns_callback, server_p);
|
||||
#ifdef RB_IPV6
|
||||
server_p->dns_query_bind6 =
|
||||
lookup_hostname(server_p->bind_host, AF_INET6, conf_bind_dns_callback, server_p);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -379,11 +379,9 @@ check_server(const char *name, struct Client *client_p)
|
|||
|| (GET_SS_FAMILY(&client_addr) == GET_SS_FAMILY(&tmp_p->connect4)
|
||||
&& comp_with_mask_sock((struct sockaddr *)&client_addr,
|
||||
(struct sockaddr *)&tmp_p->connect4, 32))
|
||||
#ifdef RB_IPV6
|
||||
|| (GET_SS_FAMILY(&client_addr) == GET_SS_FAMILY(&tmp_p->connect6)
|
||||
&& comp_with_mask_sock((struct sockaddr *)&client_addr,
|
||||
(struct sockaddr *)&tmp_p->connect6, 128))
|
||||
#endif
|
||||
)
|
||||
{
|
||||
host_matched = true;
|
||||
|
@ -1045,7 +1043,6 @@ serv_connect(struct server_conf *server_p, struct Client *by)
|
|||
SET_SS_FAMILY(&sa_connect, AF_UNSPEC);
|
||||
SET_SS_FAMILY(&sa_bind, AF_UNSPEC);
|
||||
|
||||
#ifdef RB_IPV6
|
||||
if(server_p->aftype != AF_UNSPEC
|
||||
&& GET_SS_FAMILY(&server_p->connect4) == AF_INET
|
||||
&& GET_SS_FAMILY(&server_p->connect6) == AF_INET6)
|
||||
|
@ -1062,18 +1059,15 @@ serv_connect(struct server_conf *server_p, struct Client *by)
|
|||
}
|
||||
}
|
||||
else if(server_p->aftype == AF_INET || GET_SS_FAMILY(&server_p->connect4) == AF_INET)
|
||||
#endif
|
||||
{
|
||||
sa_connect = server_p->connect4;
|
||||
sa_bind = server_p->bind4;
|
||||
}
|
||||
#ifdef RB_IPV6
|
||||
else if(server_p->aftype == AF_INET6 || GET_SS_FAMILY(&server_p->connect6) == AF_INET6)
|
||||
{
|
||||
sa_connect = server_p->connect6;
|
||||
sa_bind = server_p->bind6;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* log */
|
||||
buf[0] = 0;
|
||||
|
@ -1171,10 +1165,8 @@ serv_connect(struct server_conf *server_p, struct Client *by)
|
|||
{
|
||||
if(GET_SS_FAMILY(&sa_connect) == GET_SS_FAMILY(&ServerInfo.bind4))
|
||||
sa_bind = ServerInfo.bind4;
|
||||
#ifdef RB_IPV6
|
||||
if(GET_SS_FAMILY(&sa_connect) == GET_SS_FAMILY(&ServerInfo.bind6))
|
||||
sa_bind = ServerInfo.bind6;
|
||||
#endif
|
||||
}
|
||||
|
||||
rb_connect_tcp(client_p->localClient->F,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue