-*- outline -*-
-* src/base64
+* src/base64
** Make parsing more robust
-Currently we don't cope with overlong lines in the best way.
+ 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
+ might want to have an agent context for each service request
+ (i.e. Assuan context).
* 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 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
-** Using --export-secret-key-p12 with a non-pth agent
- This leads to a lockup because gpgsm is still accessing the agent
- while gpg-protect-tool wants to pop up the pinentry. Solution is
- to release the connection. This is not trivial, thus we are going
- to do that while changing gpgsm to allow concurrent operations.
+** support the anyPolicy semantic
+** Should we prefer nonRepudiation certs over plain signing certs?
+ Also: Do we need a way to allow the selection of a qualSig cert
+ over a plain one? The background is that the Telesec cards have 3
+ certs capable of signing all with the same subject name.
* sm/keydb.c
** Check file permissions
** Remove the inter-module dependencies between gpgsm and keybox
** Add an source_of_key field
-* agent/gpg-agent.c
-** A SIGHUP should also restart the scdaemon
- But do this only after all connections terminated.
- As of now we only send a RESET.
+* agent/
+** If we detect that a private key has been deleted
+ Bump the key event counter.
* agent/command.c
** Make sure that secure memory is used where appropriate
* agent/pkdecrypt.c, agent/pksign.c
-** Don't use stdio to return results.
-
-* agent/divert-scd.c
- Remove the agent_reset_scd kludge.
+** Support DSA
* Move pkcs-1 encoding into libgcrypt.
-* Use a MAC to protect some files.
+* 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.
* sm/export.c
** Return an error code or a status info per user ID.
-* Where is http.c, regcomp.c, srv.c, w32reg.c ?
+* common/tlv.c
+ The parse_sexp function 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 reader 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.
+** Resolve fixme in do_sign of app-dinsig.
+** Disconnect
+ Card timeout is currently used as a boolean.
+ Add disconnect support for the ccid driver.
+
+* Regression tests
+** Add a regression test to check the extkeyusage.
+
+* Windows port (W32)
+** Regex support is disabled
+ We need to adjust the test to find the regex we have anyway in
+ gpg4win. Is that regex compatible to the OpenPGP requirement?
+
+
+* 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/
+** Try to remove all jnlib_xmalloc.
+
+* g10/
+** issue a NO_SECKEY xxxx if a -u key was not found.
+
+* Extend selinux support to other modules
+ See also http://etbe.coker.com.au/2008/06/06/se-linux-support-gpg/
+
+* UTF-8 specific TODOs
+ None.
+
+* Manual
+** Document all gpgsm options.
+
+
+* Pinpad Reader
+ We do not yet support P15 applications. The trivial thing using
+ ASCII characters will be easy to implement but the other cases need
+ some more work.
+
+* Bugs
-* scd/sc-investigate
-** Enhance with card compatibility check
-* 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.
+* Howtos
+** Migrate OpenPGP keys to another system
-** Add a test to check the extkeyusage.
+* Gpg-Agent Locale
+ Although we pass LC_MESSAGE from gpgsm et al. to Pinentry, this has
+ only an effect on the stock GTK strings (e.g. "OK") and not on any
+ strings gpg-agent generates and passes to Pinentry. This defeats
+ our design goal to allow changing the locale without changing
+ gpg-agent's default locale (e.g. by the command updatestartuptty).
+* RFC 4387: Operational Protocols: Certificate Store Access via HTTP
+ Do we support this?