updates.
[silc.git] / TODO
diff --git a/TODO b/TODO
index b6c1447d4f20b558a408eecb4ade3fc92af00137..cc5fc769a559e397fee0dbfc0528d3ca0eb3f862 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,14 +1,28 @@
 TODO/bugs in Irssi SILC client
 ==============================
 
- 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 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
+   user.
 
  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.  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 The QUIT command should wait for servers disconnection (at least for
+   a while) before exiting the application.
+
+ o The JOIN command's HELP is generated from Irssi IRCs JOIN help and
+   the syntax is not same in SILC.  This must be fixed.
+
+ o With USERS command to a channel user is not joined the name of the
+   channel is printed as garbled.
+
  o Add PERL scripting support from Irssi CVS.
 
  o Extend the /HELP command to support sub commands or something.  So
@@ -22,25 +36,21 @@ TODO/bugs in Irssi SILC client
 TODO/bugs In SILC Client Library
 ================================
 
- 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 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.
-
- o silc_client_close_connection leaks memory.  Read the XXX from code.
+ o JOIN command's argument handling is buggy.  See the XXX in the code.
 
 
 TODO/bugs In SILC Server
 ========================
 
+ o Add perhaps /var/run/silcd.pid for PID information for the server.
+
+ o Add a timeout to handling incmoing JOIN commands.  It should be 
+   enforced that JOIN command is executed only once in a second or two
+   seconds.  Now it is possible to accept n incoming JOIN commands
+   and process them without any timeouts.  THis must be employed because
+   each JOIN command will create and distribute the new channel key
+   to everybody on the channel.
+
  o Incomplete IPv6 support:
 
        o silcd/serverid.c and its routines supports only IPv4.
@@ -71,12 +81,7 @@ TODO/bugs In SILC Server
 TODO/bugs In SILC Libraries
 ===========================
 
- o Incomplete IPv6 support:
-
-       o All network routines in lib/silcutil/silcnet.[ch] does not
-         support IPv6.
-       o silc_id_render supports only IPv4 based ID's in the file
-         lib/silcutil/silcutil.c.
+ o Some ./prepare problems with latest autoconf and automake.
 
  o Compression routines are missing.  The protocol supports packet
    compression thus it must be implemented.  SILC Comp API must be
@@ -95,11 +100,25 @@ TODO/bugs In SILC Libraries
    only cosmetic changes but at some point must be done to make the
    payload interfaces consistent.
 
+ o Incomplete IPv6 support:
+
+       o All network routines in lib/silcutil/silcnet.[ch] does not
+         support IPv6.
+       o silc_id_render supports only IPv4 based ID's in the file
+         lib/silcutil/silcutil.c.
+
  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/Bugs in native WIN32 support (libraries)
+=============================================
+
+ o silc_net_create_connection_async does not work the same way than on
+   Unix.  Do it with threads on WIN32.
+
+
 TODO In SILC Protocol
 =====================