New silcconfig library and server parser. Merged silc-newconfig-final.patch.
[silc.git] / TODO
diff --git a/TODO b/TODO
index 86912a7815949a08541bdaf0d82fb46c1f28ea1c..9fa07e40695668de2939466594ca5f61c4df60b9 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,10 @@
 TODO/bugs in Irssi SILC client
 ==============================
 
+ o Rewrite the notify handling in the new Irssi SILC client.
+
+ o /cumode for unknown nick does not give any error message.
+
  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
@@ -13,19 +17,6 @@ TODO/bugs in Irssi SILC client
    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 Add PERL scripting support from Irssi CVS.
-
- 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
 ================================
@@ -48,16 +39,22 @@ TODO/bugs In SILC Client Library
 TODO/bugs In SILC Server
 ========================
 
- o The router should check for validity of received notify packets from
-   servers (after all buggy servers may send notify that is actually
-   something that should have not been sent).
+ o Assure that server is allowed to connect only once to router.  Meaning
+   if server connection is established already, same connection cannot be
+   established again.
 
- o Add hashed passwords to silcd.conf file.
+ o If server send CUMODE_CHANGE notify (like setting founder) to router
+   and router does not have founder on channel (founder is left or there's
+   no founder on channel at all), the router will accept the server's
+   founder mode change, even though it perhaps should not do that.
 
- o Backup router related issues
+ o Make the normal server save user counts with LIST command reply.
 
-       o Channel user mode changes are notified unnecessarely when
-         switching to backup router on router crash.
+ o Add hashed passwords to silcd.conf file.
+
+ o The router should check for validity of received notify packets from
+   servers (after all buggy servers may send notify that is actually
+   something that should have not been sent).
 
  o Add a timeout to handling incoming JOIN commands.  It should be 
    enforced that JOIN command is executed only once in a second or two
@@ -66,8 +63,12 @@ TODO/bugs In SILC Server
    each JOIN command will create and distribute the new channel key
    to everybody on the channel.
 
- o New configuration file format must be added.  The new one will be
-   done using the dotconf config library (lib/dotconf).  The following
+ o Backup router related issues
+
+       o Channel user mode changes are notified unnecessarely when
+         switching to backup router on router crash.
+
+ o New configuration file format must be added.  The following
    tasks relates closely to this as well and must be done at the same time
    when adding the new config file format:
 
@@ -98,6 +99,35 @@ TODO/bugs In SILC Libraries
  o Rewrite the lib/silcsim/silcsim.h.  The SilcSimContext should be
    private and silc_sim_alloc should take necessary arguments.
 
+ o lib/silcsftp/sftp_fs_memory.c use directly open(), close() etc. 
+   routines.  Change to use silc_file_* routines.
+
+ o SILC RNG does not implement random seed files, and they should be
+   implemented.
+
+
+TODO in Toolkit Documentation
+=============================
+
+Stuff that needs to be done in order to complete the Tooolkit Reference
+Manual.
+
+ o Lots of ROBOdoc header formatting is undone in lib/silcske, 
+   lib/silcutil, and lib/silccrypt.
+
+ o Write "Programming with Toolkit" document, describing how to build
+   Toolkit, how the build system works, where is everything, how
+   new (external) projects can be glued into Toolkit (use irssi as an
+   example), and how external projects can use Toolkit without gluing into
+   it (how to link etc).
+
+ o Write "Programming conventions" document to describe the coding
+   and naming conventions used in the Toolkit (should not be 
+   actually the CodingStyle document, but something more general).
+
+ o Move the lib/silccrypt/silcrng.h's "how the RNG works" documentation
+   to its own html file and link it to the reference manual.
+
 
 TODO in SILC Protocol
 =====================
@@ -306,7 +336,10 @@ least could be done.
          SIGNOFF of notify at all (using SIGNOFF takes the idea about
          SERVER_SIGNOFF away entirely).
 
- o Add SilcAsyncOperation to utility library.
+ o Add SilcAsyncOperation to utility library.  Any function that takes
+   callback as an argument must return SilcAsyncOperation.
+
+ o Add DSS support.
 
  o Cipher optimizations (asm, that this) at least for i386 would be nice.