updates.
[crypto.git] / doc / draft-riikonen-silc-commands-03.nroff
index 470aad30e2defd99d7a1fa2d36944fb3a35c0ebd..2552fed9eade2585a939d78e9e010ea081ad8532 100644 (file)
@@ -190,7 +190,6 @@ described in the command reply descriptions.
 Status messages:
 
     SILC_STATUS_OK
-    SILC_STATUS_ERR_TOO_MANY_TARGETS
     SILC_STATUS_ERR_NOT_ENOUGH_PARAMS
     SILC_STATUS_ERR_NO_SUCH_NICK
 
@@ -1127,6 +1126,15 @@ List of all defined commands in SILC follows.
               certain users.  However, this document does not specify
               such service.
 
+
+           0x00001000    SILC_UMODE_BLOCK_INVITE
+
+              Marks that the client wishes to block incoming invite
+              notifications.  Client MAY set and unset this mode.
+              When set server does not deliver invite notifications
+              to the client.  Note that this mode may make it harder
+              to join invite-only channels.
+
         If the <client mode mask> was not provided this command merely
         returns the mode mask to the client.
 
@@ -1316,25 +1324,31 @@ List of all defined commands in SILC follows.
               Channel founder may set this mode to be able to regain
               channel founder rights even if the client leaves the 
               channel.  The <auth payload> is the Authentication Payload
-              consisting of the authentication method and authentication
-              data to be used in the authentication.  The server MUST
-              NOT accept NONE authentication method.  Also, if the 
-              method is public key authentication the server MUST NOT
-              save the authentication data from the payload as the
-              data is different on all authentications.  In this case the
-              server only saves the authentication method.  However,
-              server MUST verify the sent authentication payload and
-              set the mode only if the verification was successful.
-
-              Note that this mode is effective only in the current server.
-              The client MUST connect to the same server later to be able
-              to regain the channel founder rights.  The server MUST save
-              the public key of the channel founder and use that to identify
-              the client which is claiming the channel founder rights.
-              The rights may be claimed by the SILC_CUMODE_FOUNDER 
-              channel user mode using SILC_COMMAND_CUMODE command.  The
-              set authentication data remains valid as long as the channel
-              exists or until the founder unsets this mode.
+              consisting of the public key authentication method and the
+              authentication data for that method.  The passphrase
+              method cannot be used with this mode.  The server MUST NOT
+              accept NONE authentication method.  The server does not
+              save <auth payload> but MUST verify it.  The public key
+              used to verify the payload is the public key of the
+              client sending this command.  The mode may be set only
+              if the <auth payload> was verified successfully.  The
+              server also MUST save the founder's public key.
+
+              The public key of the founder is sent in the
+              SILC_NOTIFY_TYPE_CMODE_CHANGE notify type so that other
+              routers and servers in the network may save the public key.
+              This way the founder can reclaim the founder rights back
+              to the channel from any server in the network.  The founder
+              rights can be regained by the SILC_CUMODE_FOUNDER channel
+              user mode, or during joining procedure with the command
+              SILC_COMMAND_JOIN.
+
+              When this channel mode is set the channel also becomes
+              permanent.  If all clients leave the channel while this
+              mode is set the channel MUST NOT be destroyed.  The founder
+              can reclaim the founder mode back on these empty channels
+              at any time.  Implementations MAY limit the number of how
+              many channels a user can own.
 
               Typical implementation would use [+|-]f on user interface
               to set/unset this mode.
@@ -1432,7 +1446,7 @@ List of all defined commands in SILC follows.
               been set, the client can claim channel founder privileges
               by providing the <auth payload> that the server will use
               to authenticate the client.  The public key that server will
-              use to verify the <auth payload> must the same public key
+              use to verify the <auth payload> MUST the same public key
               that was saved when the SILC_CMODE_FOUNDER_AUTH channel
               mode was set.  The client MAY remove this mode at any time.
 
@@ -1479,7 +1493,7 @@ List of all defined commands in SILC follows.
            0x00000010    SILC_CUMODE_BLOCK_MESSAGES_ROBOTS
 
               Marks that the client wishes not to receive any channel
-              messages sent from robots.  Messages sent by Users with
+              messages sent from robots.  Messages sent by users with
               the SILC_UMODE_ROBOT user mode set are not delivered.
               Client MAY set and unset this mode to itself.  Client MUST
               NOT set it to anyone else.  When this mode is set server
@@ -1487,6 +1501,16 @@ List of all defined commands in SILC follows.
               to this client.
 
 
+           0x00000020    SILC_CUMODE_QUIET
+
+              Marks that the client cannot talk on the channel.  This
+              mode can be set by channel operator or channel founder to
+              some other user that is not operator or founder.  The
+              target client MUST NOT unset this mode.  When this mode
+              is set the server MUST drop messages sent by this client
+              to the channel.
+
+
         Reply messages to the command:
 
         Max Arguments:  4
@@ -2043,11 +2067,10 @@ List of all defined status types:
 
         "No such server".  Requested server name does not exist.
 
-   13   SILC_STATUS_ERR_TOO_MANY_TARGETS
+   13   SILC_STATUS_ERR_INCOMPLETE_INFORMATION
 
-        "Duplicate recipients. No message delivered".  Message were
-        tried to be sent to recipient which has several occurrences in 
-        the recipient list.
+        "Incomplete registration information".  Information remote
+        sent was incomplete.
 
    14   SILC_STATUS_ERR_NO_RECIPIENT
 
@@ -2233,6 +2256,23 @@ List of all defined status types:
         "Service does not exist".  Requested service identifier is
         unknown.
 
+   50   SILC_STATUS_ERR_NOT_AUTHENTICATED
+
+        "You have not been authenticated".  Remote connection is not
+        authenticated even though it is supposed to be.
+
+   51   SILC_STATUS_ERR_BAD_SERVER_ID
+
+        "Server ID is not valid".  Provided server ID is not valid.
+
+   52   SILC_STATUS_ERR_KEY_EXCHANGE_FAILED
+
+        "Key exchange failed".  Key Exchange protocol failed.
+
+   53   SILC_STATUS_ERR_BAD_VERSION
+
+        "Bad version".  Protocol or software version mismatch.
+
 .in 3