4
** TODO [#B] Temporarily lower kernel log level
5
for less printouts during sucessfull boot.
6
** TODO [#C] IPv4 support
9
** TODO [#B] Log level :bugs:
10
** TODO /etc/mandos/clients.d/*.conf
6
[[file:/usr/share/common-licenses/GPL-3][GPLv3]]
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
16
** [#A] Man page: man8/password-request.8mandos
17
** [#A] check return codes of all system calls
18
** [#B] header files/symbols tally
19
** [#B] Fix %d format strings to use [[https://secure.wikimedia.org/wikipedia/en/wiki/Inttypes.h][<inttypes.h>]]
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.
27
** [#A] Man page: man8/password-prompt.8mandos
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?]]
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:
40
** /etc/mandos/clients.d/*.conf
11
41
Watch this directory and add/remove/update clients?
12
** TODO config for TXT record
13
** TODO [#B] Run-time communication with server :bugs:
42
** config for TXT record
43
** Run-time communication with server
14
44
Probably using D-Bus
15
45
See also [[*Mandos-tools]]
16
** TODO Implement --foreground :bugs:
17
[[info:standards:Option%20Table][Table of Long Options]]
18
** TODO Implement --socket
19
[[info:standards:Option%20Table][Table of Long Options]]
20
** TODO Date+time on console log messages :bugs:
22
** TODO delete hook when clients fall out by timeout
46
** Implement --foreground
47
[[info:standards:Option%20Table][Table of Long Options]]
49
[[info:standards:Option%20Table][Table of Long Options]]
24
51
* Mandos-tools/utilities
25
52
All of this probably using D-Bus
27
** TODO Disable client
32
** TODO "--secfile" option
33
Using the "secfile" option instead of "secret"
34
** TODO [#B] "--test" option
35
For testing decryption before rebooting.
38
** /usr/share/initramfs-tools/hooks/mandos
39
*** TODO Do not install in initrd.img if configured not to.
40
Use "/etc/initramfs-tools/conf.d/mandos"? Definitely a debconf
42
** TODO /etc/bash_completion.d/mandos
43
From XML sources directly?
58
** [#A] Change initrd.img file to not be publically readable
59
** [#A] Create /etc/initramfs-tools/hooks/mandos
60
[[file:/usr/share/doc/initramfs-tools/examples/example_hook][Example initramfs-tools hook script]]
61
** [#A] Create GPG key ring files in initrd
62
** [#A] Create mandos user and group for server
63
** [#A] Create /var/run/mandos directory with perm and ownership
65
* [[http://en.tldp.org/HOWTO/Software-Release-Practice-HOWTO/][Software Release Practice HOWTO]]