See ChangeLog: Thu Jan 7 18:00:58 CET 1999 Werner Koch
[gnupg.git] / TODO
diff --git a/TODO b/TODO
index e8fabe5..f125491 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,42 +1,60 @@
-
-    * improve iobuf by reading more than one byte at once,
-      this shoud espceially done for the buffer in the chain.
-      Change the buffering to a mbuf like scheme? Need it for PSST anyway.
-    * add a way to difference between errors and eof in the underflow/flush
-      function of iobuf.
+Bugs
+----
+    * clearsig: keep lineendings as they are. Remember that trailings
+      blanks are not hashed.  Funny: pgp263in works fine even with
+      a source file with CR,LF but GnuPG and pgp263in has problems
+      if the clearsign has been created by pgp263ia.
+      Needs more investigation - anyone?
+
+Important
+----------
+    * Check revocation and expire stuff.  PLEASE: THIS MUST BE TESTED!
+
+    * Check calculation of key validity. PLEASE: IT IS IMPORTED THAT
+      THIS GET TESTED.
+
+    * It has been reported that lockfiles are not removed in all cases.
+      cleanup is done with atexit() and all signals trigger exit() -
+      anything wrong with this?  - ah yes: a signal while still in
+      dotlock_make
+
+    * See why we always get this "Hmmm public key lost"
+
+    * print a warning when a revoked/expired secret key is used.
+
+    * Allow the use of a the faked RNG onyl for keys which are
+      flagged as INSECURE.
+
+
+Needed
+------
+    * remove more "Fixmes"
+
+    * Replace Blowfish by Twofish and add the new encrypted packet typ
+      which has a MACing option (append SHA1 hash to the plaintext and
+      encrypt this all) - We need an identifier for Twofish to put this
+      one into the cipher preferences.
+
+    * The -export-dynamic flag to ld works only for FreeBSD 3.0.  It does
+      not exist on FreeBSD's 2.2.x version of ld.
+      Also, on my FreeBSD 2.2-stable box, i simply removed the
+      -Wl,-export-dynamic flag from my Makefile and it linked and seems to
+      be working OK so far.
+
+Minor Bugs
+----------
+
+Nice to have
+------------
+    * preferences of hash algorithms are not yet used.
+    * new menu to delete signatures and list signature in menu
+    * Replace the SIGUSR1 stuff by semaphores to avoid loss of a signal.
+      or use POSIX.4 realtime signals.
+    * add test cases for invalid data (scrambled armor or other random data)
     * add checking of armor trailers
-    * remove all "Fixmes"
-    * speed up the RIPE-MD-160
-    * add signal handling
-    * enable a SIGSEGV handler while using zlib functions
-
-    * complete cipher/cast.c
-    * complete cipher/dsa.c
-
-    * Burn the buffers used by fopen(), or use read(2).
-
-    * bug: g10/trustdb.c#build_sigrecs called to often by do_list_path
-      and remove the bad kludge. Maybe we should put all sigs into the trustdb
-      and mark them as valid/invalid/nopubkey, and how do we check, that
-      we have a self-signature -> put this stuff into a kind of directory
-      record, as it does not belong to the pubkey record?
-
-    * add an option to create a new user id and to reorder the sequence of
-      them, so that the preferred emal address comes first.  We need to
-      add some logic, which guarantees, that only one user-id can be signed by
-      others.  This prevents extensive growing of the public key certificate
-      due to the bad usage of signing every user id.  You get no extra
-      security by key signatures for every user id.  I consider this
-      behaviour of PGP a bug, introduced, becaus PGP does't require a
-      self-signature. New user ids will only have your self signature to bind
-      them to your key and because the user id which is signed by others has
-      also be signed by you, all user-ids are bound together.
-
-    * add an option to re-create a public key from a secret key
-
-    * should we have a simple menu for all the key management options?
-
-    * cleanup mainproc.c, much stuff is duplicated.
+    * Burn the buffers used by fopen(), or use read(2). Does this
+      really make sense?
+    * change the fake_data stuff to mpi_set_opaque
+    * rewrite the ugly armor code.
 
-    * remove key management stuff from sign.c.