From 17f738a7ea300452d6d009f8fc01bc9861f0f841 Mon Sep 17 00:00:00 2001 From: pedro Date: Tue, 15 Oct 2024 15:22:14 +0200 Subject: [PATCH] dnsmasq: update to f006be7 (2024.10.04) snapshot --- release/src-rt-6.x.4708/router/dnsmasq/VERSION | 2 +- release/src-rt-6.x.4708/router/dnsmasq/src/dnssec.c | 10 +++------- release/src-rt-6.x.4708/router/dnsmasq/src/option.c | 10 ++++++++-- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/release/src-rt-6.x.4708/router/dnsmasq/VERSION b/release/src-rt-6.x.4708/router/dnsmasq/VERSION index 592e0ec1cd..8a1cc79107 100644 --- a/release/src-rt-6.x.4708/router/dnsmasq/VERSION +++ b/release/src-rt-6.x.4708/router/dnsmasq/VERSION @@ -1 +1 @@ -(HEAD -> master, tag: v2.90-550c368, origin/master, origin/HEAD) +(HEAD -> master, tag: v2.90-f006be7, origin/master, origin/HEAD) diff --git a/release/src-rt-6.x.4708/router/dnsmasq/src/dnssec.c b/release/src-rt-6.x.4708/router/dnsmasq/src/dnssec.c index f5bf3f41ad..291b43fdb3 100644 --- a/release/src-rt-6.x.4708/router/dnsmasq/src/dnssec.c +++ b/release/src-rt-6.x.4708/router/dnsmasq/src/dnssec.c @@ -943,10 +943,8 @@ int dnssec_validate_by_ds(time_t now, struct dns_header *header, size_t plen, ch if (!cache_insert(name, &a, class, now, ttl, F_FORWARD | F_DNSKEY | F_DNSSECOK)) { - /* cache_insert fails when the cache is too small, so error with STAT_ABANDONED which - will log this as a resource exhaustion problem, which it is. */ blockdata_free(key); - return STAT_ABANDONED; + return STAT_BOGUS; } a.log.keytag = keytag; @@ -1093,10 +1091,8 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char if (!cache_insert(name, &a, class, now, ttl, F_FORWARD | F_DS | F_DNSSECOK)) { - /* cache_insert fails when the cache is too small, so error with STAT_ABANDONED which - will log this as a resource exhaustion problem, which it is. */ blockdata_free(key); - return STAT_ABANDONED; + return STAT_BOGUS; } else { @@ -1136,7 +1132,7 @@ int dnssec_validate_ds(time_t now, struct dns_header *header, size_t plen, char /* Use TTL from NSEC for negative cache entries */ if (!cache_insert(name, NULL, class, now, neg_ttl, flags)) - return STAT_ABANDONED; + return STAT_BOGUS; cache_end_insert(); diff --git a/release/src-rt-6.x.4708/router/dnsmasq/src/option.c b/release/src-rt-6.x.4708/router/dnsmasq/src/option.c index f4ff7c0189..ed0d9e1ab4 100644 --- a/release/src-rt-6.x.4708/router/dnsmasq/src/option.c +++ b/release/src-rt-6.x.4708/router/dnsmasq/src/option.c @@ -1336,7 +1336,7 @@ static void dhcp_netid_free(struct dhcp_netid *nid) /* Parse one or more tag:s before parameters. * Moves arg to the end of tags. */ -static struct dhcp_netid * dhcp_tags(char **arg) +static struct dhcp_netid *dhcp_tags(char **arg) { struct dhcp_netid *id = NULL; @@ -1360,7 +1360,13 @@ static void dhcp_netid_list_free(struct dhcp_netid_list *netid) { struct dhcp_netid_list *tmplist = netid; netid = netid->next; - dhcp_netid_free(tmplist->list); + /* Note: don't use dhcp_netid_free() here, since that + frees a list linked on netid->next. Where a netid_list + is used that's because the the ->next pointers in the + netids are being used to temporarily construct + a list of valid tags. */ + free(tmplist->list->net); + free(tmplist->list); free(tmplist); } }