* gpgsm.c (main): Set the prefixes for assuan logging.
[gnupg.git] / TODO
diff --git a/TODO b/TODO
index 276582a..eb8e2da 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,83 +1,80 @@
+                                                              -*- outline -*-
 
-    * Check revocation and expire stuff.
+* src/base64
+** Make parsing more robust
+Currently we don't cope with overlong lines in the best way.
 
-    * Check calculation of key validity.
+* sm/call-agent.c
+** The protocol uses an incomplete S-expression
+We should always use valid S-Exp and not just parts.
+** Some code should go into import.c
+** When we allow concurrent service request in gpgsm, we
+might want to have an agent context for each service request
+(i.e. Assuan context).
 
-    * preferences of hash algorithms are not yet used.
+* sm/certreqgen.c
+** Improve error reporting
+** Do some basic checks on the supplied DNs
 
-    * Hash calculation for cleartext sigs without a "Hash: xxx" line
-      does it work as specified in the RFC? - Hmmm, I think so
+* sm/certchain.c
+** When a certificate chain was sucessfully verified, make ephemeral certs used  in this chain permanent.
+** figure out how to auto retrieve a key by serialno+issuer.
+   Dirmngr is currently not able to parse more than the CN.
+** Try all available root certs in case we have several of them in our keybox.
+ For example TC TrustCenter Class 1 CA certs are ambiguous becuase
+ user certs don't come with a authorityKeyIdentifier.
 
-    * Check Berkeley BD - it is in glibc -any licensing problems?
+* sm/decrypt.c
+** replace leading zero in integer hack by a cleaner solution
 
-    * 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"
+* sm/sign.c
+** Don't hardcode the use of RSA.
 
-    * Update the keyring at ftp.guug.de
+* sm/gpgsm.c
+** Support --output
+** mark all unimplemented commands and options.
+** Print a hint when of MD2 is the cause for a problem.
 
-    * check support for mpi/powerpc (see Brian's mail)
+* sm/keydb.c
+** Check file permissions
+** Write a keybox header and check for that magic value.
+** Check that all error code mapping is done.
+** Remove the inter-module dependencies between gpgsm and keybox
+** Add an source_of_key field
 
-    * use zlib 1.1.13 to avoid a bug with 13 bit windows
-      but there are more problems with large files
+* agent/command.c
+** Make sure that secure memory is used where appropriate
 
-    * FreeBSD:
-       #define USE_DYNAMIC_LINKING
-       #define HAVE_DL_DLOPEN
-       and the ld option -export-dynamic.
-      Why does autoconf not figure that out?
+* agent/pkdecrypt.c, agent/pksign.c
+** Don't use stdio to return results.
 
-    * clearsig: keep lineendings as they are. Remember that trailings
-      blanks are not hashed.
+* agent/protect-tool.c
+** Export and import certificates along with the secret key.
+** Make it more comfortable; i.e. copy files to the correct place.
 
-    * Always use the latest key signature (import).  This is needed, so
-      that we are able to chnage the expiration time or other info in the
-      selfsignature
+* Move pkcs-1 encoding into libgcrypt.
 
-    * OpenBSD: dynamic loading with dlopen works on OpenBSD, but:
-       OpenBSD binaries are a.out, so every symbol begins with "_"
+* Use a MAC to protect some files.
 
-    * should we flush the getkey.c caches while doing an import?
+* sm/export.c
+** Return an error code or a status info per user ID.
 
-    * The critical bit of signature subpackets is not yet supported; i.e.
-      it is ignored.
+* scd/apdu.c
+** We need close_reader functionality
 
-    * 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.
+* ALL
+** Return IMPORT_OK status.
 
-    * write a tool to extract selected keys from a file.
+* Where is http.c, regcomp.c, srv.c, w32reg.c  ?
 
-    * new menu to delete signatures and list signature in menu
+* scd/sc-investigate
+** Enhance with card compatibility check
 
-    * -rdynamic auf Solaris Problem
-
-    * Replace the SIGUSR1 stuff by semaphores to avoid loss of a signal.
-
-    * add test cases for invalid data (scrambled armor or other random data)
-
-    * add some sanity checks to read_keyblock, so that we are sure that
-     the minimal requirements are met (?)
-
-    * 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" ;-)
-
-    * add an option to re-create a public key from a secret key; we
-      can do this in trustdb.c:verify_own_keys.
-
-    * change the fake_data stuff to mpi_set_opaque
-
-    * Is it okay to use gettext for the help system?
-
-    * Add some stuff for DU cc
-
-    * Use "user ID", "trustdb", "NOTE" and "WARNING".
+* scd/app-openpgp
+  Do a pre-check to make sure that the minimum length condition of the
+  PINs are satisied - this avoid useless retry counter decrements in
+  case the PIN dialog is accidently hit.
 
+  Must check that the fingerprint used is not the one of the
+  authentication key.  Old GnuPG versions seem to encode the wrong
+  keyID.
\ No newline at end of file