updates.
[silc.git] / TODO
diff --git a/TODO b/TODO
index cdec708bb5037ed2bf8bd6b07e1fea20860999ab..47181d968fc5dd52a898ae68db82b9109b33df3a 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,33 +1,46 @@
 TODO/bugs in Irssi SILC client
 ==============================
 
- o Add KNOCKOUT local command.  It should kick an client from channel and
-   set a ban for it for number of seconds.
+ o LEAVE does not work correctly, it doesn't leave the channel for real!
 
- o Add KICKBAN local command.  Kicks and bans the specified client.
+ o /KICK does not remove the client from Irssi's NAMES list.
+
+ 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.  Something like LISTKEYS, SHOWKEY...
 
- o Set different kind of settings, like, /set mutual_authentication,
-   /set key_exchange_timeout, /set conn_auth_timeout etc etc.
+ 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 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.
+
+ o Add KNOCKOUT local command.  It should kick an client from channel and
+   set a ban for it for number of seconds.
+
+ o Add KICKBAN local command.  Kicks and bans the specified client.
+
  o Do some /set show_mail_notification that would show a notification
    on screen when new email is received.
 
- 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.
-
 
 TODO/bugs In SILC Client Library
 ================================
 
+ o If the silc_client_channel_message does not find the client entry
+   then it should attempt to resolve it at least once and no return
+   NULL entry to the application.
+
+ o Add some silc_client_del_client and other deletion funtions for
+   application to delete client entrys from the cache.
+
  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
@@ -57,6 +70,9 @@ TODO/bugs In SILC Client Library
 TODO/bugs In SILC Server
 ========================
 
+ o Seems that router does not announce its client to the connecting
+   server when server announces its clients on the channel.
+
  o When server quits and all clients of that server are removed from all
    channels the channel keys are re-generated for all clients.  This is
    a bug and should be done only once per channel after all clients of
@@ -101,6 +117,9 @@ TODO/bugs In SILC Server
 TODO/bugs In SILC Libraries
 ===========================
 
+ o The timeout calculation can go negative at least on BSD, so rewrite
+   in in lib/silcutil/silcschdule.c.
+
  o Incomplete IPv6 support:
 
        o All network routines in lib/silcutil/silcnet.[ch] does not
@@ -128,6 +147,23 @@ 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.
+
 
 TODO After 1.0
 ==============