- Fix to not reply serve expired unless enabled for cachedb.

This commit is contained in:
W.C.A. Wijngaards 2024-04-10 17:06:01 +02:00
parent d47849a26e
commit 04ff2672b5
2 changed files with 4 additions and 2 deletions

View file

@ -737,12 +737,13 @@ static void
cachedb_intcache_store(struct module_qstate* qstate, int msg_expired) cachedb_intcache_store(struct module_qstate* qstate, int msg_expired)
{ {
uint32_t store_flags = qstate->query_flags; uint32_t store_flags = qstate->query_flags;
int serve_expired = qstate->env->cfg->serve_expired;
if(qstate->env->cfg->serve_expired) if(qstate->env->cfg->serve_expired)
store_flags |= DNSCACHE_STORE_ZEROTTL; store_flags |= DNSCACHE_STORE_ZEROTTL;
if(!qstate->return_msg) if(!qstate->return_msg)
return; return;
if(msg_expired) { if(serve_expired && msg_expired) {
/* Set TTLs to a value such that value + *env->now is /* Set TTLs to a value such that value + *env->now is
* going to be now-3 seconds. Making it expired * going to be now-3 seconds. Making it expired
* in the cache. */ * in the cache. */
@ -751,7 +752,7 @@ cachedb_intcache_store(struct module_qstate* qstate, int msg_expired)
(void)dns_cache_store(qstate->env, &qstate->qinfo, (void)dns_cache_store(qstate->env, &qstate->qinfo,
qstate->return_msg->rep, 0, qstate->prefetch_leeway, 0, qstate->return_msg->rep, 0, qstate->prefetch_leeway, 0,
qstate->region, store_flags, qstate->qstarttime); qstate->region, store_flags, qstate->qstarttime);
if(msg_expired) { if(serve_expired && msg_expired) {
/* set TTLs to zero again */ /* set TTLs to zero again */
adjust_msg_ttl(qstate->return_msg, -1); adjust_msg_ttl(qstate->return_msg, -1);
/* Send serve expired responses based on the cachedb /* Send serve expired responses based on the cachedb

View file

@ -7,6 +7,7 @@
- Extended test for cachedb serve expired. - Extended test for cachedb serve expired.
- Fix makefile dependencies for fake_event.c. - Fix makefile dependencies for fake_event.c.
- Fix cachedb for serve-expired with serve-expired-reply-ttl. - Fix cachedb for serve-expired with serve-expired-reply-ttl.
- Fix to not reply serve expired unless enabled for cachedb.
9 April 2024: Yorgos 9 April 2024: Yorgos
- Merge #1043 from xiaoxiaoafeifei: Add loongarch support; updates - Merge #1043 from xiaoxiaoafeifei: Add loongarch support; updates