}
}
-void delegpt_log(struct delegpt* dp)
+void delegpt_log(enum verbosity_value v, struct delegpt* dp)
{
char buf[LDNS_MAX_DOMAINLEN+1];
struct delegpt_ns* ns;
struct delegpt_addr* a;
size_t missing=0, numns=0, numaddr=0, numres=0, numavail=0;
+ if(verbosity < v)
+ return;
dname_str(dp->name, buf);
if(dp->nslist == NULL && dp->target_list == NULL) {
log_info("DelegationPoint<%s>: empty", buf);
struct delegpt_addr;
struct dns_msg;
struct ub_packed_rrset_key;
+enum verbosity_value;
/**
* Delegation Point.
/**
* Print the delegation point to the log. For debugging.
+ * @param v: verbosity value that is needed to emit to log.
* @param dp: delegation point.
*/
-void delegpt_log(struct delegpt* dp);
+void delegpt_log(enum verbosity_value v, struct delegpt* dp);
/**
* Add all usable targets to the result list.
return 0;
if(!forwards_insert(fwd, LDNS_RR_CLASS_IN, dp))
return 0;
- log_info("Forward zone server list:");
- delegpt_log(dp);
+ verbose(VERB_DETAIL, "Forward zone server list:");
+ delegpt_log(VERB_DETAIL, dp);
}
return 1;
}
return 0;
if(!hints_insert(hints, LDNS_RR_CLASS_IN, dp))
return 0;
- if(verbosity >= VERB_DETAIL)
- delegpt_log(dp);
+ delegpt_log(VERB_DETAIL, dp);
}
return 1;
}
return 0;
if(!hints_insert(hints, LDNS_RR_CLASS_IN, dp))
return 0;
- if(verbosity >= VERB_DETAIL)
- delegpt_log(dp);
+ delegpt_log(VERB_DETAIL, dp);
}
init_parents(hints);
/* not interested */
verbose(VERB_ALGO, "subq error, but not interested");
log_query_info(VERB_ALGO, "superq", &super->qinfo);
- delegpt_log(super_iq->dp);
+ delegpt_log(VERB_ALGO, super_iq->dp);
log_assert(0);
return;
}
}
break;
} else {
- log_info("cache delegation was useless:");
- delegpt_log(iq->dp);
+ verbose(VERB_ALGO,
+ "cache delegation was useless:");
+ delegpt_log(VERB_ALGO, iq->dp);
/* go up */
delname = iq->dp->name;
delnamelen = iq->dp->namelen;
} else break;
}
- if(verbosity >= VERB_ALGO) {
- log_info("cache delegation returns delegpt");
- delegpt_log(iq->dp);
- }
+ verbose(VERB_ALGO, "cache delegation returns delegpt");
+ delegpt_log(VERB_ALGO, iq->dp);
/* Reset the RD flag. If this is a query restart, then the RD
* will have been turned off. */
verbose(VERB_DETAIL, "Failed to get a delegation, giving up");
return error_response(qstate, id, LDNS_RCODE_SERVFAIL);
}
- delegpt_log(iq->dp);
+ delegpt_log(VERB_ALGO, iq->dp);
if(iq->num_current_queries>0) {
/* already busy answering a query, this restart is because
if(!cache_fill_missing(qstate->env, iq->qchase.qclass,
qstate->region, iq->dp))
return error_response(qstate, id, LDNS_RCODE_SERVFAIL);
- delegpt_log(iq->dp);
+ delegpt_log(VERB_ALGO, iq->dp);
/* Count this as a referral. */
iq->referral_count++;
}
log_query_info(VERB_DETAIL, "priming successful for", &qstate->qinfo);
- delegpt_log(dp);
+ delegpt_log(VERB_ALGO, dp);
foriq->dp = dp;
foriq->deleg_msg = dns_copy_msg(qstate->return_msg, forq->region);
if(!foriq->deleg_msg) {
if(!delegpt_add_rrset(foriq->dp, forq->region, rrset))
log_err("out of memory adding targets");
verbose(VERB_ALGO, "added target response");
- delegpt_log(foriq->dp);
+ delegpt_log(VERB_ALGO, foriq->dp);
} else {
verbose(VERB_ALGO, "iterator TargetResponse failed");
dpns->resolved = 1; /* fail the target */
rrset->entry.data;
if(!key_entry_setup(region, name, namelen, dclass, &k, &d))
return NULL;
- log_info("New key entry TTL is now+%d", (int)rd->ttl);
d->ttl = rd->ttl + time(NULL);
d->isbad = 0;
d->rrset_type = ntohs(rrset->rk.type);
* for the next DNSKEY. */
if(vq->ds_rrset)
log_nametypeclass(VERB_ALGO, "DS RRset", vq->ds_rrset->rk.dname, LDNS_RR_TYPE_DS, LDNS_RR_CLASS_IN);
- else log_info("No DS RRset");
+ else verbose(VERB_ALGO, "No DS RRset");
if(vq->ds_rrset && query_dname_compare(vq->ds_rrset->rk.dname,
vq->key_entry->name) != 0) {
sec = sec_status_secure;
else
sec = sec_status_bogus;
- log_info("priming DS result %s", sec_status_to_string(sec));
+ verbose(VERB_ALGO, "priming DS result %s",
+ sec_status_to_string(sec));
}
if(sec != sec_status_secure && ta->dnskey_rrset) {
sec = val_verify_rrset(qstate->env, ve, dnskey_rrset,