See ChangeLog: Sun Jan 3 15:28:44 CET 1999 Werner Koch
[gnupg.git] / TODO
diff --git a/TODO b/TODO
index b1a7313..4bae8a9 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,37 +1,53 @@
+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?
 
-    * add assembler support for more CPUs. (work, but easy)
-    * improve iobuf by reading more than one byte at once,
-      this shoud espceially done for the buffer in the chain.
-    * add a way to difference between errors and eof in the underflow/flush
-      function of iobuf.
-    * check that all output is filtered when displayed.
+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.
+
+    * display trhe primary keyID in passphrase.c in addition to the
+      one for the requested key.
+
+
+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.
+
+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
-    * look for a way to reuse RSA signatures
-    * remove all "Fixmes"
-    * speed up the RIPE-MD-160
-    * add signal handling
-    * enable a SIGSEGV handler while using zlib functions
-
-    * PGP writes the signature and then the file, this is not
-      a good idea, we can't write such files if we take input from stdin.
-      So the solution will: accept such packet, but write
-      signature the corret way: first the data and then the signature[s]
-      this is much easier to check, also we must read the entire data
-      before we can check wether we have the pubkey or not.  The one-pass
-      signature packets should be implemented to avoid this.
-
-    * complete cipher/cast.c
-    * complete cipher/dsa.c
-
-    * armor has now some problems.
-
-    * add g10 stuff to Mutt's pgpinvoke.c
-
-    * Burn the buffers used by fopen().
-
-    * 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?
+    * 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.