ietf-mta-filters
[Top] [All Lists]

Re: Proposal to change sieve: URL syntax used by the ManageSieve protocol

2008-11-01 13:37:53

Alexey Melnikov wrote:

Dilyan Palauzov wrote:

Section 3:

        sieveurl-script = "sieve://" [ authority ] "/" scriptname

* IMAP URLs made the mistake of confusing the identity used to authenticate with the identity that owns the script. This makes IMAP URLs cumbersome. I would strongly encourage a naming model that separates the two and keeps the script owner explicit. For example:

  sieveurl-script = "sieve://" [ authority ] "/" owner "/" scriptname

What about
   sieveurl-script = "sieve://" [ authority ] "/" [owner "/"] scriptname

And missing [owner "/"] implies authentication ID = authorization ID

This might work. But I think this would also require that any "/" in the <owner> or <scriptname> be URL %-encoded. This shouldn't be a problem for existing deployments, because I don't think use of "/" in script names is common anyway (and some servers currently disallow it).

Based on the mailing list feedback I've updated the draft to allow for optional <owner>. In order to simplify further extensions the new syntax requires that US-ASCII characters such as "&", "=", "/" and "?" are %-encoded as required by RFC 3986:

     sieveurl-script = "sieve://" [ authority ] "/" [owner "/"] scriptname

     sub-delims-sh = "!" / "$" / "'" / "(" / ")" /
                     "*" / "+" / ","
                     ;; Same as [URI-GEN] sub-delims,
                     ;; but without ";", "&" and "=".

     uchar         = unreserved / pct-encoded / sub-delims-sh
                     ;; Same as [URI-GEN]
                     ;; 'unreserved / pct-encoded / sub-delims',
                     ;; but without ";", "&" and "=".

     ochar         = uchar / ":" / "@"
                     ;; Same as [URI-GEN] 'pchar'
                     ;; but without ";", "&" and "=".

     owner         = 1*ochar
                     ;; %-encoded version of [IMAP4] authorization
                     ;; identity (owner) or "userid".
                     ;; Note that ASCII characters
                     ;; like "&" / "=", "/" and "?" MUST be %-encoded.
scriptname = 1*ochar
                     ;; %-encoded version of UTF-8 representation
                     ;; of the script name.
                     ;; Note that ASCII characters
                     ;; like "&" / "=", "/" and "?" MUST be %-encoded.

<Prev in Thread] Current Thread [Next in Thread>