]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/resolve/resolved-manager.c
resolved: switch cache option to a tri-state option (systemd#5552). 13047/head
authorJorge Niedbalski <jnr@metaklass.org>
Fri, 12 Jul 2019 19:34:24 +0000 (15:34 -0400)
committerJorge Niedbalski <jnr@metaklass.org>
Wed, 17 Jul 2019 14:42:53 +0000 (10:42 -0400)
commit37d7a7d984ec7679711c2d31789f033f3b6dc2c2
treef4fb302ef3b0aa7d51e2e50e4ec4cc6444b53231
parent81c07a955590b44fe2b1f21780df353c0d8b62f6
resolved: switch cache option to a tri-state option (systemd#5552).

Change the resolved.conf Cache option to a tri-state "no, no-negative, yes" values.

If a lookup returns SERVFAIL systemd-resolved will cache the result for 30s (See 201d995),
however, there are several use cases on which this condition is not acceptable (See systemd#5552 comments)
and the only workaround would be to disable cache entirely or flush it , which isn't optimal.

This change adds the 'no-negative' option when set it avoids putting in cache
negative answers but still works the same heuristics for positive answers.

Signed-off-by: Jorge Niedbalski <jnr@metaklass.org>
NEWS
man/resolved.conf.xml
src/resolve/resolved-dns-cache.c
src/resolve/resolved-dns-cache.h
src/resolve/resolved-dns-transaction.c
src/resolve/resolved-gperf.gperf
src/resolve/resolved-manager.c
src/resolve/resolved-manager.h
src/resolve/resolved-mdns.c
src/shared/resolve-util.c
src/shared/resolve-util.h