X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=TODO;h=8f748cfe679f53ee85094c899884ec6e279ad81d;hb=fc83b6ccbcbd697a3afc82cf3d9f4053f0bbadb1;hp=9f031d87f12189609d30e94c25b6348580131eb5;hpb=5e8e3a77c70f10a29e78aa645366c84564b8bc7d;p=silc.git diff --git a/TODO b/TODO index 9f031d87..8f748cfe 100644 --- a/TODO +++ b/TODO @@ -6,76 +6,95 @@ NOTE: Any item that doesn't have (***DONE) in it, isn't done yet. The tested. -SILC Client +SILC Client ****PARTLY DONE**** =========== - o Porting to new Toolkit API and new Client Library API + o Porting to new Toolkit API and new Client Library API (***TESTING NEEDED) o Improve help files, especially /cmode, /cumode and /key. - 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". - -lib/silcclient, The Client Library +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 Rewrite client side WHOIS command (for whois -details). - o Finish all the missing SILC packet processings, rewrites. + o Finish all the missing SILC packet processings, rewrites. (***DONE) - o The client_notify.c rewrite. + o The client_notify.c rewrite. (***TESTING NEEDED) o Resuming to client_register.c (remove client_resume.c) + (***TESTING NEEDED) - o Rekey rewrite. + o Rekey rewrite. (***DONE) - o Remove protocol.[ch]. + o Remove protocol.[ch]. (***DONE) - o File transfer rewrite. + o File transfer rewrite. (***TESTING NEEDED) - o Starting key exchange directly, rewrite. + o File transfer API documentation. - o Channel messages, channel private keys, channel entires, channel + o Connection auth request. (***DONE) + + o Password auth test, public key auth test. + + o Starting key exchange directly, rewrite. (***DONE) + + 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) @@ -112,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. @@ -146,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. @@ -154,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 @@ -168,7 +200,6 @@ lib/silcutil ****PARTLY DONE**** o Silc FD Stream to WIN32 (lib/silcutil/silcfdstream.h) - lib/silcutil/silcbuffer.h ****DONE**** ========================= @@ -181,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) @@ -217,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 @@ -280,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 ============ @@ -323,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**** ============