]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
libdns refactoring: get rid of multiple versions of dns_view_find, dns_view_findzonec...
authorWitold Kręcicki <wpk@isc.org>
Wed, 4 Apr 2018 07:51:42 +0000 (09:51 +0200)
committerWitold Kręcicki <wpk@isc.org>
Fri, 6 Apr 2018 06:04:41 +0000 (08:04 +0200)
bin/named/server.c
lib/dns/adb.c
lib/dns/client.c
lib/dns/include/dns/view.h
lib/dns/lookup.c
lib/dns/resolver.c
lib/dns/validator.c
lib/dns/view.c
lib/dns/win32/libdns.def.in

index 7511a680f254fcabcae7763afdce709c617e6e13..789b064949208f95f5ddce4a036e4565cc09062c 100644 (file)
@@ -10877,7 +10877,7 @@ named_server_validation(named_server_t *server, isc_lex_t *lex,
        {
                if (ptr != NULL && strcasecmp(ptr, view->name) != 0)
                        continue;
-               CHECK(dns_view_flushcache(view));
+               CHECK(dns_view_flushcache(view, ISC_FALSE));
 
                if (set) {
                        view->enablevalidation = enable;
@@ -10968,7 +10968,7 @@ named_server_flushcache(named_server_t *server, isc_lex_t *lex) {
                if (ptr != NULL && !nsc->needflush)
                        continue;
                nsc->needflush = ISC_TRUE;
-               result = dns_view_flushcache2(nsc->primaryview, ISC_FALSE);
+               result = dns_view_flushcache(nsc->primaryview, ISC_FALSE);
                if (result != ISC_R_SUCCESS) {
                        flushed = ISC_FALSE;
                        isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
@@ -10999,7 +10999,7 @@ named_server_flushcache(named_server_t *server, isc_lex_t *lex) {
                     nsc = ISC_LIST_NEXT(nsc, link)) {
                        if (!nsc->needflush || nsc->cache != view->cache)
                                continue;
-                       result = dns_view_flushcache2(view, ISC_TRUE);
+                       result = dns_view_flushcache(view, ISC_TRUE);
                        if (result != ISC_R_SUCCESS) {
                                flushed = ISC_FALSE;
                                isc_log_write(named_g_lctx,
index 3c38d97a6504146667e888a05e318091a1d72e52..8dd8f319ec0d569c6ab73265c9d95bd5be62922b 100644 (file)
@@ -3700,12 +3700,12 @@ dbfind_name(dns_adbname_t *adbname, isc_stdtime_t now, dns_rdatatype_t rdtype)
         * matching static-stub zone without looking into the cache to honor
         * the configuration on which server we should send queries to.
         */
-       result = dns_view_find2(adb->view, &adbname->name, rdtype, now,
-                               NAME_GLUEOK(adbname) ? DNS_DBFIND_GLUEOK : 0,
-                               ISC_TF(NAME_HINTOK(adbname)),
-                               (adbname->flags & NAME_STARTATZONE) != 0 ?
-                               ISC_TRUE : ISC_FALSE,
-                               NULL, NULL, fname, &rdataset, NULL);
+       result = dns_view_find(adb->view, &adbname->name, rdtype, now,
+                              NAME_GLUEOK(adbname) ? DNS_DBFIND_GLUEOK : 0,
+                              ISC_TF(NAME_HINTOK(adbname)),
+                              (adbname->flags & NAME_STARTATZONE) != 0 ?
+                              ISC_TRUE : ISC_FALSE,
+                              NULL, NULL, fname, &rdataset, NULL);
 
        /* XXXVIX this switch statement is too sparse to gen a jump table. */
        switch (result) {
@@ -4027,9 +4027,9 @@ fetch_name(dns_adbname_t *adbname, isc_boolean_t start_at_zone,
                   adbname);
                dns_fixedname_init(&fixed);
                name = dns_fixedname_name(&fixed);
-               result = dns_view_findzonecut2(adb->view, &adbname->name, name,
-                                              0, 0, ISC_TRUE, ISC_FALSE,
-                                              &rdataset, NULL);
+               result = dns_view_findzonecut(adb->view, &adbname->name, name,
+                                             0, 0, ISC_TRUE, ISC_FALSE,
+                                             &rdataset, NULL);
                if (result != ISC_R_SUCCESS && result != DNS_R_HINT)
                        goto cleanup;
                nameservers = &rdataset;
index 1535562ee64b896c833c9deae4969131e1a674c8..2844429e2a8c17f5485989e108c523ffd052a59d 100644 (file)
@@ -797,7 +797,8 @@ view_find(resctx_t *rctx, dns_db_t **dbp, dns_dbnode_t **nodep,
                type = rctx->type;
 
        result = dns_view_find(rctx->view, name, type, 0, 0, ISC_FALSE,
-                              dbp, nodep, foundname, rctx->rdataset,
+                              ISC_FALSE, dbp, nodep, foundname,
+                              rctx->rdataset,
                               rctx->sigrdataset);
 
        return (result);
index 46cd2a777df0cc96d91cd9a346b299c1eee210cc..a28bd7b4104007e8838e54ec8e1d931c85611765 100644 (file)
@@ -546,17 +546,13 @@ dns_view_thaw(dns_view_t *view);
  *
  *\li  'view' is no longer frozen.
  */
+
 isc_result_t
 dns_view_find(dns_view_t *view, const dns_name_t *name, dns_rdatatype_t type,
-             isc_stdtime_t now, unsigned int options, isc_boolean_t use_hints,
+             isc_stdtime_t now, unsigned int options,
+             isc_boolean_t use_hints, isc_boolean_t use_static_stub,
              dns_db_t **dbp, dns_dbnode_t **nodep, dns_name_t *foundname,
              dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset);
-isc_result_t
-dns_view_find2(dns_view_t *view, const dns_name_t *name, dns_rdatatype_t type,
-              isc_stdtime_t now, unsigned int options,
-              isc_boolean_t use_hints, isc_boolean_t use_static_stub,
-              dns_db_t **dbp, dns_dbnode_t **nodep, dns_name_t *foundname,
-              dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset);
 /*%<
  * Find an rdataset whose owner name is 'name', and whose type is
  * 'type'.
@@ -703,19 +699,12 @@ dns_view_simplefind(dns_view_t *view, const dns_name_t *name,
  *                                     or an error occurred.
  */
 
-/*% See dns_view_findzonecut2() */
 isc_result_t
 dns_view_findzonecut(dns_view_t *view, const dns_name_t *name,
                     dns_name_t *fname, isc_stdtime_t now,
-                    unsigned int options, isc_boolean_t use_hints,
+                    unsigned int options,
+                    isc_boolean_t use_hints, isc_boolean_t use_cache,
                     dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset);
-
-isc_result_t
-dns_view_findzonecut2(dns_view_t *view, const dns_name_t *name,
-                     dns_name_t *fname, isc_stdtime_t now,
-                     unsigned int options,
-                     isc_boolean_t use_hints, isc_boolean_t use_cache,
-                     dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset);
 /*%<
  * Find the best known zonecut containing 'name'.
  *
@@ -907,9 +896,7 @@ dns_view_dumpdbtostream(dns_view_t *view, FILE *fp);
  */
 
 isc_result_t
-dns_view_flushcache(dns_view_t *view);
-isc_result_t
-dns_view_flushcache2(dns_view_t *view, isc_boolean_t fixuponly);
+dns_view_flushcache(dns_view_t *view, isc_boolean_t fixuponly);
 /*%<
  * Flush the view's cache (and ADB).  If 'fixuponly' is true, it only updates
  * the internal reference to the cache DB with omitting actual flush operation.
index 152ece260b2ed0190425af7e98fe835c3dec7434..ffac55e55f18b8fbb3af996fb90c0933e3b1e519 100644 (file)
@@ -166,9 +166,9 @@ view_find(dns_lookup_t *lookup, dns_name_t *foundname) {
                type = lookup->type;
 
        result = dns_view_find(lookup->view, name, type, 0, 0, ISC_FALSE,
-                              &lookup->event->db, &lookup->event->node,
-                              foundname, &lookup->rdataset,
-                              &lookup->sigrdataset);
+                              ISC_FALSE, &lookup->event->db,
+                              &lookup->event->node, foundname,
+                              &lookup->rdataset, &lookup->sigrdataset);
        return (result);
 }
 
index b38cff76effe498add93be372635ca8de50f68af..39331477914c0f664035e2ec6cb35f3b09f87ece 100644 (file)
@@ -4617,6 +4617,7 @@ fctx_create(dns_resolver_t *res, const dns_name_t *name, dns_rdatatype_t type,
                                findoptions |= DNS_DBFIND_NOEXACT;
                        result = dns_view_findzonecut(res->view, name, fname,
                                                      0, findoptions, ISC_TRUE,
+                                                     ISC_TRUE,
                                                      &fctx->nameservers,
                                                      NULL);
                        if (result != ISC_R_SUCCESS)
@@ -8999,7 +9000,7 @@ rctx_nextserver(respctx_t *rctx, dns_adbaddrinfo_t *addrinfo,
                result = dns_view_findzonecut(fctx->res->view,
                                              name, fname,
                                              rctx->now, findoptions,
-                                             ISC_TRUE,
+                                             ISC_TRUE, ISC_TRUE,
                                              &fctx->nameservers,
                                              NULL);
                if (result != ISC_R_SUCCESS) {
index f551a11c6b7b9ecd8f2fa138468a66a13aa0c467..c43cf7561838458fc0cf9cbecc18234299b1305c 100644 (file)
@@ -997,7 +997,7 @@ view_find(dns_validator_t *val, dns_name_t *name, dns_rdatatype_t type) {
        dns_fixedname_init(&fixedname);
        foundname = dns_fixedname_name(&fixedname);
        result = dns_view_find(val->view, name, type, 0, options,
-                              ISC_FALSE, NULL, NULL, foundname,
+                              ISC_FALSE, ISC_FALSE, NULL, NULL, foundname,
                               &val->frdataset, &val->fsigrdataset);
 
        if (result == DNS_R_NXDOMAIN) {
@@ -3409,9 +3409,9 @@ proveunsecure(dns_validator_t *val, isc_boolean_t have_ds, isc_boolean_t resume)
                         */
                        if (result == DNS_R_NXRRSET &&
                            !dns_rdataset_isassociated(&val->frdataset) &&
-                           dns_view_findzonecut2(val->view, tname, found,
-                                                0, 0, ISC_FALSE, ISC_FALSE,
-                                                NULL, NULL) == ISC_R_SUCCESS &&
+                       dns_view_findzonecut(val->view, tname, found,
+                                            0, 0, ISC_FALSE, ISC_FALSE,
+                                            NULL, NULL) == ISC_R_SUCCESS &&
                            dns_name_equal(tname, found)) {
                                if (val->mustbesecure) {
                                        validator_log(val, ISC_LOG_WARNING,
index 7a569bb26a6fb7e9b6a141742299d3cbe658c24f..c96e0a2681a2c1f5aacb6b034482c30f3e76c8df 100644 (file)
@@ -991,20 +991,10 @@ dns_view_findzone(dns_view_t *view, const dns_name_t *name,
 
 isc_result_t
 dns_view_find(dns_view_t *view, const dns_name_t *name, dns_rdatatype_t type,
-             isc_stdtime_t now, unsigned int options, isc_boolean_t use_hints,
+             isc_stdtime_t now, unsigned int options,
+             isc_boolean_t use_hints, isc_boolean_t use_static_stub,
              dns_db_t **dbp, dns_dbnode_t **nodep, dns_name_t *foundname,
-             dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset) {
-       return (dns_view_find2(view, name, type, now, options, use_hints,
-                              ISC_FALSE, dbp, nodep, foundname, rdataset,
-                              sigrdataset));
-}
-
-isc_result_t
-dns_view_find2(dns_view_t *view, const dns_name_t *name, dns_rdatatype_t type,
-              isc_stdtime_t now, unsigned int options,
-              isc_boolean_t use_hints, isc_boolean_t use_static_stub,
-              dns_db_t **dbp, dns_dbnode_t **nodep, dns_name_t *foundname,
-              dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset)
+             dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset)
 {
        isc_result_t result;
        dns_db_t *db, *zdb;
@@ -1223,8 +1213,9 @@ dns_view_simplefind(dns_view_t *view, const dns_name_t *name,
 
        dns_fixedname_init(&foundname);
        result = dns_view_find(view, name, type, now, options, use_hints,
-                              NULL, NULL, dns_fixedname_name(&foundname),
-                              rdataset, sigrdataset);
+                              ISC_FALSE, NULL, NULL,
+                              dns_fixedname_name(&foundname), rdataset,
+                              sigrdataset);
        if (result == DNS_R_NXDOMAIN) {
                /*
                 * The rdataset and sigrdataset of the relevant NSEC record
@@ -1258,21 +1249,10 @@ dns_view_simplefind(dns_view_t *view, const dns_name_t *name,
 
 isc_result_t
 dns_view_findzonecut(dns_view_t *view, const dns_name_t *name,
-                    dns_name_t *fname, isc_stdtime_t now, unsigned int options,
-                    isc_boolean_t use_hints,
-                    dns_rdataset_t *rdataset, dns_rdataset_t *sigrdataset)
-{
-       return(dns_view_findzonecut2(view, name, fname, now, options,
-                                    use_hints, ISC_TRUE,
-                                    rdataset, sigrdataset));
-}
-
-isc_result_t
-dns_view_findzonecut2(dns_view_t *view, const dns_name_t *name,
-                     dns_name_t *fname, isc_stdtime_t now,
-                     unsigned int options, isc_boolean_t use_hints,
-                     isc_boolean_t use_cache, dns_rdataset_t *rdataset,
-                     dns_rdataset_t *sigrdataset)
+                    dns_name_t *fname, isc_stdtime_t now,
+                    unsigned int options, isc_boolean_t use_hints,
+                    isc_boolean_t use_cache, dns_rdataset_t *rdataset,
+                    dns_rdataset_t *sigrdataset)
 {
        isc_result_t result;
        dns_db_t *db;
@@ -1621,12 +1601,7 @@ dns_view_dumpdbtostream(dns_view_t *view, FILE *fp) {
 }
 
 isc_result_t
-dns_view_flushcache(dns_view_t *view) {
-       return (dns_view_flushcache2(view, ISC_FALSE));
-}
-
-isc_result_t
-dns_view_flushcache2(dns_view_t *view, isc_boolean_t fixuponly) {
+dns_view_flushcache(dns_view_t *view, isc_boolean_t fixuponly) {
        isc_result_t result;
 
        REQUIRE(DNS_VIEW_VALID(view));
index 2ad2be8ce22ad031fe8eb0aa1f3ae9c94bd0ac2a..0382bdcc8c38d84432f9b0f65d2f82e385a46e2e 100644 (file)
@@ -1051,13 +1051,10 @@ dns_view_dialup
 dns_view_dumpdbtostream
 dns_view_excludedelegationonly
 dns_view_find
-dns_view_find2
 dns_view_findzone
 dns_view_findzonecut
-dns_view_findzonecut2
 dns_view_flushanddetach
 dns_view_flushcache
-dns_view_flushcache2
 dns_view_flushname
 dns_view_flushnode
 dns_view_freeze