updates.
[silc.git] / TODO
diff --git a/TODO b/TODO
index 22dbc70afee6ad8179cd9997dffd82488041c628..7af043baa6ad6314d21a3fa5b9d829fccf1d863f 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,9 +1,6 @@
 TODO/bugs in Irssi SILC client
 ==============================
 
- o Setting /away prints server/router operator modes as well.
-   Print modes that was just set only.
-
  o Add local command to switch the channel's private key when channel has
    several private keys.  Currently sending channel messages with many
    keys is not possible because changing the key is not possible by the
@@ -33,16 +30,18 @@ TODO/bugs in Irssi SILC client
 TODO/bugs In SILC Client Library
 ================================
 
- o N/A
+ o When changing own nickname and there exists a same nickname the library
+   can give the client now nickname in format nick@host.  This is new
+   behaviour and maybe should be removed.  The changer should always
+   get the one it wants and not have the formatted nickname.
 
 
 TODO/bugs In SILC Server
 ========================
 
- o Make the silc_server_command_pending_error_check function to
-   take all arguments it received and put them to the reply it is 
-   sending.  Otherwise for example WHOIS on normal server for bogus
-   nickname does not print anything in the client.
+ o If auto-reconnecting to router and EOF is received during the
+   connecting phase the server will not try to auto-reconnect anymore
+   after that.  Fix to auto-reconnect.
 
  o Backup router related issues
 
@@ -71,10 +70,6 @@ TODO/bugs In SILC Server
        o IP address fields in configuration file should accept mask
          format as well, IP/MASK, and not just plain IP.
 
-       o Connection classes should be actually implemented in
-         serverconfig.c.  They can be defined but they are totally
-         ignored currently.  And they should be redefined also.
-
  o If client's public key is saved in the server (and doing public key
    authentication) then the hostname and the username information could
    be taken from the public key.  Should be a configuration option!
@@ -87,6 +82,42 @@ TODO/bugs In SILC Libraries
    than on Unix.  Do it with threads on WIN32.  The function works but
    is not actually async currently.
 
+ o Rewrite the lib/silcsim/silcsim.h.  The SilcSimContext should be
+   private and silc_sim_alloc should take necessary arguments.
+
+
+TODO in SILC Protocol
+=====================
+
+ o Add "request parameters" or similar to the WHOIS command, which can
+   be used to request various parameters (something not returned by
+   standard WHOIS command) about clients (info that could be fetched
+   even from clients).  Additional specification (or appendix) should 
+   be done to define the payload and the parameters.  It could be used
+   to make the WHOIS command support various search conditions as well.
+   This would be the way to extend the WHOIS command to support various
+   new features without always making the command incompatible to previous
+   version.  To be included in protocol version 1.1.
+
+ o Re-define the Status Payload: it is now 16 bits, split it into two
+   8 bits fields.  First field includes status types from 0 - 9 and
+   10 - n *if* it is not an list of errors.  If it is list of errors then
+   the first field includes 1, 2 and/or 3, and the second field includes
+   the error status 10 - n.  This way it is possible to send multiple
+   errors (list of errors) and we have a way to tell the receiver that
+   there will be other errors as well.  The second field is used only
+   if there is list of errors.  If normal status, or normal (single)
+   error status the second field is set to zero, and must be ignored.
+   Hence, the status works same way as now except for list of errors.
+   To be included in protocol version 1.1.
+
+ o Define that WHOIS and IDENTIFY commands must send list of errors
+   if multiple Client ID (or Channel ID and Server ID for IDENTIFY) was
+   requested and was not found.  Each unfound entry must cause an error
+   command reply to the sender.  Also define that errors must be sent
+   *after* sending successfully found entries (this way receiver may
+   ignore them).  To be included in protocol version 1.1.
+
 
 TODO After 1.0
 ==============