updates.
[silc.git] / TODO
diff --git a/TODO b/TODO
index 56d4abfeba1e97f11eb83a3b378c717ba469ecf3..25f39441d4899195b8aee07e0236262e96d7ba0f 100644 (file)
--- a/TODO
+++ b/TODO
@@ -14,6 +14,8 @@ TODO/bugs In SILC Client Library
    set the key only if application wishes to set (accept the key) it
    (Do this to 1.0).
 
+ o Remove conn->current_channel.
+
  o Additions to do after protocol version 1.1:
 
        o Add support for list of errors in command replies.  Protocol
@@ -104,18 +106,6 @@ Current protocol version is 1.0.  However, it is far from being perfect,
 and needs to include additional features.  Following protocol TODO entries
 describe new stuff to be added to protocol versions 1.x.
 
- 1. 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.
-
  2. 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
@@ -133,27 +123,25 @@ describe new stuff to be added to protocol versions 1.x.
     new features without always making the command incompatible to previous
     version.  To be included in protocol version 1.1.
 
- 5. Inviting and banning by public key should be made possible.  To be
-    included in protocol version 1.x.
+ 17. Cell wide channel founder support, and permanent channels when
+     founder mode set.
 
- 7. Channel Message Payload needs slight redesining to include the IV
-    field to the MAC generation of the payload.  It is authenticated
-    by the packet's MAC but not by the payload's MAC.  Since the IV
-    belongs to the payload, its integrity should be protected by the
-    payload MAC and not alone by packet MAC.  To be included in protocol 
-    version 1.1.
+ 20. Services support?
 
- 11. Change the wording in Private Message Key Payload definition to
-     describe the problems of trusting the payload, and to indicate that
-     the receiver may not accept the key in the payload, and to describe
-     other means of distributing a key.
+ 21. Subscription/IRC's notify kind support?
 
- 16. Add STATS command after all to the protocol for providing practically
-     same information client gets when connects to a server.  Normal
-     server would send this to router always when received from client.
+ 22. Session detachment/resume?
 
- 17. Cell wide channel founder support, and permanent channels when
-     founder mode set.
+ o Inviting and banning by public key should be made possible.  To be
+   included in protocol version 1.2.
 
- 18. UTF-8 requirement checkings for all specifications, when strings
-     are sent.
+ o UTF-8 support/requirement for nicknames & channel names.  UTF-8 support
+   in terminals and OS's are so hazy that this matter is left for
+   consideration in next version of the protocol (1.2).  For good UTF-8
+   reference and tutorial see: http://www.cl.cam.ac.uk/~mgk25/unicode.html.
+   What should CLI application do if it receives nickname that it cannot
+   display without messing up the terminal?  If UTF-8 is mandatory in
+   SILC then SILC clients cannot be allowed to start on terminals that do
+   not support UTF-8 (which renders 98% of users unable to use CLI SILC
+   app without hacking their environment).  See also site
+   http://gratrix.net/unicode/