RPZ: one more testcase

This commit is contained in:
mb 2020-11-09 12:08:06 +01:00
parent 731afdc924
commit 9b4bbb49b4
2 changed files with 27 additions and 2 deletions

View file

@ -574,7 +574,7 @@ rpz_insert_ipaddr_based_trigger(struct respip_set* set, struct sockaddr_storage*
lock_rw_wrlock(&set->lock);
rrstr = sldns_wire2str_rr(rr, rr_len);
if(!rrstr) {
log_err("malloc error while inserting RPZ respip trigger");
log_err("malloc error while inserting RPZ ipaddr based trigger");
lock_rw_unlock(&set->lock);
return 0;
}
@ -1110,7 +1110,7 @@ rpz_local_encode(struct query_info* qinfo, struct module_env* env,
{
struct reply_info rep;
uint16_t udpsize;
/* make answer with time=0 for fixed TTL values */
memset(&rep, 0, sizeof(rep));
rep.flags = (uint16_t)((BIT_QR | BIT_AA | BIT_RA) | rcode);
rep.qdcount = 1;
@ -1119,6 +1119,7 @@ rpz_local_encode(struct query_info* qinfo, struct module_env* env,
else rep.ns_numrrsets = 1;
rep.rrset_count = 1;
rep.rrsets = &rrset;
rep.ttl = ((struct packed_rrset_data*)rrset->entry.data)->rr_ttl[0];
udpsize = edns->udp_size;
edns->edns_version = EDNS_ADVERTISED_VERSION;
@ -1167,11 +1168,17 @@ rpz_apply_clientip_localdata_action(struct rpz* r, struct module_env* env,
verbose(VERB_ALGO, "RPZ: bug: local-data action and no local data");
goto done;
}
rp = respip_copy_rrset(raddr->data, temp);
if(!rp) {
verbose(VERB_ALGO, "RPZ: local-data action: out of memory");
goto done;
}
//struct packed_rrset_data* pd = raddr->data->entry.data;
//struct packed_rrset_data* pd2 = rp->entry.data;
//verbose(VERB_ALGO, "ttl=%ld ttl=%ld", pd->rr_ttl[0], pd2->rr_ttl[0]);
rp->rk.flags |= PACKED_RRSET_FIXEDTTL;
rp->rk.dname = qinfo->qname;
rp->rk.dname_len = qinfo->qname_len;

View file

@ -188,6 +188,24 @@ SECTION ANSWER
a.a. IN A 127.0.0.1
ENTRY_END
; should be synthesized NODATA
STEP 62 QUERY ADDRESS 192.0.5.1
ENTRY_BEGIN
REPLY RD
SECTION QUESTION
a.a. IN TXT
ENTRY_END
STEP 63 CHECK_ANSWER
ENTRY_BEGIN
MATCH all
REPLY QR AA RD RA NOERROR
SECTION QUESTION
a.a. IN TXT
SECTION ANSWER
ENTRY_END
; should be DROPPED
STEP 90 QUERY ADDRESS 192.0.2.1