/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to TODO

removed * [[http://en.tldp.org/HOWTO/Software-Release-Practice-HOWTO/][Software Release Practice HOWTO]]

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
3
 
* mandos-client
4
 
** TODO [#C] IPv4 support
5
 
 
6
 
* plugin-runner
7
 
** TODO [#B] use scandir(3) instead of readdir(3)
8
 
 
9
 
* mandos (server)
10
 
** TODO [#B] Log level                          :bugs:
11
 
** TODO /etc/mandos/clients.d/*.conf
 
3
* [#A] README file
 
4
 
 
5
* [#A] COPYING file
 
6
  [[file:/usr/share/common-licenses/GPL-3][GPLv3]]
 
7
 
 
8
* Mandos-client
 
9
** [#A] Man page: man8/mandos-client.8mandos
 
10
** [#B] Fix %d format strings to use [[https://secure.wikimedia.org/wikipedia/en/wiki/Inttypes.h][<inttypes.h>]]
 
11
** use strsep instead of strtok?
 
12
** use config file in addition to arguments
 
13
** pass things in environment, like device name, etc
 
14
 
 
15
* Password-request
 
16
** [#A] Man page: man8/password-request.8mandos
 
17
** [#B] Fix %d format strings to use [[https://secure.wikimedia.org/wikipedia/en/wiki/Inttypes.h][<inttypes.h>]]
 
18
** start_mandos_communication: loop around gnutls_handshake
 
19
   [[info:gnutls.info.gz:Core%20functions][gnutls_handshake]]
 
20
** IPv4 support
 
21
** use strsep instead of strtok?
 
22
** Do not depend on GPG key rings on disk
 
23
   This would mean creating new GPG key rings with GPGME by importing
 
24
   the key files from scratch on every program start.
 
25
 
 
26
* Password-prompt
 
27
** [#A] Man page: man8/password-prompt.8mandos
 
28
** Use getpass(3)?
 
29
   Man page says "obsolete", but [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
 
30
   does not.  See also [[http://sources.redhat.com/ml/libc-alpha/2003-05/msg00251.html][Marcus Brinkmann: Re: getpass obsolete?]] and
 
31
   [[http://article.gmane.org/gmane.comp.lib.glibc.alpha/4906][Petter Reinholdtsen: Re: getpass obsolete?]], and especially also
 
32
   [[http://www.steve.org.uk/Reference/Unix/faq_4.html#SEC48][Unix Programming FAQ 3.1 How can I make my program not echo input?]]
 
33
 
 
34
* Server
 
35
** [#A] Command man page: man8/mandos.8
 
36
** [#A] Config file man page: man5/mandos.conf (mandos.conf)
 
37
** [#A] Config file man page: man5/mandos-clients.conf (clients.conf)
 
38
** [#A] /etc/init.d/mandos-server               :teddy:
 
39
** Log level
 
40
** /etc/mandos/clients.d/*.conf
12
41
   Watch this directory and add/remove/update clients?
13
 
** TODO config for TXT record
14
 
** TODO [#B] Run-time communication with server :bugs:
 
42
** config for TXT record
 
43
** Run-time communication with server
15
44
   Probably using D-Bus
16
45
   See also [[*Mandos-tools]]
17
 
*** Client class
18
 
*** Main server
19
 
    + SetLogLevel
20
 
      syslogger.setLevel(logging.WARNING)
21
 
    + Quit
22
 
    + [[http://log.ometer.com/2007-05.html][Best D-Bus practices]]
23
 
** TODO Implement --foreground                  :bugs:
24
 
   [[info:standards:Option%20Table][Table of Long Options]]
25
 
** TODO Implement --socket
26
 
   [[info:standards:Option%20Table][Table of Long Options]]
27
 
** TODO Date+time on console log messages       :bugs:
28
 
   Is this the default?
29
 
** TODO delete hook when clients fall out by timeout
30
 
   This will not be strictly necessary when the D-Bus interface is
31
 
   implemented.
32
 
 
33
 
* mandos.xml
34
 
** [[file:mandos.xml::XXX][Document D-Bus interface]]
35
 
 
36
 
* Provide and install /etc/dbus-1/system.d/mandos.conf
37
 
 
38
 
* mandos-list
39
 
*** Handle "no D-Bus server" and/or "no Mandos server found" better
40
 
*** [#B] --dump option
41
 
 
42
 
* Curses interface
43
 
 
44
 
* mandos-keygen
45
 
** TODO Loop until passwords match when run interactively
46
 
** TODO "--secfile" option
47
 
   Using the "secfile" option instead of "secret"
48
 
** TODO [#B] "--test" option
49
 
   For testing decryption before rebooting.
50
 
 
51
 
* [#A] Package
52
 
** /usr/share/initramfs-tools/hooks/mandos
53
 
*** TODO [#C] Do not install in initrd.img if configured not to.
54
 
    Use "/etc/initramfs-tools/conf.d/mandos"?  Definitely a debconf
55
 
    question.
56
 
** TODO [#C] /etc/bash_completion.d/mandos
57
 
   From XML sources directly?
58
 
** TODO initramfs-tools-script                                            :test:
59
 
   Do not insert plugin-runner as keyscript if a kernel parameter
60
 
   "mandos=off" is passed.
 
46
** Implement --foreground
 
47
   [[info:standards:Option%20Table][Table of Long Options]]
 
48
** Implement --socket
 
49
   [[info:standards:Option%20Table][Table of Long Options]]
 
50
 
 
51
* Mandos-tools/utilities
 
52
  All of this probably using D-Bus
 
53
** List clients
 
54
** Disable client
 
55
** Enable client
 
56
 
 
57
* Installer
 
58
** [#A] Change initrd.img file to not be publically readable
 
59
   /etc/initramfs-tools/conf.d/mandos
 
60
   UMASK=027
 
61
** [#A] Create /etc/initramfs-tools/hooks/mandos
 
62
   [[file:/usr/share/doc/initramfs-tools/examples/example_hook][Example initramfs-tools hook script]]
 
63
** [#A] Create GPG key ring files in initrd
 
64
** [#A] Create mandos user and group for server
 
65
** [#A] Create /var/run/mandos directory with perm and ownership
 
66
 
 
67
* INSTALL file
 
68
 
 
69
* Website
 
70
 
 
71
* Mailing list
 
72
 
 
73
* Announce project on news
 
74
  news:comp.os.linux.announce
61
75
 
62
76
 
63
77
#+STARTUP: showall