Author: dylan
Date: 2005-03-27 03:30:56 -0500 (Sun, 27 Mar 2005)
New Revision: 664

Added:
   trunk/docs/manual/messages/
   trunk/docs/manual/messages/connection.texi
Modified:
   trunk/
   trunk/docs/manual/
   trunk/docs/manual/Makefile
   trunk/docs/manual/def.texi
   trunk/docs/manual/formats.texi
   trunk/docs/manual/haver.texi
   trunk/docs/manual/introduction.texi
   trunk/docs/manual/messages.texi
   trunk/docs/manual/protocol.texi
Log:
 [EMAIL PROTECTED]:  dylan | 2005-03-27 03:23:20 -0500
 * Moved connection messages to seperate file.
 * Added "make dvi" and improved the output of "make txt"
 * Added copyright notices to all the texi files.
 
 [EMAIL PROTECTED]:  dylan | 2005-03-27 03:28:07 -0500
 removed unused macros, and fixed punctuation and grammar for C:HAVER.
 [EMAIL PROTECTED]:  dylan | 2005-03-27 03:30:30 -0500
 Changed "make all" to really make all,
 and ignorified the generated files.



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:879
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:885
edfcd8bd-4ce7-0310-a97e-bb1efd40edf3:/local:238


Property changes on: trunk/docs/manual
___________________________________________________________________
Name: svn:ignore
   - *.aux
*.pdf
*.ps
*.dvi
*.log
*.toc
*.bbl
*.blg
*.out
config.tex
tags

   + haver
haver.info
haver.txt
haver.xml
haver.pdf
haver.dvi


Modified: trunk/docs/manual/Makefile
===================================================================
--- trunk/docs/manual/Makefile  2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/Makefile  2005-03-27 08:30:56 UTC (rev 664)
@@ -1,11 +1,15 @@
 
 texi = $(shell find -name '*.texi' -not -name 'haver.texi')
 
-all:
-       @echo "Usage: make [pdf|html|info|txt]"
+default:
+       @echo "Usage: make [pdf|html|info|txt|dvi]"
 
+
+all: info pdf dvi html txt xml
+
 info: haver.info
 pdf: haver.pdf
+dvi: haver.dvi
 html: haver/index.html
 txt: haver.txt
 xml: haver.xml
@@ -14,7 +18,7 @@
        makeinfo --html $<
 
 haver.txt: haver.texi $(texi)
-       makeinfo --plaintext $< > $@
+       makeinfo --plaintext $< -o $@
 
 
 haver.info: haver.texi $(texi)

Modified: trunk/docs/manual/def.texi
===================================================================
--- trunk/docs/manual/def.texi  2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/def.texi  2005-03-27 08:30:56 UTC (rev 664)
@@ -4,24 +4,15 @@
 
 @alias cmd=command
 
+
[EMAIL PROTECTED] For everything except info format, @param is @var.
 @ifnotinfo
 @alias param=var
 @end ifnotinfo
 
[EMAIL PROTECTED] For info, @param just wraps its argument with <>.
 @ifinfo
 @macro param{value}
 <\value\>
 @end macro
 @end ifinfo
-
[EMAIL PROTECTED] mustBeUser
-Services @strong{must} not send this message.
[EMAIL PROTECTED] macro
-
[EMAIL PROTECTED] mustSendOnce
-This message @strong{must} only be sent once during the lifetime of the 
connection.
[EMAIL PROTECTED] macro
-
[EMAIL PROTECTED] mustBeWanted
-This message @strong{must} only be sent when the server requests it with 
@command{WANT}.
[EMAIL PROTECTED] macro

Modified: trunk/docs/manual/formats.texi
===================================================================
--- trunk/docs/manual/formats.texi      2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/formats.texi      2005-03-27 08:30:56 UTC (rev 664)
@@ -1,3 +1,6 @@
[EMAIL PROTECTED] Copyright (C) 2005 Dylan William Hardison.
[EMAIL PROTECTED] See haver.texi for copyright details.
+
 @node Formats
 @chapter Formats
 

Modified: trunk/docs/manual/haver.texi
===================================================================
--- trunk/docs/manual/haver.texi        2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/haver.texi        2005-03-27 08:30:56 UTC (rev 664)
@@ -1,5 +1,4 @@
 \input texinfo
[EMAIL PROTECTED] $Id: texinfo.txi,v 1.52 2004/04/09 21:30:07 karl Exp $
 @comment %**start of header
 @setfilename haver.info
 @include def.texi

Modified: trunk/docs/manual/introduction.texi
===================================================================
--- trunk/docs/manual/introduction.texi 2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/introduction.texi 2005-03-27 08:30:56 UTC (rev 664)
@@ -1,3 +1,6 @@
[EMAIL PROTECTED] Copyright (C) 2005 Dylan William Hardison.
[EMAIL PROTECTED] See haver.texi for copyright details.
+
 @node Introduction
 @chapter Introduction
 

Added: trunk/docs/manual/messages/connection.texi
===================================================================
--- trunk/docs/manual/messages/connection.texi  2005-03-27 06:35:27 UTC (rev 
663)
+++ trunk/docs/manual/messages/connection.texi  2005-03-27 08:30:56 UTC (rev 
664)
@@ -0,0 +1,201 @@
[EMAIL PROTECTED] Copyright (C) 2005 Dylan William Hardison.
[EMAIL PROTECTED] See haver.texi for copyright details.
+
[EMAIL PROTECTED] Connection Messages
[EMAIL PROTECTED] Connection
+
+This section describes how a client connects
+to the server and authenticates itself. It also
+describes how to disconnect, and ways for both the server
+and client of making sure the connection is alive.
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} HAVER client
+This message @strong{must} only be sent once during the lifetime of the 
connection.
+
+This message @strong{must} be the first message sent by the client.
+If a different message is received, servers @strong{must}
+immediately terminate the connection.
+This message @strong{must not} be sent be sent more than once
+during the lifetime of the connection.
+
+The parameter @param{client} is the name and version
+number of the client software, comparable to the ``User-Agent:''
+in HTTP. The format should be ``Program Name/#.#.#'', where ``#''
+is a number from 0 to 9. This format shall not be strictly enforced,
+but clients are encouraged to not deviate from it.
+
+The server @strong{must} respond to this message
+by sending the messages @cmd{HAVER}, @cmd{HOST}, and @cmd{WANT IDENT}.
[EMAIL PROTECTED] deffn
+
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Server Message} HAVER server
+
+This message @strong{must} be sent after the client sends @cmd{HAVER},
+and @strong{must not} be sent again during the lifetime of the connection.
+
+The parameter @param{server} is name and version number of the server,
+for example ``Haver::Server::POE/0.07''. This is the same form as
+for client names and versions.
+
+The client can just ignore this.
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] {Server Message} HOST hostname
+This message @strong{must} be sent after the client sends @cmd{HAVER},
+and @strong{must not} be sent again during the lifetime of the connection.
+
+The parameter @param{hostname} is the @acronym{DNS} name of the server.
+It @strong{must} resolve back to the server, but a client does no have to 
verify this
+(it is a good idea, however).
+
+This value should be remembered, as most clients should use when generating 
passcodes
+(@pxref{Client Passcodes}).
[EMAIL PROTECTED] deffn
+
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Server Message} WANT cmd [EMAIL PROTECTED]
+When the server sends this message, the client
[EMAIL PROTECTED] either reply with @cmd{cmd}
+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.
[EMAIL PROTECTED] deffn
+
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} IDENT [type] ident
+This message @strong{must} only be sent when the server requests it with 
@cmd{WANT}.
+
[EMAIL PROTECTED] is the identifier the client wishes to go by  
(@pxref{Identifiers}).
[EMAIL PROTECTED] 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}}.
+
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} AUTH:TYPE name
[EMAIL PROTECTED] {Server Message} {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}.
+Supported values for @param{name} would have been given by 
[EMAIL PROTECTED] of the @cmd{WANT} that requested this message.
+
+Typical values for @param{name} are ``basic'', which is the standard
+authenticate method. In the future there could be extensions, such as 
authentication based on
+OpenPGP keys or similiar.
+
+If client issues @code{AUTH:TYPE basic}, the server will respond
+with @code{WANT AUTH:BASIC}.
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} AUTH:BASIC hashtype token
[EMAIL PROTECTED] {Server Message} {WANT AUTH:BASIC} key [EMAIL PROTECTED]
+Authenticate using the basic scheme. 
+
+The parameter @param{hashes} of the @cmd{WANT} is a list of hashing
+functions the sever is aware of. Typically, this list will include ``sha1''.
+However, other hashing algorithms may be available, such as ``sha256''.
+The parameter @param{key} is a unique random string.
+Its value is mostly unimportant.
+
+The algorithm for generating a token is very simple:
+
[EMAIL PROTECTED]
[EMAIL PROTECTED]
+The client must select from @param{hashes} the hashing function 
+it prefers most. What it selects will be the value of @param{hashtype}.
+
[EMAIL PROTECTED] 
+Using the hashing function @param{hashtype}, let @param{token} equal the
+concatenation of @param{key} with the client's @emph{passcode} (@pxref{Client 
Passcodes}).
[EMAIL PROTECTED] enumerate
+
+Then, simply send the message @code{AUTH:BASIC @param{hashtype} @param{token}}.
+
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} BYE [why]
+Disconnect from the server.
+
+The parameter @param{why} is the reason for the disconnect,
+such as ``lost terminal'', ``reboot'', etc.
+This is not meant to be set by a human being, but instead
+by the client software.
+
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Server Message} BYE type [EMAIL PROTECTED]
+
+This is sent to the client right before the server disconnects it.
+
+Depending on the value of @param{type}, @param{args} will be different things.
+The following table lists the different types of client disconnections.
+
[EMAIL PROTECTED] @command
[EMAIL PROTECTED] active
+This is sent when the client has issued the server @cmd{BYE} message.
+
+The @param{args} may contain a single item, which
+is describes the reason for the disconnection. For example,
+``lost terminal'', ``reboot'', ``crash'', etc.
[EMAIL PROTECTED] discon
+The socket was closed. @param{args} might contain more information.
[EMAIL PROTECTED] timeout
+This means the client did not complete the login procedure
+fast enough. Typically, the login procedure must be completed in
+20 seconds from login, however this can be different depending on server.
+
+This @strong{must not} be sent if the client never sent @cmd{HAVER}.
[EMAIL PROTECTED] ping
+The client did not respond to a @cmd{PING}
+in time.
[EMAIL PROTECTED] table
+
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Server Message} PING data
[EMAIL PROTECTED] {Client Message} PONG data
+When the server issues the @cmd{PING} message, the client @strong{must} reply
+with @cmd{PONG}. The @param{data} parameter of @cmd{PONG}
+is whatever value the server sent with @cmd{PING}.
+
[EMAIL PROTECTED] deffn
+
[EMAIL PROTECTED] ########################################################
+
[EMAIL PROTECTED] {Client Message} POKE [EMAIL PROTECTED]
[EMAIL PROTECTED] {Server Message} OUCH [EMAIL PROTECTED]
+
+When the client sends @cmd{POKE}, the server @strong{must} respond with 
@cmd{OUCH}.
+
+There are some limits to this; in general you should not
+send this more than once a minute. Sending every five minutes is even better.
+The best method is to only send this if you haven't got an message from the 
server
+in some amount of time.
+
+In spite of this warning, servers probably won't penalize you unless you send
+this every few seconds.
[EMAIL PROTECTED] deffn

Modified: trunk/docs/manual/messages.texi
===================================================================
--- trunk/docs/manual/messages.texi     2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/messages.texi     2005-03-27 08:30:56 UTC (rev 664)
@@ -1,3 +1,6 @@
[EMAIL PROTECTED] Copyright (C) 2005 Dylan William Hardison.
[EMAIL PROTECTED] See haver.texi for copyright details.
+
 @node Messages
 @chapter Messages
 
@@ -21,128 +24,4 @@
 * Connection Messages::
 @end menu
 
-
[EMAIL PROTECTED] Connection Messages
[EMAIL PROTECTED] Connection
-
-This section describes how a client connects
-to the server and authenticates itself. It also
-describes how to disconnect, and ways for both the server
-and client of making sure the connection is alive.
-
[EMAIL PROTECTED] ########################################################
-
[EMAIL PROTECTED] {Client Message} HAVER client
[EMAIL PROTECTED]
-
-This message @strong{must} be the first message sent by the client.
-If a different message is received, servers @strong{must}
-immediately terminate the connection.
-This message @strong{must not} be sent be sent more than once
-during the lifetime of the connection.
-
-The parameter @param{client} is the name and version
-number of the client software, comparable to the ``User-Agent:''
-in HTTP. The format should be ``Program Name/#.#.#'', where ``#''
-is a number from 0 to 9. This format shall not be strictly enforced,
-but clients are encouraged to not deviate from it.
-
-The server @strong{must} respond to this message
-by sending @cmd{HAVER}, @cmd{HOST}, @cmd{WANT IDENT}.
[EMAIL PROTECTED] deffn
-
-
[EMAIL PROTECTED] ########################################################
-
[EMAIL PROTECTED] {Server Message} HAVER server
-
-This message @strong{must} be sent after the client sends @cmd{HAVER},
-and @strong{must not} be sent again during the lifetime of the connection.
-
-The parameter @param{server} is name and version number of the server,
-for example ``Haver::Server::POE/0.07''. This is the same form as
-for client names and versions.
-
-The client can just ignore this.
[EMAIL PROTECTED] deffn
-
[EMAIL PROTECTED] {Server Message} HOST hostname
-This message @strong{must} be sent after the client sends @cmd{HAVER},
-and @strong{must not} be sent again during the lifetime of the connection.
-
-The parameter @param{hostname} is the @acronym{DNS} name of the server.
-It @strong{must} resolve back to the server, but a client does no have to 
verify this
-(it is a good idea, however).
-
-This value should be remembered, as most clients should use when generating 
passcodes
-(@pxref{Client Passcodes}).
[EMAIL PROTECTED] deffn
-
-
[EMAIL PROTECTED] ########################################################
-
[EMAIL PROTECTED] {Server Message} WANT cmd [EMAIL PROTECTED]
-When the server sends this message, the client
[EMAIL PROTECTED] either reply with @cmd{cmd}
-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.
[EMAIL PROTECTED] deffn
-
[EMAIL PROTECTED] {Client Message} IDENT [type] ident
-This message @strong{must} only be sent when the server requests it with 
@cmd{WANT}.
-
[EMAIL PROTECTED] is the identifier the client wishes to go by  
(@pxref{Identifiers}).
[EMAIL PROTECTED] 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}}.
-
[EMAIL PROTECTED] deffn
-
[EMAIL PROTECTED] {Client Message} AUTH:TYPE name
[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}.
-Supported values for @param{name} would have been given by 
[EMAIL PROTECTED] of the @cmd{WANT} that requested this message.
-
-Typical values for @param{name} are ``basic'', which is the standard
-authenticate method. In the future there could be extensions, such as 
authentication based on
-OpenPGP keys or similiar.
-
-If client issues @code{AUTH:TYPE basic}, the server will respond
-with @code{WANT AUTH:BASIC}.
[EMAIL PROTECTED] deffn
-
[EMAIL PROTECTED] {Client Message} AUTH:BASIC hashtype token
[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
-functions the sever is aware of. Typically, this list will include ``sha1''.
-However, other hashing algorithms may be available, such as ``sha256''.
-The parameter @param{key} is a unique random string.
-Its value is mostly unimportant.
-
-The algorithm for generating a token is very simple:
-
[EMAIL PROTECTED]
[EMAIL PROTECTED]
-The client must select from @param{hashes} the hashing function 
-it prefers most. What it selects will be the value of @param{hashtype}.
-
[EMAIL PROTECTED]
-Using the hashing function @param{hashtype}, let @param{token} equal the
-concatenation of @param{key} with the client's @emph{passcode} (@pxref{Client 
Passcodes}).
[EMAIL PROTECTED] enumerate
-
-Then, simply send the message @code{AUTH:BASIC @param{hashtype} @param{token}}.
-
[EMAIL PROTECTED] deffn
-
-
[EMAIL PROTECTED] messages/connection.texi

Modified: trunk/docs/manual/protocol.texi
===================================================================
--- trunk/docs/manual/protocol.texi     2005-03-27 06:35:27 UTC (rev 663)
+++ trunk/docs/manual/protocol.texi     2005-03-27 08:30:56 UTC (rev 664)
@@ -1,3 +1,7 @@
[EMAIL PROTECTED] Copyright (C) 2005 Dylan William Hardison.
[EMAIL PROTECTED] See haver.texi for copyright details.
+
+
 @node Protocol
 @chapter Protocol
 


Reply via email to