Aaron Stone wrote:
On Oct 21, 2008, at 4:20 AM, Arnt Gulbrandsen wrote:
A new command is the cleanest way. CHECKSCRIPT.
I agree this is cleaner. But it has to be an extension (which is
fine in this case)
My intuitive preference is to make an extension, say that server
MUST implement it, explain that it is an extension only because past
versions of the document didn't contain CHECKSCRIPT, and maybe put
warnings into this extension. (I haven't looked at how you did
warnings in today's draft.)
+1 for a new mandatory command.
Ok, I've added a new CHECKSCRIPT command, which is currently a new
CHECKSCRIPT extension (but see my reply to Arnt about that).
Probably does need to be defined as an extension because there are a
number of extant implementations. I thought someone said that we're
breaking use of PUTSCRIPT for syntax validation, but I didn't see
where that happened in a (very) quick read of the draft. If we make a
change like that, I think it's reasonable to add CHECKSCRIPT without
advertising it.
I'll note that the ABNF for PUTSCRIPT still allows a blank name:
command-putscript = "PUTSCRIPT" SP sieve-name SP sieve-script
sieve-name = string
quoted = DQUOTE *1024QUOTED-CHAR DQUOTE ;; limited to 1024 octets
between the <">s
I've fixed that in ABNF by introducing active-script-name (to be used by
SETACTIVE command only) ABNF production and disallowing empty string in
the sieve-name production.