* cryptmiss.c: New.
[gnupg.git] / TODO
diff --git a/TODO b/TODO
index 96dcaab..30e27e7 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,49 +1,83 @@
 
-    * Check revocation and expire stuff.  PLEASE: THIS MUST BE TESTED!
-
-    * Escape "From "
-
-    * Check calculation of key validity. PLEASE: IT IS IMPORTED THAT
-      THIS GET TESTED.
-
-    * preferences of hash algorithms are not yet used.
-
-    * I noticed, that we sometimes have only 3 items in a trustrecord, but
-      a next pointer ro more records - check wehther the reuse code really
-      works. Maybe this is the reason for the "Hmmm public key lost"
-
-    * clearsig: keep lineendings as they are. Remember that trailings
-      blanks are not hashed.
-
-    * should we flush the getkey.c caches while doing an import?
-
-    * We need a maintainence pass over the trustdb which flags
-      signatures as expired if the key used to make the signature has
-      expired. Maybe it is a good idea to store the exiration time
-      in the key record of the trustdb.
-
-    * write a tool to extract selected keys from a file.
-
-    * 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)
-
-    * rewrite --list-packets or put it into another tool.
-
-    * Burn the buffers used by fopen(), or use read(2). Does this
-      really make sense?
-
-    * Change the buffering to a mbuf like scheme? Need it for PSST anyway;
-      see Michael's proposal.
-    * add checking of armor trailers
-    * remove all "Fixmes" ;-)
-
-    * change the fake_data stuff to mpi_set_opaque
-
-    * Replace Blowfish by Twofish
-
-    * Work on the library
+  * Look at FEATURES packet to decide wether to use MDC.  We should
+    rethink the whole preference implementation and drop that ugly hamehash
+    stuff.  Is it possible to that in getkey?  We have to see whether we
+    realy lookit up by user name or whethre there is a double lookup,
+    first by userid and then later by keyid - which is bad.
+
+  * options.skel wird mit umask von root installiert.
+
+  * See how we can handle the symlinks in ./gcrypt
+
+  * Add SIGSEGV handler to overcome zlib problems with truncated data.
+
+  * Use --output for keylistings too.
+
+  * Never allocate packet memory with a m-alloc, but use a specific function.
+
+  * Should we change names like mpi_write in g10/ so that we don't
+    use the prefix mpi here?
+
+  * Implement the AXP syscall to enable bus traps for GLIB 2
+
+  * parse a paramter file to do automatic key generation and to set
+    parameters for the keygen menu.  Far easier than to do a dialog for
+    each required parameter.
+
+  * With option -i prompt before adding a key to the keyring and show some
+    info what we are about to add.
+
+  * Speed up calculation of key validation.
+
+  * --disable-asm should still assemble _udiv_qrnnd when needed
+
+  * Skip RO keyrings when importing a key.
+
+  * Use the newest encryption key if only the main key has been given.
+
+  * replace the keyserver stuff either by a call to a specialized
+    utility and SOCKSify this utility.
+
+  * Check the beginning of file to detect already compressed files (gzip,
+    bzip2, xdelta and some picture formats)
+
+  * Delay the read of the passphrase-fd afte a NEED_PASSPHRASE.  But this
+    may break some scripts.
+
+  * as soon as we have moved to KBX, we can check signatures at all places
+  because there is no perfomance drawback as we can store the result of
+  a verification in the KBX.  This enable us to better print information on
+  revoked user IDs and signatures. Well, caching of non-self-signatures
+  will still be complicated.
+
+
+Nice to have
+------------
+  * Official test vectors for 3DES-EDE3
+  * use DEL and ^H for erasing the previous character (util/ttyio.c).
+    or better readline.
+  * Print a warning if the directory mode is wrong.
+  * Do a real fix for bug #7 or document that it is a PGP 5 error.
+  * preferences of hash algorithms are not yet used.
+  * Replace the SIGUSR1 stuff by semaphores to avoid loss of a signal.
+    or use POSIX.4 realtime signals.  Overhaul the interface and the
+    test program.  Use it with the test suite?
+  * add test cases for invalid data (scrambled armor or other random data)
+  * add checking of armor trailers
+  * Burn the buffers used by fopen(), or use read(2). Does this
+    really make sense? And while we are at it:  implement a secure deletion
+    stuff?
+  * the pubkey encrypt functions should do some sanity checks.
+  * dynload: implement the hint stuff.
+  * "gpg filename.tar.gz.asc" should work like --verify (-sab).
+  * for messages created with "-t", it might make sense to append the
+    verification status of the message to the output (i.e. write something to
+    the --output file and not only to stderr.
+  * configure option where to find zlib
+  * Display more validity information about the user IDs at certain places.
+    We need a more general function to extract such kind of info from the
+    trustdb.
+  * Evaluate whether it make sense to replace the namehashs either by
+    using the user ID directly or by using pointers into the trustdb.
+  * --gen-prime may trigger a log_bug; should be a log_fatal.