Merged from silc_1_0_branch.
[silc.git] / TODO-1.0
index 2bd59736811e79e5a9d62863f3ce5f2e62b77c86..b3f341265de848319fbd4489974af063d0d30766 100644 (file)
--- a/TODO-1.0
+++ b/TODO-1.0
@@ -31,6 +31,14 @@ least could be done.
  o OpenPGP certificate support, allowing the use of PGP public keys
    in SILC.
 
+ o SILC PKCS (silcpkcs.h) reorganizing when other PK supports added.
+   Move the SILC Public Key routines away from the crypto library into
+   the core library (silccore).  silc_pkcs_public/private_key_* routines
+   to silc_public/private_key_* routines.  The silc_public_key_* routines
+   should also automatically handle SILC Public Keys, and other keys
+   and certificates as well.  Add fe. silcpk.h into silccore.  It should
+   also include the Public Key Payload encoding and decoding routines.
+
  o Compression routines are missing.  The protocol supports packet
    compression thus it must be implemented.  SILC Zip API must be
    defined.
@@ -116,6 +124,8 @@ least could be done.
          SIGNOFF of notify at all (using SIGNOFF takes the idea about
          SERVER_SIGNOFF away entirely).
 
+       o See also ~/silcserver
+
  o Add SilcAsyncOperation to utility library.  Any function that takes
    callback as an argument must/should return SilcAsyncOperation (see 
    ~/silcasync).
@@ -142,6 +152,13 @@ least could be done.
    SILC currently supports SOCKS4 and SOCKS5 but it needs to be compiled
    in separately.
 
+ 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
+   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 (Fix this to 0.9.x).
+
  o EPOC specific additions/changes required:
 
        o lib/silcutil/epoc routines missing or not completed.
@@ -152,3 +169,6 @@ least could be done.
        o Something needs to be thought to the logging globals as well, 
          like silc_debug etc.  They won't work on EPOC.  Perhaps logging
          and debugging is to be disabled on EPOC.
+
+ o Check whether we can fully comply with RFC 2779.
+