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