]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
lib/nsrep: refactored copypasta
authorMarek Vavruša <mvavrusa@cloudflare.com>
Fri, 20 Apr 2018 03:54:36 +0000 (20:54 -0700)
committerVladimír Čunát <vladimir.cunat@nic.cz>
Mon, 18 Jun 2018 09:50:45 +0000 (11:50 +0200)
lib/nsrep.c

index 9a6824c4bf29890081bc56f983b1f6d016d69355..b11bddb456a3648f20b061fb11fb342667cae5bc 100644 (file)
@@ -147,17 +147,9 @@ static unsigned eval_addr_set(const pack_t *addr_set, struct kr_context *ctx,
                                if (cur_addr_score >= rtt_cache_entry_score[i]) {
                                        continue;
                                }
-                               /* Shake down previous contenders */
-                               for (size_t j = KR_NSREP_MAXADDR - 1; j > i; --j) {
-                                       addr[j] = addr[j - 1];
-                                       rtt_cache_entry_ptr[j] = rtt_cache_entry_ptr[ j - 1];
-                                       rtt_cache_entry_score[j] = rtt_cache_entry_score[j - 1];
-                               }
-                               addr[i] = it;
-                               rtt_cache_entry_score[i] = cur_addr_score;
-                               rtt_cache_entry_ptr[i] = cached;
-                               break;
-                       } else if (cur_addr_score < rtt_cache_entry_score[i] + favour) {
+                       }
+                       if (cur_addr_score >= KR_NS_TIMEOUT
+                           || cur_addr_score < rtt_cache_entry_score[i] + favour) {
                                /* Shake down previous contenders */
                                for (size_t j = KR_NSREP_MAXADDR - 1; j > i; --j) {
                                        addr[j] = addr[j - 1];