+ -*- outline -*-
- * add some status output put for signing and encryption.
- replace the putc in primegen with some kind of status-fd outputs.
+* src/base64
+** Make parsing more robust
+Currently we don't cope with overlong lines in the best way.
- * Fix revocation and expire stuff.
+* 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).
- * Check calculation of key validity.
+* sm/certreqgen.c
+** Improve error reporting
+** Do some basic checks on the supplied DNs
- * See why we always get this "Hmmm, public key not anymore available"
+* sm/certchain.c
+** When a certificate chain was sucessfully verified, make ephemeral certs used in this chain permanent.
- * print a warning when a revoked/expired secret key is used.
- * remove more "Fixmes"
+* sm/decrypt.c
+** replace leading zero in integer hack by a cleaner solution
- * Use capabilities if available. glibc2 does not support it yet?
- What about 2.2 or should we use the system calls directly?
+* 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.
+** Implement a --card-status command.
+ This is useful to check whether a card is supported at all.
- * when decryptiong multiple key: print a warning only if no usable pubkey
- encrypt package was found. Extension: display a list of all recipients.
- * Add NO_PUBKEY and NO_SECKEY status lines.
- * Add more NODATA status lines
+* sm/keydb.c
+** Check file permissions
+** Check that all error code mapping is done.
+** Remove the inter-module dependencies between gpgsm and keybox
+** Add an source_of_key field
- * Solaris make has problems with the generated POTFILES - seems to be a
- gettext bug.
+* agent/command.c
+** Make sure that secure memory is used where appropriate
- * cvs -d :pserver:anoncvs@anoncvs.gnu.org:/gd/gnu/anoncvsroot co common
+* agent/pkdecrypt.c, agent/pksign.c
+** Don't use stdio to return results.
+** Support DSA
+* Move pkcs-1 encoding into libgcrypt.
+* Use a MAC to protect sensitive files.
+ The problem here is that we need yet another key and it is unlikely
+ that users are willing to remember that key too. It is possible to
+ do this with a smartcard, though.
-Nice to have
-------------
- * Offcial test vectors for 3DES-EDE3
- * use DEL and ^H for erasing the previous character (util/ttyio.c).
- * Print a warning if the directory mode is wrong.
- * replace the keyserver stuff either by a call to a specialized
- utility or SOCKSify the stuff.
- * Do a real fix for bug #7 or document that it is a PGP 5 error.
- * clearsig: Keep lineendings while writing the output of a clearsig
- * 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. 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?
- * change the fake_data stuff to mpi_set_opaque
- * Stats about used random numbers.
- * the pubkey encrypt functions should do some sanity checks.
- * dynload: implement the hint stuff.
+* sm/export.c
+** Return an error code or a status info per user ID.
+* scd/tlv.c
+ The parse_sexp fucntion should not go into this file. Check whether
+ we can change all S-expression handling code to make use of this
+ function.
+
+* scd
+** Application context vs. reader slot
+ We have 2 concurrent method of tracking whether a read is in use:
+ 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.
+
+** 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
+** Signals are not support
+ This means we can't reread a configuration
+** No card status notifications.
+
+
+
+* sm/
+** --include-certs is as of now still a dummy command line option