mirror of
https://github.com/pi-hole/dnsmasq.git
synced 2025-12-20 02:38:32 +00:00
Merge branch 'master' into dnssec
This commit is contained in:
@@ -4,6 +4,9 @@ version 2.69
|
|||||||
on the BSD platform. Thanks to Matthias Andree for
|
on the BSD platform. Thanks to Matthias Andree for
|
||||||
valuable research on how to implement this.
|
valuable research on how to implement this.
|
||||||
|
|
||||||
|
Fix infinite loop associated with some --bogus-nxdomain
|
||||||
|
configs. Thanks fogobogo for the bug report.
|
||||||
|
|
||||||
|
|
||||||
version 2.68
|
version 2.68
|
||||||
Use random addresses for DHCPv6 temporary address
|
Use random addresses for DHCPv6 temporary address
|
||||||
|
|||||||
@@ -581,7 +581,7 @@ struct dhcp_lease {
|
|||||||
struct in6_addr addr6;
|
struct in6_addr addr6;
|
||||||
int iaid;
|
int iaid;
|
||||||
struct slaac_address {
|
struct slaac_address {
|
||||||
struct in6_addr addr, local;
|
struct in6_addr addr;
|
||||||
time_t ping_time;
|
time_t ping_time;
|
||||||
int backoff; /* zero -> confirmed */
|
int backoff; /* zero -> confirmed */
|
||||||
struct slaac_address *next;
|
struct slaac_address *next;
|
||||||
|
|||||||
@@ -2737,7 +2737,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
char *cp, *lastp = NULL, last = 0;
|
char *cp, *lastp = NULL, last = 0;
|
||||||
int fac = 1;
|
int fac = 1, isdig = 0;
|
||||||
|
|
||||||
if (strlen(a[j]) > 1)
|
if (strlen(a[j]) > 1)
|
||||||
{
|
{
|
||||||
@@ -2768,7 +2768,9 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (cp = a[j]; *cp; cp++)
|
for (cp = a[j]; *cp; cp++)
|
||||||
if (!isdigit((unsigned char)*cp) && *cp != ' ')
|
if (isdigit((unsigned char)*cp))
|
||||||
|
isdig = 1;
|
||||||
|
else if (*cp != ' ')
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (*cp)
|
if (*cp)
|
||||||
@@ -2792,7 +2794,7 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma
|
|||||||
new->domain = strip_hostname(new->hostname);
|
new->domain = strip_hostname(new->hostname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else if (isdig)
|
||||||
{
|
{
|
||||||
new->lease_time = atoi(a[j]) * fac;
|
new->lease_time = atoi(a[j]) * fac;
|
||||||
/* Leases of a minute or less confuse
|
/* Leases of a minute or less confuse
|
||||||
|
|||||||
@@ -1299,7 +1299,7 @@ int check_for_bogus_wildcard(struct dns_header *header, size_t qlen, char *name,
|
|||||||
/* Found a bogus address. Insert that info here, since there no SOA record
|
/* Found a bogus address. Insert that info here, since there no SOA record
|
||||||
to get the ttl from in the normal processing */
|
to get the ttl from in the normal processing */
|
||||||
cache_start_insert();
|
cache_start_insert();
|
||||||
cache_insert(name, NULL, now, ttl, F_IPV4 | F_FORWARD | F_NEG | F_NXDOMAIN | F_CONFIG);
|
cache_insert(name, NULL, now, ttl, F_IPV4 | F_FORWARD | F_NEG | F_NXDOMAIN);
|
||||||
cache_end_insert();
|
cache_end_insert();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|||||||
@@ -93,7 +93,6 @@ void slaac_add_addrs(struct dhcp_lease *lease, time_t now, int force)
|
|||||||
slaac->ping_time = now;
|
slaac->ping_time = now;
|
||||||
slaac->backoff = 1;
|
slaac->backoff = 1;
|
||||||
slaac->addr = addr;
|
slaac->addr = addr;
|
||||||
slaac->local = context->local6;
|
|
||||||
/* Do RA's to prod it */
|
/* Do RA's to prod it */
|
||||||
ra_start_unsolicted(now, context);
|
ra_start_unsolicted(now, context);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user