X-Git-Url: https://git.exim.org/users/jgh/exim.git/blobdiff_plain/9479146eba39483724dc791ad814efe829def406..658cb1162748378988f8086520e7e22eb9569bf3:/doc/doc-txt/experimental-spec.txt?ds=inline diff --git a/doc/doc-txt/experimental-spec.txt b/doc/doc-txt/experimental-spec.txt index f0490b04a..f0c6d95ba 100644 --- a/doc/doc-txt/experimental-spec.txt +++ b/doc/doc-txt/experimental-spec.txt @@ -795,8 +795,10 @@ expansion is done. The current list of events is: smtp:connect after transport per connection The expansion is called for all event types, and should use the $event_name -value to decide when to act. The variable data is a colon-separated -list, describing an event tree. +variable to decide when to act. The value of the variable is a colon-separated +list, defining a position in the tree of possible events; it may be used as +a list or just matched on as a whole. There will be no whitespace. + There is an auxilary variable, $event_data, for which the content is event_dependent: @@ -855,7 +857,7 @@ No other use is made of the result string. Known issues: - the tls:cert event is only called for the cert chain elements received over the wire, with GnuTLS. OpenSSL gives the entire - chain including thse loaded locally. + chain including those loaded locally. Redis Lookup @@ -1271,8 +1273,9 @@ $tls_out_tlsa_usage (detailed above). -SMTPUTF8 +INTERNATIONAL ------------------------------------------------------------ +SMTPUTF8 Internationalised mail name handling. RFCs 6530, 6533, 5890 @@ -1299,6 +1302,9 @@ the appendfile transport, will have utf8 name. Helo names sent by the smtp transport will have any utf8 components expanded to a-label form. +Any certificate name checks will be done using the a-label +form of the name. + Log lines and Received-by: header lines will aquire a "utf8" prefix on the protocol element, eg. utf8esmtp. @@ -1334,6 +1340,36 @@ Known issues: - DSN unitext handling is not present - no provision for converting logging from or to UTF-8 +---- +IMAP folder names + +New expansion operator: + +${imapfolder {} {} {}} + +The string is converted from the charset specified by the headers charset +command (in a filter file) or headers_charset global option, to the +modified UTF-7 encoding specified by RFC 2060, with the following +exception: All occurences of (which has to be a single character) +are replaced with periods ("."), and all periods and slashes that aren't + and are not in the string are BASE64 encoded. + +The third argument can be omitted, defaulting to an empty string. +The second argument can be omitted, defaulting to "/". + +This is the encoding used by Courier for Maildir names on disk, and followed +by many other IMAP servers. + + Example 1: ${imapfolder {Foo/Bar}} yields "Foo.Bar". + Example 2: ${imapfolder {Foo/Bar}{.}{/}} yields "Foo&AC8-Bar". + Example 3: ${imapfolder {Räksmörgås}} yields "R&AOQ-ksm&APY-rg&AOU-s". + +Note that the source charset setting is vital, and also that characters +must be representable in UTF-16. + + + + -------------------------------------------------------------- End of file --------------------------------------------------------------