From: Evan Hunt Date: Thu, 24 Jan 2013 22:24:59 +0000 (-0800) Subject: [master] check signing time on signed db X-Git-Tag: v9.10.0a1~544^2 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=6225380ca6dd045302fd5cb22d1dbbe6a88a7509;p=thirdparty%2Fbind9.git [master] check signing time on signed db - rndc zonestatus now checks the signing time on the signed, not raw, db when looking at inline-signing zones 3476. [bug] "rndc zonestatus" could report a spurious "not found" error on inline-signing zones. [RT #29226] --- diff --git a/CHANGES b/CHANGES index 918ec5da912..9a2aff71667 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +3476. [bug] "rndc zonestatus" could report a spurious "not + found" error on inline-signing zones. [RT #29226] + 3475. [cleanup] Changed name of 'map' zone file format (previously 'fast'). [RT #32458] diff --git a/bin/named/server.c b/bin/named/server.c index caf7fd66eb6..28434187e95 100644 --- a/bin/named/server.c +++ b/bin/named/server.c @@ -8411,15 +8411,12 @@ ns_server_zonestatus(ns_server_t *server, char *args, isc_buffer_t *text) { dns_name_t *name; dns_fixedname_t fixed; dns_rdataset_t next; - dns_db_t *signingdb; dns_rdataset_init(&next); dns_fixedname_init(&fixed); name = dns_fixedname_name(&fixed); - signingdb = hasraw ? rawdb : db; - - result = dns_db_getsigningtime(signingdb, &next, name); + result = dns_db_getsigningtime(db, &next, name); if (result == ISC_R_SUCCESS) { isc_stdtime_t timenow; char namebuf[DNS_NAME_FORMATSIZE]; @@ -8435,7 +8432,8 @@ ns_server_zonestatus(ns_server_t *server, char *args, isc_buffer_t *text) { isc_time_formathttptimestamp(&resigntime, rtbuf, sizeof(rtbuf)); dns_rdataset_disassociate(&next); - } + } else if (result == ISC_R_NOTFOUND) + result = ISC_R_SUCCESS; } /* Create text */