]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Make dns_glue_t private to qpzone
authorAlessio Podda <alessio@isc.org>
Wed, 1 Apr 2026 10:13:08 +0000 (12:13 +0200)
committerAlessio Podda <alessio@isc.org>
Mon, 11 May 2026 08:22:25 +0000 (10:22 +0200)
The dns_glue_t, dns_gluelist_t and dns_glue_additionaldata_ctx types are
only used in qpzone.c. This commits moves them to the private header
qpzone_p.h.

This is done in preparation of a followup commit that will refactor them
to use types that are private to qpzone.

lib/dns/db_p.h
lib/dns/include/dns/rdataslab.h
lib/dns/qpzone_p.h

index 630873e6b1e9092a0e44e7cf68afe0365fd1264e..a77acd0fda99a6528f5fdaf07ca95b56a8fd303d 100644 (file)
@@ -17,7 +17,6 @@
 #include <isc/urcu.h>
 
 #include <dns/nsec3.h>
-#include <dns/rdatavec.h>
 #include <dns/types.h>
 
 #ifdef STRONG_RWLOCK_CHECK
 #define IS_STUB(db)  (((db)->common.attributes & DNS_DBATTR_STUB) != 0)
 #define IS_CACHE(db) (((db)->common.attributes & DNS_DBATTR_CACHE) != 0)
 
-struct dns_glue {
-       struct dns_glue *next;
-       dns_name_t name;
-       dns_rdataset_t rdataset_a;
-       dns_rdataset_t sigrdataset_a;
-       dns_rdataset_t rdataset_aaaa;
-       dns_rdataset_t sigrdataset_aaaa;
-};
-
-struct dns_gluelist {
-       isc_mem_t *mctx;
-
-       const dns_dbversion_t *version;
-       dns_vecheader_t *header;
-
-       struct dns_glue *glue;
-
-       struct rcu_head rcu_head;
-       struct cds_wfs_node wfs_node;
-};
-
-typedef struct dns_glue_additionaldata_ctx {
-       dns_db_t *db;
-       dns_dbversion_t *version;
-       const dns_name_t *owner_name;
-
-       dns_glue_t *glue;
-} dns_glue_additionaldata_ctx_t;
-
 static inline bool
 prio_type(dns_typepair_t type) {
        switch (type) {
index 40ccb47e68cd38470bb55f1c18fb3810cc24cee7..a8d1a09a36ee6e2891ab77fb14f60e77d3766979 100644 (file)
@@ -119,11 +119,6 @@ struct dns_slabheader {
         */
        dns_dbnode_t *node;
 
-       /*%
-        * Cached glue records for an rdataset of type NS (zone only).
-        */
-       dns_gluelist_t *gluelist;
-
        /*%
         * Case vector.  If the bit is set then the corresponding
         * character in the owner name needs to be AND'd with 0x20,
index 93d0782fef05d633d89867602ecb6e0ba43b5655..e000d102bf9320be06c14dae1cc6155c88d4ff91 100644 (file)
 
 #include <dns/nsec3.h>
 #include <dns/qp.h>
+#include <dns/rdatavec.h>
 #include <dns/types.h>
 
+struct dns_glue {
+       struct dns_glue *next;
+       dns_name_t name;
+       dns_rdataset_t rdataset_a;
+       dns_rdataset_t sigrdataset_a;
+       dns_rdataset_t rdataset_aaaa;
+       dns_rdataset_t sigrdataset_aaaa;
+       bool required;
+};
+
+struct dns_gluelist {
+       isc_mem_t *mctx;
+
+       const dns_dbversion_t *version;
+       dns_vecheader_t *header;
+
+       struct dns_glue *glue;
+
+       struct rcu_head rcu_head;
+       struct cds_wfs_node wfs_node;
+};
+
+typedef struct dns_glue_additionaldata_ctx {
+       dns_db_t *db;
+       dns_dbversion_t *version;
+       const dns_name_t *owner_name;
+
+       dns_glue_t *glue;
+} dns_glue_additionaldata_ctx_t;
+
 /*****
 ***** Module Info
 *****/