On 09/14/2012 01:23 AM, Kinkie wrote:
> 3. define a sane overall syntax,

This may be a good time to do that indeed, so that we do not subject
admins to two or more syntax upgrades. I can sketch the rules based on
the ideas in the post that opened this thread.


> ignoring backwards compatibility, and
> supply  a translation tool which can be invoked as a filter
> automatically if a legacy syntax is detected.

I do not think supplying an external tool that rewrites/upgrades old
configurations is sufficient because some configurations will include
3rd party files in locations that cannot be written to. I do not know
whether we have enough courage to ignore such, arguably rare, cases.

Another argument I have heard quite often in similar situations is "we
want to be able to switch back and forth between old and new Squid
version; if you change the syntax, it would be difficult for us to do
that". Again, a toggle approach would solve that (if the old version is
patched to support the toggle with the "old style" value as a no-op).


Thank you,

Alex.



> On Fri, Sep 14, 2012 at 1:22 AM, Marcus Kool
> <[email protected]> wrote:
>>
>>
>> On 09/13/2012 07:16 PM, Alex Rousskov wrote:
>>>
>>> 2) Add squid.conf directives to turn the new parsing behavior on and off
>>> for a section of the configuration file. This is also 100% backward
>>> compatible but difficult to introduce gradually -- admins will expect
>>> everything inside a "quoted strings" section to support quoted strings,
>>> and I am not 100% sure we can easily support that because different
>>> options use different token parsers.
>>>
>>>     # start new quoting support section
>>>     configuration_value_parser quoted_strings
>>>     # now just use the new quoting support
>>>     acl badOne1 user_cert CN "Bad Guy"
>>>     acl badOne2 ext_user "Bad Guy"
>>>
>>>     # restore backward-compatible mode
>>>     configuration_value_parser bare_tokens
>>>     acl oldOne user_cert CN One" "Two and Four"
>>
>>
>> 2b) Add squid.conf directives _at the beginning_ of the conf file
>> to specify the parser behavior.  So do not toggle and force the admin
>> to be aware of quoted strings and _must_ check the whole config file
>> himself.
>> The default value of "config_used_quoted_strings" is "off".
>> This is still 100% backwards compatible without doing lots (?) of effort
>> to please everybody and every situation.
>>
>> Marcus
> 
> 
> 

Reply via email to