[fwknop.git] / todo.org
1 * fwknop tasks
2   This is the main todo org mode file for the fwknop project
4    This bucket is for completed tasks.
5 *** [server] ipfw active/expire sets cannot be the same
6     :CLOSED: <2012-08-16 Thu>
7     Add a check to ensure that active and expire sets are not the same value in
8     fwknopd.conf, and add a corresponding test in the test suite.
9 *** Release fwknop-2.0.2
10     :CLOSED: <2012-08-18 Sat>
11     Make the fwknop-2.0.2 release.
12 *** Update fwknopd man page for GPG_ALLOW_NO_PW
13     :CLOSED: <2012-08-14 Tue>
14 *** Preserve existing configs under 'make install'
15     :CLOSED: <2012-08-13 Mon>
16     - The current 'make install' behavior overwrites any existing fwknopd config
17     files from a previous installation.
18     - Updated to install fwknopd.conf -> /etc/fwknop/fwknopd.conf.inst if the
19       fwknopd.conf file already exists, and similarly for the access.conf
20       file.
21 *** fwknopd iptables comment match detection
22     :CLOSED: <2012-08-12 Sun>
23    Hank Leininger suggested that fwknopd do better detection for the iptables
24    comment match since it is required for the expiration of SPA rules.
25 *** Set restrictive permissions on /etc/fwknop/ directory and /etc/fwknop/* files
26     :CLOSED: <2012-08-12 Sun>
27     Current default permissions on /etc/fwknop/ and /etc/fwknop/* are too lax.
28 ** Add 'enable' to ipfw active set at init time
29    Currently fwknopd does not do a check to ensure that the active set is
30    enabled at init time ('ipfw set enable 1').
31 ** Update fwknopd man page to include IPFW* vars
32    None of the ipfw variables are currently documented in the fwknopd man
33    page.
34 ** Use assert() in various places
35    Use assert() to validate expected values wherever possible.
36 ** [server] For Ubuntu systems, have fwknopd managed by upstart
37    fwknopd can benefit from upstart management and monitoring on Ubuntu
38    systems.
39 ** [server] Include files for access.conf
40    Hank Leininger suggested that the main access.conf file have an option to
41    include other files in which access stanzas can be specified.  This makes
42    it easy to wrap additional controls around access information particularly
43    in multi-user environments.
44 ** [test suite] Remove lib check for test suite when running in --enable-recompile mode
45    When creating a release tarball under 'make dist', the test suite performs
46    a check for existing lib/ directory even under --enable-recompile.
47 ** [test suite] SPA packet fuzzer
48    Add a series of patches to the fwknop client that break how it produces SPA
49    data in subtle ways in order to ensure proper validation by fwknopd.
50 ** [test suite] backwards compatibility tests
51    The test suite should have the ability to test backwards compatibility
52    between fwknop versions.
53 ** For Linux/Unix - a GNOME or KDE GUI app for the fwknop client.
54    Although there is currently a functioning web proxy that can serve as a
55    UI via a browser, it would be nice to have native GNOME and KDE GUI
56    wrappers for the fwknop client.
57 ** For Windows - VB and/or C# class wrappers around libfko.dll
58    Extend Windows support with VB and/or C# class wrappers around the
59    libfko.dll
60 ** Ruby bindings to libfko
61    Perl and Python bindings already exist for libfko, so add Ruby to this list
62    as well.
63 ** [client] Update to not send SPA packet if Ctrl-C is used
64    The client currently sends an SPA packet when an encryption key is
65    requested but the user tries to exit out with Ctrl-C.
66 ** Add --disable-gpg arg to the autoconf configure script
67    There needs to be a way to easily disable libgpgme usage even if it is
68    installed - this could be done with a new --disablegpg argument to the
69    configure script.