Merged silc_1_1_branch to trunk.
[silc.git] / apps / irssi / docs / help / in / cmode.in
index 495ec0ee4e305aa7da30e608d556025ccbfe5ed7..662db332a6ccaa2203b0c52338d5f2fddce757c1 100644 (file)
 
 @SYNTAX:cmode@
 
-This command is used to manage the modes of the channel.  Most
-of the modes require special privileges, such as channel operator
-or channel founder privileges to work.  The mode is added by
-adding + before the option(s) and removed by adding - before the
-option(s).  The following modes are available:
-
-    p               Set/unset channel as private channel
-    s               Set/unset channel as secret channel
-    k               Set/unset that channel uses private channel key
-    i               Set/unset channel as invite only channel
-    t               Set/unset that only channel operator or 
+ This command is used to manage the modes of the channel.  Most
+ of the modes require special privileges, such as channel operator
+ or channel founder privileges to work.  The mode is added by
+ adding + before the option(s) and removed by adding - before the
+ option(s).  The (*) mark below means that only founder may set/unset
+ that mode.  Other modes both channel operator and founder may manage.
+
+ The following modes are available:
+
+    p               Set/unset channel as private channel.  Private
+                    channels are shown with LIST command with an
+                    indication the channel is private.  Private
+                    channel is not shown on user's joined channel
+                    list (with for example WHOIS command).
+
+    s               Set/unset channel as secret channel.  Secret
+                    channels are entirely invisible.  They are not
+                    shown with LIST command and they do not appear
+                    in user's joined channel list.
+
+    k               Enable/disable private channel key usage.   (*)
+                    When enabled KEY command may be used to set
+                    private channel key(s) on the channel.
+
+    i               Set/unset channel as invite only channel.  If
+                    you are the founder of the channel you will
+                    still be able to join the channel by giving
+                    command /JOIN channel -founder.
+
+    t               Set/unset that only channel operator or
                     founder may set channel topic
-    l <limit>       Set/unset channel's user limit
+
+    m               Set/unset user silencing.  Normal users
+                    are not able to talk on channel.            (*)
+
+    M               Set/unset operator silencing.  Operators
+                    are not able to talk on channel.            (*)
+
+    l <limit>       Set/unset channel's user count limit
+
     a <passphrase>  Set/unset passphrase for channel that must
-                    be provided when joining to the channel.
-    c <cipher>      Set/unset channel's cipher
-    h <hmac>        Set/unset channel's hmac
-    f <-pubkey|<password>
-                    Set/unset channel founder authentication.
+                    be provided when joining to the channel.    (*)
+
+    c <cipher>      Set/unset channel's cipher                  (*)
+
+    h <hmac>        Set/unset channel's HMAC                    (*)
+
+    f [<pubkeyfile> <privkeyfile> [<privkey passphrase>]]
+                    Set/unset channel founder authentication.   (*)
                     Channel founder may set this mode so that
-                    if the client leaves the channel it can
+                    when the client leaves the channel it can
                     claim the founder rights when it returns
-                    to the channel.  If -pubkey is set then
-                    the authentication will be done using the
-                    client's public key.  You can claim the
-                    founder rights using the CUMODE command.
+                    to the channel, and to set the channel to
+                    be permanent channel.  You can reclaim the
+                    founder rights using CUMODE or JOIN commands.
+
+                    If the <pubkeyfile> and <privkeyfile> is
+                    provided then the <pubkeyfile> will the used
+                    as founder public key, and the private key
+                    is used to compute a signature for the SILC
+                    server.  If these are omitted then the default
+                    SILC keypair is used.  Normally you do not need
+                    to provide these arguments.
+
+    C [{[+|-]<pubkeyfile> }]                                    (*)
+                    Set/unset channel public key mode, and add/remove
+                    channel publics key from the channel public key
+                    list.  When this mode is set only those users
+                    whose public keys has been added to the list are
+                    able to join the channel.  Channel founder may set
+                    this mode and operate on the channel public key
+                    list.
+
+                    To add public key to the list give command:
+                    CMODE +C +/path/to/the/public_key_file.pub
+
+                    To remove one public key from the list give
+                    command:
+                    CMODE +C -/path/to/the/public_key_file.pub
+
+                    To add or remove more than one public keys add as
+                    many public key file paths as necessary.
+
+                    When this mode is unset (-C), all public keys are
+                    removed from the list.  If +C is given without
+                    arguments the current channel public key list is
+                    displayed.
+
+ Multiple modes can be set/unset at once if the modes does not
+ require any arguments.  If mode requires an argument then only
+ one mode can be set at once.
+
+ When the +k (private channel key mode) mode is set the channel's
+ default cipher and HMAC are not used.  The private key (see /HELP KEY
+ for help how to set the private channel key) defines the cipher and
+ HMAC for the channel while +k mode is set.  Also the +c and +h modes
+ are ignored when private channel key mode is set.
+
+Examples:
+
+  Set the channel a permanent (persistent).  The channel won't be
+  deleted when last user leaves the channel.  When you as the founder
+  leave the channel you will be able to reclaim the founder rights
+   later.
+
+    /CMODE * +f
+
+  Reclaim founder rights (and operator privileges) for you channel:
+
+    /CUMODE * +of mynick
+
+  You can do the same during joining:
+
+    /JOIN yourchannel -founder
+
+  Change channel founder keypair on your channel.  You can do this if
+  you want to transfer founder rights to some other user or if you
+  created new keypair.  The operation requires that you have a copy of
+  the old keypair:
+
+    /CUMODE * +f mynick /path/to/old/pubkey /path/to/old/privkey
+    /CMODE * +f /path/to/new/pubkey /path/to/new/privkey
+
+  or simply /CMODE * +f if you are already using the new keypair.
+
+  Here's how to transfer founder rights to different user using
+  temporary keypair.  First, create temporary keypair:
+
+    # silc -C
+
+  Become founder on your channel:
+
+    /CUMODE * +f mynick
+
+  Set the temporary keypair on the channel and then send the key
+  pair to your friend with /FILE command or with encrypted Email:
+
+    /CMODE * +f /path/to/temp/pubkey /path/to/temp/privkey
+    (/FILE send /path/to/temp/keypair.tgz yourfriend)
+
+  Tell your friend to give the following command to become founder:
+
+    /CUMODE * +f yourfriend /path/to/temp/pubkey /path/to/temp/privkey
+
+  Your friend then sets his own keypair on the channel:
+
+    /CMODE * +f
 
-Multiple modes can be set/unset at once if the modes does not
-require any arguments.  If mode requires an argument then only
-one mode can be set at once
+  After this the temporary keypair can be removed and your friend has
+  become the founder of the channel.  This way the founder rights can
+  be transferred without ever revealing your own keypair.  When your
+  friend becomes the founder your founder rights will be removed by
+  the server automatically.  It is also possible to continue using the
+  temporary keypair, thus sharing founder rights with two or more
+  users.  Note that it is possible for only one user at a time to
+  have founder mode on the channel even if they share the keypair.
 
-See also: CUMODE, UMODE
+See also: CUMODE, UMODE, JOIN, KEY