]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
- Fix #1127: error: "memory exhausted" when defining more than 9994
authorW.C.A. Wijngaards <wouter@nlnetlabs.nl>
Fri, 23 Aug 2024 07:22:07 +0000 (09:22 +0200)
committerW.C.A. Wijngaards <wouter@nlnetlabs.nl>
Fri, 23 Aug 2024 07:22:07 +0000 (09:22 +0200)
  local-zones.

doc/Changelog
util/configparser.y

index f176de045312e41538aeb8a567637e8c3ff7ca7e..2f45690887f975df374948fc097af8dcd30ef95f 100644 (file)
@@ -5,6 +5,8 @@
          glue, that is unverified out of zone glue, by resolving them.
          It uses the records as last resort if there is no other working
          glue.
+       - Fix #1127: error: "memory exhausted" when defining more than 9994
+         local-zones.
 
 21 August 2024: Wouter
        - Add cross platform freebsd, openbsd and netbsd to github ci.
index 8088bcfa96aa84245011a14bf749fd657d1f59df..4cd01cc3b69aeb996cff4671d30a8c91306b9394 100644 (file)
@@ -212,7 +212,7 @@ extern struct config_parser_state* cfg_parser;
 toplevelvars: /* empty */ | toplevelvars toplevelvar ;
 toplevelvar: serverstart contents_server | stubstart contents_stub |
        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 |
        ipsetstart contents_ipset | authstart contents_auth |
        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 |
        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
        {
                struct config_view* s;
@@ -412,14 +420,8 @@ viewstart: VAR_VIEW
                }
        }
        ;
-contents_view: content_view contents_view
-       |
-       {
-               /* view end */
-               if(cfg_parser->cfg->views &&
-                       !cfg_parser->cfg->views->name)
-                       yyerror("view without name");
-       };
+contents_view: contents_view content_view
+       | ;
 content_view: view_name | view_local_zone | view_local_data | view_first |
                view_response_ip | view_response_ip_data | view_local_data_ptr
        ;