mirror of
https://github.com/NLnetLabs/unbound.git
synced 2026-02-03 04:09:28 -05:00
- Fix mesh_copy_client_info to omit null contents from copy.
This commit is contained in:
parent
cb5a019d9f
commit
7fb05c01c2
2 changed files with 27 additions and 18 deletions
|
|
@ -1,3 +1,6 @@
|
|||
4 April 2025: Wouter
|
||||
- Fix mesh_copy_client_info to omit null contents from copy.
|
||||
|
||||
3 April 2025: Wouter
|
||||
- Fix #1263: Exempt loopback addresses from wait-limit.
|
||||
- Fix wait-limit-netblock and wait-limit-cookie-netblock config parse
|
||||
|
|
|
|||
|
|
@ -919,24 +919,30 @@ mesh_copy_client_info(struct regional* region, struct respip_client_info* cinfo)
|
|||
return NULL;
|
||||
/* Copy the client_info so that if the configuration changes,
|
||||
* then the data stays valid. */
|
||||
client_info->taglist = regional_alloc_init(region, cinfo->taglist,
|
||||
cinfo->taglen);
|
||||
if(!client_info->taglist)
|
||||
return NULL;
|
||||
client_info->tag_actions = regional_alloc_init(region, cinfo->tag_actions,
|
||||
cinfo->tag_actions_size);
|
||||
if(!client_info->tag_actions)
|
||||
return NULL;
|
||||
client_info->tag_datas = regional_alloc_zero(region,
|
||||
sizeof(struct config_strlist*)*cinfo->tag_datas_size);
|
||||
if(!client_info->tag_datas)
|
||||
return NULL;
|
||||
for(i=0; i<cinfo->tag_datas_size; i++) {
|
||||
if(cinfo->tag_datas[i]) {
|
||||
client_info->tag_datas[i] = cfg_region_strlist_copy(
|
||||
region, cinfo->tag_datas[i]);
|
||||
if(!client_info->tag_datas[i])
|
||||
return NULL;
|
||||
if(cinfo->taglist) {
|
||||
client_info->taglist = regional_alloc_init(region, cinfo->taglist,
|
||||
cinfo->taglen);
|
||||
if(!client_info->taglist)
|
||||
return NULL;
|
||||
}
|
||||
if(cinfo->tag_actions) {
|
||||
client_info->tag_actions = regional_alloc_init(region, cinfo->tag_actions,
|
||||
cinfo->tag_actions_size);
|
||||
if(!client_info->tag_actions)
|
||||
return NULL;
|
||||
}
|
||||
if(cinfo->tag_datas) {
|
||||
client_info->tag_datas = regional_alloc_zero(region,
|
||||
sizeof(struct config_strlist*)*cinfo->tag_datas_size);
|
||||
if(!client_info->tag_datas)
|
||||
return NULL;
|
||||
for(i=0; i<cinfo->tag_datas_size; i++) {
|
||||
if(cinfo->tag_datas[i]) {
|
||||
client_info->tag_datas[i] = cfg_region_strlist_copy(
|
||||
region, cinfo->tag_datas[i]);
|
||||
if(!client_info->tag_datas[i])
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(cinfo->view) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue