summaryrefslogtreecommitdiff
path: root/edns-subnet/subnetmod.h
diff options
context:
space:
mode:
Diffstat (limited to 'edns-subnet/subnetmod.h')
-rw-r--r--edns-subnet/subnetmod.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/edns-subnet/subnetmod.h b/edns-subnet/subnetmod.h
index e408627b0abdf..27ba2ee741298 100644
--- a/edns-subnet/subnetmod.h
+++ b/edns-subnet/subnetmod.h
@@ -45,6 +45,7 @@
#include "util/alloc.h"
#include "util/net_help.h"
#include "util/storage/slabhash.h"
+#include "util/data/dname.h"
#include "edns-subnet/addrtree.h"
#include "edns-subnet/edns-subnet.h"
@@ -83,6 +84,12 @@ struct subnet_qstate {
struct ecs_data ecs_server_out;
int subnet_downstream;
int subnet_sent;
+ /** keep track of longest received scope, set after receiving CNAME for
+ * incoming QNAME. */
+ int track_max_scope;
+ /** longest received scope mask since track_max_scope is set. This value
+ * is used for caching and answereing to client. */
+ uint8_t max_scope;
/** has the subnet module been started with no_cache_store? */
int started_no_cache_store;
};