Snapshot release 20030307-1204

Charles Cazabon <[email protected]> 7 Mar 2003 18:04:46 -0000
Newsgroups gmane.mail.bikini.devel
Message-ID <[email protected]>

Snapshot 20030307-1204 released and uploaded.  From the CHANGELOG:

2003-03-07

  Change spec to allow servers to issue experimental capability tokens
    beginning with "X-".  New features have to come from somewhere.
  Comment the SEARCH command out of the spec for now.  There appear to be
    strong feelings on both sides of the simple (glob) vs. all-encompassing
    (regex/pcre) debate.  I expect some people would really like the server
    to parse documents and allow body searching.  I encourage server
    implementors to try implementing X-SEARCH-foo capabilities, document
    them, and encourage client authors to support them.  Please notify
    the bikini-devel list of any experimental capabilities!
  Additions to formal grammar.


Diff follows.

diff -urN --exclude=bikini.html --exclude=bikini.txt --exclude=CHANGELOG bikini-20030306-1524/bikini.texi bikini-20030307-1204/bikini.texi
--- bikini-20030306-1524/bikini.texi	Thu Mar  6 15:24:50 2003
+++ bikini-20030307-1204/bikini.texi	Fri Mar  7 12:04:21 2003
@@ -677,7 +677,13 @@
 is a single capability token, optionally followed by additional information
 in a format specific to that token.
 
-Servers MUST NOT send any capability tokens not defined in this specification.
+Servers MAY implement experimental or nonstandardized capabilities which
+are not listed in this specification using capability tokens beginning with
+@samp{X-} (i.e. @samp{X-FOO}).  The BikINI protocol will never define
+a standard capability token beginning with @samp{X-}.
+
+Servers MUST NOT send any capability tokens not defined in this specification
+with the exception of tokens beginning with @samp{X-} as stated above.
 Clients MUST ignore tokens they do not understand.
 
 Currently defined tokens are:
@@ -1449,32 +1455,31 @@
 ??? Allow multiple flags in single command?
 
 @c ----------------------------------------------------------------------------
-@node search
-@subsection SEARCH
-
-@strong{Function:} Search for specific content in all messages in an existing mail folder.
-
-@strong{Syntax:} @samp{SEARCH @emph{???}}
-
-@strong{Possible Responses:}
-@itemize @bullet
-@item Positive single-line.  The text portion of the response is optional,
-free form, and continues until the end of the line.
-@item Negative single-line.  The text portion of the response is optional,
-free form, and continues until the end of the line.
-@end itemize
-
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
-@strong{Examples:}
-
-@example
-C:  rmdir projects/alpha
-S:  K ok, directory removed
-@end example
+@c @node search
+@c @subsection SEARCH
+@c
+@c @strong{Function:} Search for specific content in all messages in an existing mail folder.
+@c
+@c @strong{Syntax:} @samp{SEARCH @emph{???}}
+@c
+@c @strong{Possible Responses:}
+@c @itemize @bullet
+@c @item Positive single-line.  The text portion of the response is optional,
+@c free form, and continues until the end of the line.
+@c @item Negative single-line.  The text portion of the response is optional,
+@c free form, and continues until the end of the line.
+@c @end itemize
+@c
+@c @strong{Notes:}
+@c @itemize @bullet
+@c @item
+@c @end itemize
+@c
+@c @strong{Examples:}
+@c
+@c @example
+@c @end example
+@c
 
 @c ----------------------------------------------------------------------------
 @node send
@@ -1673,9 +1678,15 @@
 response-line           = <response-code-char> <response-modifier> SP <response-info> CR LF
         ; space is required even though response-info can be empty
 
+success-line            = %x4B SP <response-info> CR LF
+        ; space is required even though response-info can be empty
+
 continuation-line       = %x2B SP 1*NORMCHAR
         ; "+" SP ...
 
+multiline-response      = *<continuation-line> <success-line>
+        ; zero or more continuation lines followed by a "K" response line
+
 command                 =  ( %x41 %x55 %x54 %x48 )                          ; AUTH
 command                 =/ ( %x43 %x41 %x50 %x53 )                          ; CAPS
 command                 =/ ( %x43 %x4C %x45 %x41 %x52 %x46 %x4C %x41 %x47)  ; CLEARFLAG
@@ -1692,7 +1703,7 @@
 command                 =/ ( %x52 %x4D %x44 %x49 %x52 )                     ; RMDIR
 command                 =/ ( %x52 %x4D %x46 %x4F %x4C %x44 %x45 %x52 )      ; RMFOLDER
 command                 =/ ( %x52 %x4D %x4D %x53 %x47 )                     ; RMMSG
-command                 =/ ( %x53 %x45 %x41 %x52 %x43 %x48 )                ; SEARCH
+@c command                 =/ ( %x53 %x45 %x41 %x52 %x43 %x48 )                ; SEARCH
 command                 =/ ( %x53 %x45 %x4E %x44 )                          ; SEND
 command                 =/ ( %x53 %x45 %x54 %x46 %x4C %x41 %x47 )           ; SETFLAG
 command                 =/ ( %x53 %x54 %x41 %x52 %x54 %x54 %x4C %x53 )      ; STARTTLS