Snapshot release 20030318-1950

Charles Cazabon <[email protected]> 19 Mar 2003 01:51:11 -0000
Newsgroups gmane.mail.bikini.devel
Message-ID <[email protected]>

Snapshot 20030318-1950 released and uploaded.  From the CHANGELOG:

2003-03-18

  Add notes to grammar of commands, clean up.
  If you see "???" in the code or spec document, it indicates a place that
    I /know/ needs work.  These would be good places for people to submit
    patches for :).


Diff follows.

diff -urN --exclude=bikini.html --exclude=bikini.txt --exclude=CHANGELOG bikini-20030318-1718/bikini.texi bikini-20030318-1950/bikini.texi
--- bikini-20030318-1718/bikini.texi	Tue Mar 18 17:18:24 2003
+++ bikini-20030318-1950/bikini.texi	Tue Mar 18 19:50:43 2003
@@ -301,9 +301,10 @@
 The server MUST NOT send any data to the client except in response to a
 command.
 
-The client MUST NOT derive any information from the text portion of a @samp{A},
-@samp{E}, @samp{K}, @samp{U}, or @samp{X} single-line response, other than an
-optional informational message to display to the user.
+With the exception of certain commands defined later, the client MUST NOT derive
+any information from the text portion of a @samp{A}, @samp{E}, @samp{K},
+@samp{U}, or @samp{X} single-line response, other than an optional informational
+message to display to the user.
 
 @c ----------------------------------------------------------------------------
 @node Server Response Codes
@@ -476,7 +477,7 @@
 
 @item P
 
-Passed -- The user has passed this message on to someone else (forwarded, 
+Passed -- The user has passed this message on to someone else (forwarded,
 bounced, etc).
 
 @item R
@@ -755,7 +756,7 @@
 @c ****************************************************************************
 @chapter Commands
 
-Experimental commands must start with @samp{X-}.  The Bikini protocol will 
+Experimental commands must start with @samp{X-}.  The Bikini protocol will
 never define a standard command starting with this prefix.
 
 @c ============================================================================
@@ -1798,6 +1799,10 @@
 
 @strong{Notes:}
 @itemize @bullet
+@item The server cannot issue the @samp{C} (connection close) response modifier
+with a successful response to this command.  If the server wishes to close the
+connection and supply the @samp{C} response modifier, it must use the temporary
+error @samp{A} response.
 @item special case; can be a prompt for more info (@samp{+}), or success or failure ??? finish this
 @end itemize
 
@@ -1815,7 +1820,9 @@
 
 @strong{Notes:}
 @itemize @bullet
-@item
+@item A server with no additional capabilities MUST NOT respond with a negative
+response simply because it has no capabilities.  It MUST respond with an
+empty capability list (i.e. a simple @samp{K} success response).
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1829,11 +1836,6 @@
     ; no response, connection just closes ??? how to say this in ABNF
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @subsection LISTDIRS
 
@@ -1849,6 +1851,7 @@
 @strong{Notes:}
 @itemize @bullet
 @item All directory listings contain at least one folder, the inbox
+@item Directories in the listing end with a forward-slash; mail folders do not.
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1865,7 +1868,10 @@
 
 @strong{Notes:}
 @itemize @bullet
-@item
+@item Clients MUST NOT attempt to create a directory in a parent directory
+that does not yet exist.  i.e, to create a new hierachy, a client may have
+to issue a @samp{MKDIR} command for a new directory, then another command to
+create a sub-directory within that directory.
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1882,7 +1888,7 @@
 
 @strong{Notes:}
 @itemize @bullet
-@item
+@item Directories must be empty before the client can remove them.
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1899,7 +1905,10 @@
 
 @strong{Notes:}
 @itemize @bullet
-@item
+@item Clients MUST NOT attempt to create a folder in a parent directory that
+does not yet exist.  i.e, to create a new hierachy, a client may have to issue a
+@samp{MKDIR} command for a new directory, then a @samp{MKFOLDER} command to
+create a mail folder within that directory.
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1916,7 +1925,8 @@
 
 @strong{Notes:}
 @itemize @bullet
-@item
+@item Deleting a mail folder deletes all messages within it; i.e. a mail folder
+does not have to be empty to be deleted.
 @end itemize
 
 @c ----------------------------------------------------------------------------
@@ -1931,11 +1941,6 @@
     ;
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @subsection LISTMSGS
 
@@ -1948,11 +1953,6 @@
     ;
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @subsection GET
 
@@ -2019,11 +2019,6 @@
     ;
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @subsection MVMSG
 
@@ -2053,11 +2048,6 @@
     ;
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @subsection CLEARFLAG
 
@@ -2070,11 +2060,6 @@
     ;
 @end example
 
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
-
 @c ----------------------------------------------------------------------------
 @c @subsection SEARCH
 @c
@@ -2083,12 +2068,12 @@
 @c     ( %x51 %x55 %x49 %x54 )
 @c     ; uppercase "QUIT"
 @c @end example
-@c 
+@c
 @c @strong{Response:}
 @c @itemize @bullet
 @c @item
 @c @end itemize
-@c 
+@c
 @c @strong{Notes:}
 @c @itemize @bullet
 @c @item
@@ -2102,14 +2087,9 @@
     ; uppercase "SEND", space, folder path and name, /, message identifier, space, envelope length
 
 send-response       = ( negative-response )
-send-response       =/ ( positive-response )
+send-response       =/ ( positive-response ) ??? finish
     ;
 @end example
-
-@strong{Notes:}
-@itemize @bullet
-@item
-@end itemize
 
 @c ****************************************************************************
 @chapter Examples