summaryrefslogtreecommitdiffstats
path: root/daemon
diff options
context:
space:
mode:
authorVladimír Čunát <vladimir.cunat@nic.cz>2023-08-03 17:31:11 +0200
committerVladimír Čunát <vladimir.cunat@nic.cz>2023-08-03 17:38:03 +0200
commitc2c9a01a5bb482dc4afdd023adcf064287f66515 (patch)
treed9134cef8a9c71be3466988787b145507b83d02b /daemon
parentMerge branch 'manager-datamodel-template' into '6.0' (diff)
downloadknot-resolver-c2c9a01a5bb482dc4afdd023adcf064287f66515.tar.xz
knot-resolver-c2c9a01a5bb482dc4afdd023adcf064287f66515.zip
lib/rules: when forwarding, avoid resolving NS's name
With "authoritative forwarding" it could happen that NS selection decided to resolve the virtual ns.invalid name of the NS to get either A or AAAA (if either was missing in the forwarding rule).
Diffstat (limited to 'daemon')
-rw-r--r--daemon/lua/kres-gen-30.lua1
-rw-r--r--daemon/lua/kres-gen-31.lua1
-rw-r--r--daemon/lua/kres-gen-32.lua1
3 files changed, 3 insertions, 0 deletions
diff --git a/daemon/lua/kres-gen-30.lua b/daemon/lua/kres-gen-30.lua
index babf4b47..76318389 100644
--- a/daemon/lua/kres-gen-30.lua
+++ b/daemon/lua/kres-gen-30.lua
@@ -178,6 +178,7 @@ struct kr_zonecut {
struct kr_zonecut *parent;
trie_t *nsset;
knot_mm_t *pool;
+ _Bool avoid_resolving;
};
typedef struct {
struct kr_query **at;
diff --git a/daemon/lua/kres-gen-31.lua b/daemon/lua/kres-gen-31.lua
index 0385c2e8..1e9e1e3d 100644
--- a/daemon/lua/kres-gen-31.lua
+++ b/daemon/lua/kres-gen-31.lua
@@ -178,6 +178,7 @@ struct kr_zonecut {
struct kr_zonecut *parent;
trie_t *nsset;
knot_mm_t *pool;
+ _Bool avoid_resolving;
};
typedef struct {
struct kr_query **at;
diff --git a/daemon/lua/kres-gen-32.lua b/daemon/lua/kres-gen-32.lua
index b9dfea86..cc37af74 100644
--- a/daemon/lua/kres-gen-32.lua
+++ b/daemon/lua/kres-gen-32.lua
@@ -179,6 +179,7 @@ struct kr_zonecut {
struct kr_zonecut *parent;
trie_t *nsset;
knot_mm_t *pool;
+ _Bool avoid_resolving;
};
typedef struct {
struct kr_query **at;