- Fix #728: alloc_reg_obtain() core dump. Stop double

alloc_reg_release when serviced_create fails.
This commit is contained in:
W.C.A. Wijngaards 2022-08-01 16:45:41 +02:00
parent 5ae48f85c0
commit cd22fdc28d
2 changed files with 5 additions and 2 deletions

View file

@ -2,6 +2,8 @@
- Fix the novel ghost domain issues CVE-2022-30698 and CVE-2022-30699.
- Tests for ghost domain fixes.
- Tag for 1.16.2 release. The code repo continues with 1.16.3.
- Fix #728: alloc_reg_obtain() core dump. Stop double
alloc_reg_release when serviced_create fails.
19 July 2022: George
- Update documentation for 'outbound-msg-retry:'.

View file

@ -2545,8 +2545,10 @@ serviced_create(struct outside_network* outnet, sldns_buffer* buff, int dnssec,
#ifdef UNBOUND_DEBUG
rbnode_type* ins;
#endif
if(!sq)
if(!sq) {
alloc_reg_release(alloc, region);
return NULL;
}
sq->node.key = sq;
sq->alloc = alloc;
sq->region = region;
@ -3432,7 +3434,6 @@ outnet_serviced_query(struct outside_network* outnet,
infra_ratelimit_dec(env->infra_cache,
zone, zonelen, timenow);
}
alloc_reg_release(env->alloc, region);
return NULL;
}
if(!(cb = (struct service_callback*)regional_alloc(