[Top] [All Lists]

Re: [sieve] Notify (RFC 5435) questions

2009-10-05 15:05:00
>>     This extension changes the semantics of quoted-string, multi-
>> line-
>>     literal and multi-line-dotstuff found in [SIEVE], including any
>> literals that are
>>     directly specified in the grammar, to enable the inclusion of the
>> value of variables.

> This is too narrow. Any sort of syntax restriction, whether to a set
> of
> specific strings, or to a time zone, or whatever, could possibly be
> construed
> as not allowed variable usage. What needs to be conveyed is that
> these syntax
> restrictions apply to the _result_ of variable substitution if such
> substitutions are used.

Certainly the result of a variable expansion in a syntax-restricted
parameter must be checked to conform to that syntax after the expansion.

Absolutely. The sequence is:

  (1) Syntax check of the core sieve grammar.
  (2) Perform variable expansion on the strings where it is appropriate.
  (3) Parameter-specific syntax checks.

>> As far as I can tell, that is the only place in RFC 5229 that says
>> anything about what variables can substitute for.
> Agreed.

There are parameters that restrict against variable expansion, but
they are specified one-off in each document.

Indeed there are, but they are fairly uncommon (IMO they are actually too
uncommon - the body extension should have stated that variable substitutions
aren't allowed in search strings but did not). Explicit specification of such
uncommon exceptions is the right thing to be doing. Specification of the common
reality as it if was in fact uncommon is not.

sieve mailing list