X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=TODO;h=8f748cfe679f53ee85094c899884ec6e279ad81d;hb=fc83b6ccbcbd697a3afc82cf3d9f4053f0bbadb1;hp=635696411eb9d9fadfc9d1d42d74fee2886ea39f;hpb=087575e2f4248e52d8db5900f757b847e65d9d91;p=silc.git diff --git a/TODO b/TODO index 63569641..8f748cfe 100644 --- a/TODO +++ b/TODO @@ -6,64 +6,95 @@ NOTE: Any item that doesn't have (***DONE) in it, isn't done yet. The tested. -lib/silcclient, The Client Library +SILC Client ****PARTLY DONE**** +=========== + + o Porting to new Toolkit API and new Client Library API (***TESTING NEEDED) + + o Improve help files, especially /cmode, /cumode and /key. + + +lib/silcclient, The Client Library ***PARTLY DONE**** ================================== o silcclient.h clean up and API rewrites. o silcclient_entry.h finishing, all entry relates APIs to this header. - o SilcChannelEntry, SilcServerEntry, SilcChannelUser, allocating, - freeing, finding, etc. rewrite. Also making them reference counted for - multi threads use. + o SilcChannelEntry, SilcServerEntry, SilcChannelUser, allocating, + freeing, finding, etc. rewrite. Also making them reference counted for + multi threads use. (***DONE) + + o Rewrite silc_client_get_clients_by_channel. - o Finish all the missing SILC packet processings, rewrites. + o Rewrite client side WHOIS command (for whois -details). - o The client_notify.c rewrite. + o Finish all the missing SILC packet processings, rewrites. (***DONE) + + o The client_notify.c rewrite. (***TESTING NEEDED) o Resuming to client_register.c (remove client_resume.c) + (***TESTING NEEDED) + + o Rekey rewrite. (***DONE) + + o Remove protocol.[ch]. (***DONE) - o Rekey rewrite. + o File transfer rewrite. (***TESTING NEEDED) - o Remove protocol.[ch]. + o File transfer API documentation. - o File transfer rewrite. + o Connection auth request. (***DONE) - o Starting key exchange directly, rewrite. + o Password auth test, public key auth test. + + o Starting key exchange directly, rewrite. (***DONE) - o Channel messages, channel private keys, channel entires, channel + o Channel messages, channel private keys, channel entires, channel search, etc. rewrite. o For many APIs leave the hash context allocations to the caller instead of using client->sha1hash and client->md5hash, or some kind of thread safe (no locking) concept. - o Password auth test, public key auth test. + o Key agreement rewrite. (***TESTING NEEDED) - o Key agreement rewrite. + o Connecting to remote client (***DONE) - o Connecting to remote client, peer-to-peer private messages + o peer-to-peer private messages o Private message waiting API (in threads) - o client_attrs.c, attributes rewrite. + o client_attrs.c, attributes rewrite. (***TESTING NEEDED) o No SilcBuffer lists back to application in command_reply operations. Convert them all to real lists and/or structures for easier use. + (***DONE) - o Nickname formatting rewrite. + o Nickname formatting rewrite. (***TESTING NEEDED) - o UDP connections. + o UDP connections. (***TESTING NEEDED) - o Remove silc_client_run and silc_client_run_one from calling SilcSchedule. - Leave the scheduling entirely to application. + o in /cmode and /cumode with +r, maybe the public key and private key + could be just some "string", which would then match to "string.pub" and + "string.prv". o All packet waiting timeout tests and error condition tests. -lib/silccore/silcpacket.[ch] ****DONE**** +lib/silcsftp ****DONE**** +============ + + o Porting to use the new util library. (***DONE) + + +lib/silccore/silcpacket.[ch] ****PARTLY DONE**** ============================ + o Implement silc_packet_engine_stop and silc_packet_stream_destroy. + + o Implement ACK packet and packet payload. + o SilcPacketEngine. (***DONE) o New SILC Packet API. (***DONE) @@ -100,20 +131,27 @@ lib/silcskr be. -lib/silcske/silcske.[ch] +lib/silcske/silcske.[ch] ****DONE**** ======================== - o IV Included flag support in SKE (***TESTING NEEDED) + o IV Included flag support in SKE (***DONE) o UDP transport changes; retransmission support by using exponential - backoff algorithm. + backoff algorithm. (***DONE) - o SilcConnAuth header file documentation. + o SilcConnAuth header file documentation. (***DONE) lib/silccrypt ****PARTLY DONE**** ============= + o Implement SILC Public Key Version 2 handling in sign/verify. Implement + Version (V) identifier (***DONE) + + o Add fingerprint to SilcSILCPublicKey and retrieval to silcpk.h. + + o Implement PKCS #1 sign/verify with hash OID. (***TESTING NEEDED) + o Implement the defined SilcDH API. The definition is in lib/silccrypt/silcdh.h. @@ -134,7 +172,7 @@ lib/silccrypt ****PARTLY DONE**** o Add DSS support. - o Cipher optimizations (asm, that this) at least for i386 would be nice. + o Assembler AES (***DONE) o ECDSA and ECDH. @@ -142,6 +180,12 @@ lib/silccrypt ****PARTLY DONE**** lib/silcutil ****PARTLY DONE**** ============ + o The regex code from lib/contrib might compile fine on all platforms. + No need to make it silcutil/unix/ specific. Add them to generic + silcutil.c. + + o Fix universal time decoding (doesn't accept all forms) in silctime.c. + o silc_stringprep to non-allocating version. o Compression routines are missing. The protocol supports packet @@ -156,7 +200,6 @@ lib/silcutil ****PARTLY DONE**** o Silc FD Stream to WIN32 (lib/silcutil/silcfdstream.h) - lib/silcutil/silcbuffer.h ****DONE**** ========================= @@ -169,7 +212,7 @@ lib/silcutil/silcbuffer.h ****DONE**** totally 8 bytes of memory per buffer. (***DONE) -lib/silcutil/silcbuffmt.[ch] ****PARTLY DONE**** +lib/silcutil/silcbuffmt.[ch] ****DONE**** ============================ o SilcStack aware silc_buffer_unformat (***DONE) @@ -205,7 +248,7 @@ lib/silcutil/silcsocketstream.[ch] ****PARTY DONE**** o Test QoS after the changes made to socket stream -lib/silcutil/silcschedule*.[ch] ****DONE**** +lib/silcutil/silcschedule*.[ch] ****PARTLY DONE**** =============================== o Scheduler can be optimized for FD tasks by changing the fd_queue @@ -268,25 +311,6 @@ lib/silcutil/silcnet*, lib/silcutil/*/silc*net* ****PARTLY DONE**** o New network interfaces (***DONE) -lib/silcsftp -============ - - o Porting to use the new util library. - - -lib/silcutil/epoc/* -=================== - - o lib/silcutil/epoc routines missing or not completed. - - o The PKCS#1 also calls global RNG (even though it is not used - currently in SILC, the interface allows its use). - - 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. - - lib/silcmath ============ @@ -311,6 +335,17 @@ lib/silcmath o All utility functions should be made non-allocating ones. +lib/silcutil/symbian/ ****PARTLY DONE**** +===================== + + o lib/silcutil/symbian routines missing or not completed. + (****TESTING NEEDED) + + 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. + + lib/silcasn1 ****PARTLY DONE**** ============