dns_rrl_qname_buf_t *qbuf;
qbuf = rrl->qnames[e->log_qname];
- if (qbuf == NULL || qbuf->e != e)
+ if (qbuf == NULL || qbuf->e != e)
return (NULL);
return (qbuf);
}
qbuf = get_qname(rrl, e);
if (qbuf != NULL) {
qbuf->e = NULL;
- if (!ISC_LINK_LINKED(qbuf, link))
- ISC_LIST_APPEND(rrl->qname_free, qbuf, link);
+ ISC_LIST_INITANDAPPEND(rrl->qname_free, qbuf, link);
}
}
isc_log_write(dns_lctx, DNS_LOGCATEGORY_RRL,
DNS_LOGMODULE_REQUEST, DNS_RRL_LOG_DROP,
"%s", log_buf);
+fprintf(stderr, "calling free_qname from log_end\n");
free_qname(rrl, e);
e->logged = ISC_FALSE;
--rrl->num_logged;
* the ending log message.
*/
if (!e->logged)
+{
+fprintf(stderr, "calling free_qname from dns_rrl\n");
free_qname(rrl, e);
+}
UNLOCK(&rrl->lock);
}