updates.
[silc.git] / TODO
diff --git a/TODO b/TODO
index 2e7dd511a4d9c0334966e7b6dfc5ce41f212cd62..283d1db52dc99816901d8236f8a68eb2cfd7ec45 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,19 +1,56 @@
-TODO/bugs In SILC Client Library
-================================
+TODO/bugs in Irssi SILC client
+==============================
+
+ o Do not let irssi update the status bar on JOIN until the join command
+   is successful, so that it does not update that I'm on the channel
+   even though I could not join the channel.
+
+ o The CMODE notify handling in client library may return NULL
+   client entry pointer to the application (when server was the CMODE's
+   executor).  Fix this somehow.
+
+ o Add PERL scripting support from Irssi CVS.
 
  o Add local commands to list the current server and client public keys
    that the user has.  And a local command to dump the contents of the
-   public key to the screen.
+   public key to the screen.  Something like LISTKEYS, SHOWKEY...
+
+ o We should get rid of the clientconfig.[ch] in Irssi SILC and move the
+   cipher, hash, hmac and pkcs configuration to the Irssi SILC's config
+   file.
 
- o Add client library parameters or options that handle what kind of
-   messages the library should print out (using `say' client operation,
-   for example) and what is left for the application to print.  The
-   appliation could for example set that it handles all command printing
-   but all error printing should be handled by the library, etc...
-   This is not a showstopper.
+ o Extend the /HELP command to support sub commands or something.  So
+   that user can say /help set mutual_authentication they would get
+   help of the mutual_authentication setting.
+
+ o Set different kind of settings, like, /set mutual_authentication,
+   /set key_exchange_timeout, /set conn_auth_timeout etc etc.
+
+
+TODO/bugs In SILC Client Library
+================================
 
- o Input line on UI is buggy.  Cursor movement etc bugs.  Too lazy to
-   fix it.
+ o Library should save the cumode and not start from 0 everytime then
+   CUMODE is issued.  A mechanism of getting the channel entry for
+   CMODE and CUMODE by the command reply identifier must be added.
+   Otherwise saving the modes for the channels and channel user
+   entries are impossible since server does not send Channel ID as
+   command reply in these functions.
+
+ o All protocol execution timeouts are hard coded. They should be 
+   configurable and the Irssi SILC client should be able to set them
+   with for example /set key_exchange_timeout etc.  The silc_client_alloc
+   should take a Params structure or something as argument.
+
+ o silc_client_close_connection leaks memory.  Read the XXX from code.
+
+ o The client library must manage somehow when receiving client that has
+   same nickname, same server, same username but different Client ID than
+   what we have in the cache.  It is now assumed that they are different
+   client but it might not be.  It should at least number the clients
+   using the client->num so that they can be accessed from the user
+   interface separately or it could just remove the old client unless
+   it is on some channels.
 
 
 TODO/bugs In SILC Server
@@ -90,6 +127,28 @@ TODO/bugs In SILC Libraries
    only cosmetic changes but at some point must be done to make the
    payload interfaces consistent.
 
+ o Add builtin SOCKS and HTTP Proxy support, well the SOCKS at least.
+   SILC currently supports SOCKS4 and SOCKS5 but it needs to be compiled
+   in separately.
+
+
+TODO In SILC Protocol
+=====================
+
+ o pp-03 draft:
+
+       o Add SILC_MESSAGE_FLAG_SIGNED flag that indicates that the
+         messages is signed with the senders private key and thus can
+         be verified with its public key.  This is especially handy
+         feature when sending privat messages without having negotiated
+         private keys, thus the servers decrypts and re-ecnrypts the
+         messages.  Other applications exists as well.
+
+ o If channel founder mode is set and the invite mode is set on channel
+   then the founder should be added to the list automatically so that
+   if the founder signoff's it will be able join again to the invite only
+   channel wihtout being invited.
+
 
 TODO After 1.0
 ==============
@@ -121,6 +180,8 @@ TODO After 1.0
    to start writing one myself.  Anyhow, the OpenSSL X.509 lib should
    be checked.
 
+   Other package that should be checked is the NSS's X509 library.
+
  o SSH2 public keys support.  Maybe - not really needed but could be
    nice as SSH is widely used all over the place.  SILC Protocol 
    supports SSH2 public keys.