e1dbfb29b96efb53e10927a32fd09f705eaefb52
[gnupg.git] / TODO
1 Bugs
2 ----
3     * clearsig: keep lineendings as they are. Remember that trailings
4       blanks are not hashed.  Funny: pgp263in works fine even with
5       a source file with CR,LF but GnuPG and pgp263in has problems
6       if the clearsign has been created by pgp263ia.
7       Needs more investigation - anyone?
8
9     * clearsign bug Greg Troxel Jan 11.
10
11     * README does not verify okay. verify inserts an extra CR,LF
12       just before "Esoteric Command" (after ~8k of text).
13
14 Important
15 ----------
16     * replace gettext by a non exploitable one.
17
18     * Check revocation and expire stuff.  PLEASE: THIS MUST BE TESTED!
19
20     * Check calculation of key validity. PLEASE: IT IS IMPORTED THAT
21       THIS GET TESTED.
22
23     * See why we always get this "Hmmm public key lost"
24
25     * print a warning when a revoked/expired secret key is used.
26
27 Needed
28 ------
29     * remove more "Fixmes"
30
31     * Replace Blowfish by Twofish and add the new encrypted packet type
32       which has a MACing option (append SHA1 hash to the plaintext and
33       encrypt this all) - We need an identifier for Twofish to put this
34       one into the cipher preferences.
35
36     * The -export-dynamic flag to ld works only for FreeBSD 3.0.  It does
37       not exist on FreeBSD's 2.2.x version of ld.
38       Also, on my FreeBSD 2.2-stable box, i simply removed the
39       -Wl,-export-dynamic flag from my Makefile and it linked and seems to
40       be working OK so far.
41
42     * Use capabilities if available.
43
44
45 Minor Bugs
46 ----------
47
48     * There is a race condition which leaves lock files after process
49       termination (a signal while in make_dotlock).  Change the dotlock
50       implementaion to a create handle, make and release implemenation
51       and use an atexit to cleanup all pending locks.  This is also
52       faster.
53
54 Nice to have
55 ------------
56     * preferences of hash algorithms are not yet used.
57     * new menu to delete signatures and list signature in menu
58     * Replace the SIGUSR1 stuff by semaphores to avoid loss of a signal.
59       or use POSIX.4 realtime signals.
60     * add test cases for invalid data (scrambled armor or other random data)
61     * add checking of armor trailers
62     * Burn the buffers used by fopen(), or use read(2). Does this
63       really make sense?
64     * change the fake_data stuff to mpi_set_opaque
65     * How about letting something like 'gpg --version -v', list the
66       effective options. Too much work.
67     * Stats about used random numbers.
68
69