[squid-dev] [PATCH] Adds support for --long-acl-options
Christos Tsantilas
christos at chtsanti.net
Mon Jun 12 14:50:18 UTC 2017
Patch applied to trunk as r15188 with the requested fixes.
Στις 10/06/2017 04:30 μμ, ο Amos Jeffries έγραψε:
> On 24/05/17 20:31, Christos Tsantilas wrote:
>> Adds support for --long-acl-options
>>
>> This patch adds support for --long-acl-options. The old single-letter
>> ACL "flags" code was refactored to support long option names (with
>> option-specific value types) without significant per-ACL-object
>> performance/RAM overheads and without creating a global registry for
>> all possible options. This refactoring (unexpectedly) resulted in
>> removal of a lot of unreliable static initialization code.
>>
>> Refactoring fixed ACL flags parsing code that was dangerously
>> misinterpreting -i and +i flags in several contexts. For example, each
>> of the three cases below was misinterpreted as if three domains were
>> configured (e.g., "+i", "-z", and "example.com") on each line instead
>> of one domain ("example.com"):
>>
>> acl parsedAsThreeDomains dstdomain +i -i .example.com
>> acl parsedAsThreeDomains dstdomain -i +i .example.com
>> acl parsedAsThreeDomains dstdomain +i -z .example.com
>>
>> TODO: Finish ACL::clone() removal. Then consider removing any unused
>> ACLData::clone() and associated ACL/ACLData copying methods.
>>
>> This is a Measurement Factory project.
>>
>
> Okay, think I've got it now. Sorry it took so long to get around to. I'm
> not completely sure I saw everything yet, but I'm unlikely to do a
> better job of review anytime soon.
>
> Just one thing to add on top of Ales' requests:
>
> * please use src/acl/forward.h instead of AclRegs.h to define the global
> Init() function. There is no real need AFAICT to add the new file now
> only to remove again in the followup patch that will be needed to move
> AclRegs.cc into src/acl/ where it belongs.
>
>
> +1 with the above change and Alexs' polishing requests.
>
>
> Amos
>
More information about the squid-dev
mailing list