Author: dylan
Date: 2005-03-27 00:49:40 -0500 (Sun, 27 Mar 2005)
New Revision: 660
Modified:
trunk/
trunk/docs/manual/Makefile
trunk/docs/manual/def.texi
trunk/docs/manual/formats.texi
trunk/docs/manual/haver.texi
trunk/docs/manual/messages.texi
trunk/docs/manual/protocol.texi
Log:
[EMAIL PROTECTED]: dylan | 2005-03-27 00:49:19 -0500
The documentation is really improving.
Rewored the section on AUTH:BASIC, added a section on
client passcodes to the Formats section, and made @param{foo}
look pretty in info format.
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk:11166
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk-merge-10131:11178
27e50396-46e3-0310-8b22-ae223a1f35ce:/local:212
e9404bb1-7af0-0310-a7ff-e22194cd388b:/haver/local:869
edfcd8bd-4ce7-0310-a97e-bb1efd40edf3:/local:238
+ 1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk:11166
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk-merge-10131:11178
27e50396-46e3-0310-8b22-ae223a1f35ce:/local:212
e9404bb1-7af0-0310-a7ff-e22194cd388b:/haver/local:870
edfcd8bd-4ce7-0310-a97e-bb1efd40edf3:/local:238
Modified: trunk/docs/manual/Makefile
===================================================================
--- trunk/docs/manual/Makefile 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/Makefile 2005-03-27 05:49:40 UTC (rev 660)
@@ -1,5 +1,5 @@
-texi = $(shell find -name '*.texi' -mindepth 2)
+texi = $(shell find -name '*.texi' -not -name 'haver.texi')
all:
@echo "Usage: make [pdf|html|info|txt]"
Modified: trunk/docs/manual/def.texi
===================================================================
--- trunk/docs/manual/def.texi 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/def.texi 2005-03-27 05:49:40 UTC (rev 660)
@@ -3,8 +3,17 @@
@set VERSION 4
@alias cmd=command
+
[EMAIL PROTECTED]
@alias param=var
[EMAIL PROTECTED] ifnotinfo
[EMAIL PROTECTED]
[EMAIL PROTECTED] param{value}
+<\value\>
[EMAIL PROTECTED] macro
[EMAIL PROTECTED] ifinfo
+
@macro mustBeUser
Services @strong{must} not send this message.
@end macro
Modified: trunk/docs/manual/formats.texi
===================================================================
--- trunk/docs/manual/formats.texi 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/formats.texi 2005-03-27 05:49:40 UTC (rev 660)
@@ -2,9 +2,10 @@
@chapter Formats
@menu
-* Dates and Times:: The meaning of 1985-09-14 and such.
-* Identifiers:: The name of the beast.
-* Commands:: Nobody likes feeling invalid.
+* Dates and Times:: The meaning of 1985-09-14 and such.
+* Identifiers:: The name of the beast.
+* Commands:: Nobody likes feeling invalid.
+* Client Passcodes:: How a client encodes passwords.
@end menu
@node Dates and Times
@@ -52,3 +53,17 @@
The command portion of a message must match the regex:
@verb{/[A-Z][A-Z:_-]+/}.
+
[EMAIL PROTECTED] Client Passcodes
[EMAIL PROTECTED] Client Passcodes
+Passcodes are essentially the same thing as passwords. In fact, as far as the
server is concerned, they
+are passwords. The primary purpose is to prevent server admins from reading
the password from
+the user accounts, and to ensure that identical passwords on different servers
do not pose as great
+a security concern. Identical passwords on the same server are still
detectable.
+
+All clients must implement passcodes in the exact same way, or else users will
not be able to login
+as the same account from different clients.
+
+The passcode for a user on server $host (as given by the @cmd{HOST} server
message)
+with password $password is @code{sha1($password + $host)} where @code{+}
indicates concatenation
+of strings and sha1 is the SHA1 hash function defined in @cite{RFC 3174} and
@cite{FIPS 180-1}.
Modified: trunk/docs/manual/haver.texi
===================================================================
--- trunk/docs/manual/haver.texi 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/haver.texi 2005-03-27 05:49:40 UTC (rev 660)
@@ -48,7 +48,6 @@
* Introduction::
* Protocol::
* Formats::
-* Concepts::
* Messages::
* Index::
@end menu
Modified: trunk/docs/manual/messages.texi
===================================================================
--- trunk/docs/manual/messages.texi 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/messages.texi 2005-03-27 05:49:40 UTC (rev 660)
@@ -8,7 +8,6 @@
@heading On the notation of messages
A message is composed of a command and zero or more parameters.
Commands are typeset as @cmd{COMMAND} and arguments @param{parameter}.
-Sadly, parameters appear in all uppercase in info and plain text format.
Parameters that are enclosed in square brackets [like this] are optional.
When a parameter is followed by an ellipsis (@dots{}), it stands for all the
remaining
@@ -20,7 +19,6 @@
@menu
* Connection Messages::
-* Client Passcodes::
@end menu
@@ -86,8 +84,8 @@
@deffn {Server Message} WANT cmd [EMAIL PROTECTED]
When the server sends this message, the client
@strong{must} either reply with @cmd{cmd}
-or [EMAIL PROTECTED] @param{cmd}''.
-The server @strong{must not} send this message after it sends @strong{ACCEPT}.
+or @code{CANT @param{cmd}}.
+The server @strong{must not} send this message after it sends @cmd{ACCEPT}.
If the client sends any other message(s), the server @strong{must} disconnect
the client.
@@ -99,10 +97,14 @@
@param{ident} is the identifier the client wishes to go by
(@pxref{Identifiers}).
@param{type} is optional, and may be one of ``user'' or ``service''.
If not specified, it defaults to ``user''.
+
+If @param{ident} requires authentication, the server will send @code{WANT
AUTH:TYPE}.
+Otherwise it will send @code{ACCEPT @param{ident}}.
+
@end deffn
@deffn {Client Message} AUTH:TYPE name
[EMAIL PROTECTED] {Server Want} {WANT AUTH:TYPE} [EMAIL PROTECTED]
[EMAIL PROTECTED] {Want} {AUTH:TYPE} [EMAIL PROTECTED]
This message @strong{must} only be sent when the server requests it with
@cmd{WANT}.
Request to use authentication type @param{name}.
@@ -113,12 +115,12 @@
authenticate method. In the future there could be extensions, such as
authentication based on
OpenPGP keys or similiar.
-If client issues @[EMAIL PROTECTED]:TYPE} basic}, the server will respond
-with @[EMAIL PROTECTED] AUTH:BASIC}.
+If client issues @code{AUTH:TYPE basic}, the server will respond
+with @code{WANT AUTH:BASIC}.
@end deffn
@deffn {Client Message} AUTH:BASIC hashtype token
[EMAIL PROTECTED] {Server Want} {WANT AUTH:BASIC} key [EMAIL PROTECTED]
[EMAIL PROTECTED] {Want} {AUTH:BASIC} key [EMAIL PROTECTED]
Authenticate using the basic scheme.
The parameter @param{hashes} of the @cmd{WANT} is a list of hashing
@@ -138,8 +140,9 @@
Using the hashing function @param{hashtype}, let @param{token} equal the
concatenation of @param{key} with the client's @emph{passcode} (@pxref{Client
Passcodes}).
@end enumerate
+
+Then, simply send the message @code{AUTH:BASIC @param{hashtype} @param{token}}.
+
@end deffn
[EMAIL PROTECTED] Client Passcodes
[EMAIL PROTECTED]
-Foobar
+
Modified: trunk/docs/manual/protocol.texi
===================================================================
--- trunk/docs/manual/protocol.texi 2005-03-27 05:49:38 UTC (rev 659)
+++ trunk/docs/manual/protocol.texi 2005-03-27 05:49:40 UTC (rev 660)
@@ -7,8 +7,7 @@
@menu
* Character codes:: Unicode your friend.
-* Parsing:: Banana Split
-* ASCII NULs:: Thorny issue.
+* Parsing:: Banana Split.
@end menu
@node Character codes
@@ -36,9 +35,6 @@
and an Esc by ``<Esc>e''.
Naturally, replace ``<Esc>'' with the Esc character (0x1b).
[EMAIL PROTECTED] ASCII NULs
[EMAIL PROTECTED] ASCII NULs
-
Currently there is no defined behavior for ASCII NUL characters in the
protocol.
Comments and suggestions on how to deal with them is welcome.