Make it also work for the card.
[gnupg.git] / TODO
diff --git a/TODO b/TODO
index 32b7285..c43aabe 100644 (file)
--- a/TODO
+++ b/TODO
@@ -3,30 +3,25 @@
 * src/base64
 ** Make parsing more robust
 Currently we don't cope with overlong lines in the best way.
+** Check that we really release the ksba reader/writer objects.
 
 * 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).
 
-* sm/certreqgen.c
-** Improve error reporting
-** Do some basic checks on the supplied DNs
-
 * sm/certchain.c
 ** When a certificate chain was sucessfully verified, make ephemeral certs used  in this chain permanent.
-
+** Try to keep certificate references somewhere
+  This will help with some of our caching code.  We also need to test
+  that caching; in particular "regtp_ca_chainlen".
 
 * sm/decrypt.c
 ** replace leading zero in integer hack by a cleaner solution
 
 * sm/gpgsm.c
-** Support --output for all commands
 ** mark all unimplemented commands and options.
-** Print a hint when MD2 is the cause for a problem.
 ** Implement --default-key
 ** support the anyPolicy semantic
 ** Check that we are really following the verification procedures in rfc3280.
@@ -68,22 +63,14 @@ might want to have an agent context for each service request
   Using the session_list in command.c and the lock_table in app.c.  IT
   would be better to do this just at one place. First we need to see
   how we can support cards with multiple applications.
-   
-* tests
-** Makefile.am
-  We use printf(1) to setup the library path, this is not portable.
-  Furthermore LD_LIBRARY_PATH is not used on all systems.  It doesn't
-  matter for now, because we use some GNU/*BSDish features anyway.
+** Detecting a removed card works only after the ticker detected it.
+ We should check the card status in open-card to make this smoother.
+ Needs to be integrated with the status file update, though.  It is
+ not a real problem because application will get a card removed status
+ and should the send a reset to try solving the problem.
 
 ** Add a test to check the extkeyusage.
 
-* doc/
-** Explain how to setup a root CA key as trusted
-** Explain how trustlist.txt might be managed.
-** Write a script to generate man pages from texi.
-   In progress (yatm)
-
-
 * Windows port
 ** gpgsm's LISTKEYS does not yet work
     Fix is to change everything to libestream
@@ -91,7 +78,29 @@ might want to have an agent context for each service request
     This means we can't reread a configuration
 ** No card status notifications.
 
+* sm/
+** check that we issue NO_SECKEY xxx if a -u key was not found
+   We don't. The messages returned are also wrong (recipient vs. signer).
+
+* jnlib/
+** provide jnlib_malloc and try to remove all jnlib_xmalloc.
 
+* g10/
+** issue a NO_SECKEY xxxx if a -u key was not found.
+** qbits
+   We pass a new qbit parameter to genkey - implement this in libgcrypt.
 
-* sm/
-** --include-certs is as of now still a dummy command line option
+* When switching to libgcrypt 1.3
+** scd#encode_md_for_card, g10#encode_md_value, sm@do_encode_md
+   Remove the extra test for a valid algorithm as libgcrypt will do it
+   then in gcry_md_algo_info.
+** skclist.c
+   Remove the hard coded constant in random_is_faked.
+** g10/ Replace DIGEST_ALGO_SHA224
+   We can't do that right now because it is only defined by newer
+   versions of libgcrypt. 
+
+
+* Extend selinux support to other modules
+
+* Remove -sat PGP2 compatibility hack