From: Amos Jeffries Date: Sat, 16 Jan 2010 04:51:50 +0000 (+1300) Subject: Bug 2452: external_acl_type does not limit entries, leads to high memory usage X-Git-Tag: SQUID_3_0_STABLE22~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e701c505b7517ebd9f7a4c8ce9a5d0a3c99af7fa;p=thirdparty%2Fsquid.git Bug 2452: external_acl_type does not limit entries, leads to high memory usage Set a nominal cap of 256*1024 entries per external_acl_type configured. This can be adjusted as needed with the external_acl_type cache=N option. --- diff --git a/src/external_acl.cc b/src/external_acl.cc index 25988b13ca..509850c088 100644 --- a/src/external_acl.cc +++ b/src/external_acl.cc @@ -223,6 +223,8 @@ parse_externalAclHelper(external_acl ** list) a->ttl = DEFAULT_EXTERNAL_ACL_TTL; a->negative_ttl = -1; a->children = DEFAULT_EXTERNAL_ACL_CHILDREN; + a->cache_size = 256*1024; + a->quote = external_acl::QUOTE_METHOD_URL; token = strtok(NULL, w_space); @@ -233,8 +235,6 @@ parse_externalAclHelper(external_acl ** list) token = strtok(NULL, w_space); - a->quote = external_acl::QUOTE_METHOD_URL; - /* Parse options */ while (token) { if (strncmp(token, "ttl=", 4) == 0) {