4
** TODO [#A] Clean up /tmp directory on signal
5
** TODO [#C] IPv4 support
8
** TODO [#B] use scandir(3) instead of readdir(3)
6
** [#B] Add more comments to code
7
** [#B] Add more if(debug) calls
8
** [#B] Seperate more code to function for more readability
11
** [#B] Temporarily lower kernel log level
12
for less printouts during sucessfull boot.
14
** use strsep instead of strtok?
15
** Do not depend on GnuPG key rings on disk
16
This would mean creating new GnuPG key rings with GPGME by
17
importing the key files from scratch on every program start.
18
** Keydir move: /etc/mandos -> /etc/keys/mandos
19
Must create in preinst if not pre-depending on cryptsetup
22
** [#C] Use getpass(3)?
23
Man page says "obsolete", but [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
24
does not. See also [[http://sources.redhat.com/ml/libc-alpha/2003-05/msg00251.html][Marcus Brinkmann: Re: getpass obsolete?]] and
25
[[http://article.gmane.org/gmane.comp.lib.glibc.alpha/4906][Petter Reinholdtsen: Re: getpass obsolete?]], and especially also
26
[[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?]]
11
** TODO [#B] Log level :bugs:
12
** TODO /etc/mandos/clients.d/*.conf
29
** [#A] /etc/init.d/mandos-server :teddy:
30
** [#B] Log level :bugs:
31
** /etc/mandos/clients.d/*.conf
13
32
Watch this directory and add/remove/update clients?
14
** TODO config for TXT record
15
** TODO [#B] Run-time communication with server :bugs:
33
** config for TXT record
34
** [#B] Run-time communication with server :bugs:
16
35
Probably using D-Bus
17
36
See also [[*Mandos-tools]]
21
syslogger.setLevel(logging.WARNING)
23
+ [[http://log.ometer.com/2007-05.html][Best D-Bus practices]]
24
** TODO Implement --foreground :bugs:
25
[[info:standards:Option%20Table][Table of Long Options]]
26
** TODO Implement --socket
27
[[info:standards:Option%20Table][Table of Long Options]]
28
** TODO Date+time on console log messages :bugs:
37
** Implement --foreground :bugs:
38
[[info:standards:Option%20Table][Table of Long Options]]
40
[[info:standards:Option%20Table][Table of Long Options]]
41
** Date+time on console log messages :bugs:
29
42
Is this the default?
30
** TODO delete hook when clients fall out by timeout
31
This will not be strictly necessary when the D-Bus interface is
35
** [[file:mandos.xml::XXX][Document D-Bus interface]]
37
* Provide and install /etc/dbus-1/system.d/mandos.conf
40
*** Handle "no D-Bus server" and/or "no Mandos server found" better
41
*** [#B] --dump option
46
** TODO Loop until passwords match when run interactively
47
** TODO "--secfile" option
48
Using the "secfile" option instead of "secret"
49
** TODO [#B] "--test" option
50
For testing decryption before rebooting.
44
* Mandos-tools/utilities
45
All of this probably using D-Bus
51
** Use xinclude for common sections
57
*** Update initrd.img after installation
58
This seems to use some kind of "trigger" system
59
[[file:/usr/share/doc/dpkg/triggers.txt.gz]]
60
dpkg-trigger(1), deb-triggers(5)
61
*** Keydir move: /etc/mandos -> /etc/keys/mandos
62
Must create in preinst if not pre-depending on cryptsetup
64
**** "--passfile" option
65
Using the "secfile" option instead of "secret"
66
**** [#A] "--test" option
67
For testing decryption before rebooting.
69
*** [#A] Create mandos user and group for server
70
*** [#A] Create /var/run/mandos directory with perm and ownership
53
73
** /usr/share/initramfs-tools/hooks/mandos
54
*** TODO [#C] Do not install in initrd.img if configured not to.
74
*** Do not install in initrd.img if configured not to.
55
75
Use "/etc/initramfs-tools/conf.d/mandos"? Definitely a debconf
57
** TODO [#C] /etc/bash_completion.d/mandos
77
** /etc/bash_completion.d/mandos
58
78
From XML sources directly?
88
* Announce project on news
89
[[news:comp.os.linux.announce]]