- Fix #1127: error: "memory exhausted" when defining more than 9994

local-zones.
This commit is contained in:
W.C.A. Wijngaards 2024-08-23 09:22:07 +02:00
parent 1e0cf1e86b
commit db1167c8b3
2 changed files with 13 additions and 9 deletions

View file

@ -5,6 +5,8 @@
glue, that is unverified out of zone glue, by resolving them. glue, that is unverified out of zone glue, by resolving them.
It uses the records as last resort if there is no other working It uses the records as last resort if there is no other working
glue. glue.
- Fix #1127: error: "memory exhausted" when defining more than 9994
local-zones.
21 August 2024: Wouter 21 August 2024: Wouter
- Add cross platform freebsd, openbsd and netbsd to github ci. - Add cross platform freebsd, openbsd and netbsd to github ci.

View file

@ -212,7 +212,7 @@ extern struct config_parser_state* cfg_parser;
toplevelvars: /* empty */ | toplevelvars toplevelvar ; toplevelvars: /* empty */ | toplevelvars toplevelvar ;
toplevelvar: serverstart contents_server | stubstart contents_stub | toplevelvar: serverstart contents_server | stubstart contents_stub |
forwardstart contents_forward | pythonstart contents_py | forwardstart contents_forward | pythonstart contents_py |
rcstart contents_rc | dtstart contents_dt | viewstart contents_view | rcstart contents_rc | dtstart contents_dt | view_clause |
dnscstart contents_dnsc | cachedbstart contents_cachedb | dnscstart contents_dnsc | cachedbstart contents_cachedb |
ipsetstart contents_ipset | authstart contents_auth | ipsetstart contents_ipset | authstart contents_auth |
rpzstart contents_rpz | dynlibstart contents_dl | rpzstart contents_rpz | dynlibstart contents_dl |
@ -398,6 +398,14 @@ contents_forward: content_forward contents_forward
content_forward: forward_name | forward_host | forward_addr | forward_first | content_forward: forward_name | forward_host | forward_addr | forward_first |
forward_no_cache | forward_ssl_upstream | forward_tcp_upstream forward_no_cache | forward_ssl_upstream | forward_tcp_upstream
; ;
view_clause: viewstart contents_view
{
/* view end */
if(cfg_parser->cfg->views &&
!cfg_parser->cfg->views->name)
yyerror("view without name");
}
;
viewstart: VAR_VIEW viewstart: VAR_VIEW
{ {
struct config_view* s; struct config_view* s;
@ -412,14 +420,8 @@ viewstart: VAR_VIEW
} }
} }
; ;
contents_view: content_view contents_view contents_view: contents_view content_view
| | ;
{
/* view end */
if(cfg_parser->cfg->views &&
!cfg_parser->cfg->views->name)
yyerror("view without name");
};
content_view: view_name | view_local_zone | view_local_data | view_first | content_view: view_name | view_local_zone | view_local_data | view_first |
view_response_ip | view_response_ip_data | view_local_data_ptr view_response_ip | view_response_ip_data | view_local_data_ptr
; ;