]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Move find_zone_keys() to lib/dns/zone_p.h
authorMichał Kępień <michal@isc.org>
Tue, 13 Mar 2018 13:06:10 +0000 (14:06 +0100)
committerMichał Kępień <michal@isc.org>
Wed, 9 May 2018 11:21:02 +0000 (13:21 +0200)
Rename find_zone_keys() to dns__zone_findkeys() and move it to
lib/dns/zone_p.h, so that it can be used in unit tests.  Add a comment
describing the purpose of this function.

lib/dns/win32/libdns.def.in
lib/dns/zone.c
lib/dns/zone_p.h

index 6e6086ba6bc17a53787713508368f02b47828ba4..6c7fa8414693b53f04c04c4929ca448c39bfbcd4 100644 (file)
@@ -7,6 +7,7 @@ EXPORTS
 dns__rbt_checkproperties
 dns__rbt_getheight
 dns__rbtnode_getdistance
+dns__zone_findkeys
 dns__zone_loadpending
 dns__zone_updatesigs
 
index 9c9fc5bef8a848ebad41f533d0fe7737cf124b08..568e4727f7d4059972230011cb954d90216b787f 100644 (file)
@@ -5973,10 +5973,16 @@ was_dumping(dns_zone_t *zone) {
        return (dumping);
 }
 
-static isc_result_t
-find_zone_keys(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
-              isc_stdtime_t now, isc_mem_t *mctx, unsigned int maxkeys,
-              dst_key_t **keys, unsigned int *nkeys)
+/*%
+ * Find up to 'maxkeys' DNSSEC keys used for signing version 'ver' of database
+ * 'db' for zone 'zone' in its key directory, then load these keys into 'keys'.
+ * Only load the public part of a given key if it is not active at timestamp
+ * 'now'.  Store the number of keys found in 'nkeys'.
+ */
+isc_result_t
+dns__zone_findkeys(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
+                  isc_stdtime_t now, isc_mem_t *mctx, unsigned int maxkeys,
+                  dst_key_t **keys, unsigned int *nkeys)
 {
        isc_result_t result;
        dns_dbnode_t *node = NULL;
@@ -6443,11 +6449,11 @@ zone_resigninc(dns_zone_t *zone) {
 
        isc_stdtime_get(&now);
 
-       result = find_zone_keys(zone, db, version, now, zone->mctx,
-                               DNS_MAXZONEKEYS, zone_keys, &nkeys);
+       result = dns__zone_findkeys(zone, db, version, now, zone->mctx,
+                                   DNS_MAXZONEKEYS, zone_keys, &nkeys);
        if (result != ISC_R_SUCCESS) {
                dns_zone_log(zone, ISC_LOG_ERROR,
-                            "zone_resigninc:find_zone_keys -> %s",
+                            "zone_resigninc:dns__zone_findkeys -> %s",
                             dns_result_totext(result));
                goto failure;
        }
@@ -7434,11 +7440,11 @@ zone_nsec3chain(dns_zone_t *zone) {
 
        isc_stdtime_get(&now);
 
-       result = find_zone_keys(zone, db, version, now, zone->mctx,
-                               DNS_MAXZONEKEYS, zone_keys, &nkeys);
+       result = dns__zone_findkeys(zone, db, version, now, zone->mctx,
+                                   DNS_MAXZONEKEYS, zone_keys, &nkeys);
        if (result != ISC_R_SUCCESS) {
                dns_zone_log(zone, ISC_LOG_ERROR,
-                            "zone_nsec3chain:find_zone_keys -> %s",
+                            "zone_nsec3chain:dns__zone_findkeys -> %s",
                             dns_result_totext(result));
                goto failure;
        }
@@ -8318,11 +8324,11 @@ zone_sign(dns_zone_t *zone) {
 
        isc_stdtime_get(&now);
 
-       result = find_zone_keys(zone, db, version, now, zone->mctx,
-                               DNS_MAXZONEKEYS, zone_keys, &nkeys);
+       result = dns__zone_findkeys(zone, db, version, now, zone->mctx,
+                                   DNS_MAXZONEKEYS, zone_keys, &nkeys);
        if (result != ISC_R_SUCCESS) {
                dns_zone_log(zone, ISC_LOG_ERROR,
-                            "zone_sign:find_zone_keys -> %s",
+                            "zone_sign:dns__zone_findkeys -> %s",
                             dns_result_totext(result));
                goto failure;
        }
@@ -17529,11 +17535,11 @@ sign_apex(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
        unsigned int nkeys = 0, i;
        dns_difftuple_t *tuple;
 
-       result = find_zone_keys(zone, db, ver, now, zone->mctx,
-                               DNS_MAXZONEKEYS, zone_keys, &nkeys);
+       result = dns__zone_findkeys(zone, db, ver, now, zone->mctx,
+                                   DNS_MAXZONEKEYS, zone_keys, &nkeys);
        if (result != ISC_R_SUCCESS) {
                dns_zone_log(zone, ISC_LOG_ERROR,
-                            "sign_apex:find_zone_keys -> %s",
+                            "sign_apex:dns__zone_findkeys -> %s",
                             dns_result_totext(result));
                return (result);
        }
index bcb6e7edc676264fe427c30f4c5b96c934999418..d652e5ab9f91fe5af36a2361e8986367af5c03f8 100644 (file)
@@ -26,6 +26,11 @@ typedef struct {
        isc_boolean_t   offline;
 } dns__zonediff_t;
 
+isc_result_t
+dns__zone_findkeys(dns_zone_t *zone, dns_db_t *db, dns_dbversion_t *ver,
+                  isc_stdtime_t now, isc_mem_t *mctx, unsigned int maxkeys,
+                  dst_key_t **keys, unsigned int *nkeys);
+
 isc_result_t
 dns__zone_updatesigs(dns_diff_t *diff, dns_db_t *db, dns_dbversion_t *version,
                     dst_key_t *zone_keys[], unsigned int nkeys,