4
** Use argp instead of getopt_long
5
** header files/symbols tally
6
** check exit codes of all system calls
8
** protocol version header
9
** use strsep instead of strtok?
10
** change uid to nobody:nogroup
11
other drop privs stuff?
14
** header files/symbols tally
15
** check exit codes of all system calls
16
** [#C] pass things in environment, like device name, etc
17
Does cryptsetup already do this?
18
** use strsep instead of strtok?
19
** use config file in addition to arguments
24
** protocol version header
25
** Run-time communication with server
28
* Mandos-tools/utilities
29
All of this probably using D-Bus
4
** TODO [#B] use scandir(3) instead of readdir(3)
5
** TODO [#B] Prefix all debug output with argv[0]
6
** TODO [#B] Retry a server which has a non-definite reply:
7
*** A closed connection during the TLS handshake
9
** TODO [#B] Use capabilities instead of seteuid().
12
** TODO [#B] use scandir(3) instead of readdir(3)
13
** TODO [#B] Prefix all debug output with "Mandos plugin " + argv[0]
16
** TODO [#B] use scandir(3) instead of readdir(3)
17
** TODO [#B] Prefix all debug output with "Mandos plugin " + argv[0]
20
** TODO [#B] Prefix all debug output with "Mandos plugin " + argv[0]
21
** TODO [#B] Drop privileges after opening FIFO.
24
** TODO [#B] Prefix all debug output with "Mandos plugin " + argv[0]
27
** TODO [#B] use scandir(3) instead of readdir(3)
28
** TODO [#C] use same file name rules as run-parts(8)
31
** TODO [#B] Log level :BUGS:
32
** TODO /etc/mandos/clients.d/*.conf
33
Watch this directory and add/remove/update clients?
34
** TODO config for TXT record
35
** TODO [#B] Run-time communication with server :BUGS:
40
syslogger.setLevel(logging.WARNING)
41
+ [[http://log.ometer.com/2007-05.html][Best D-Bus practices]]
42
** TODO Implement --foreground :BUGS:
43
[[info:standards:Option%20Table][Table of Long Options]]
44
** TODO Implement --socket
45
[[info:standards:Option%20Table][Table of Long Options]]
46
** TODO Date+time on console log messages :BUGS:
48
** TODO DBusServiceObjectUsingSuper
49
** Global enable/disable flag
50
** By-client countdown on secrets given
51
** Fix problem with fsck taking a really long time
52
Whenever a client successfully gets a secret it could get a
53
one-time timeout boost to allow for an fsck-incurred delay
56
** [[file:mandos.xml::XXX][Document D-Bus interface]]
58
* Provide and install /etc/dbus-1/system.d/mandos.conf
61
*** Handle "no D-Bus server" and/or "no Mandos server found" better
62
*** [#B] --dump option
65
** D-Bus mail loop w/ signal receiver
66
** Snack/Newt client data displayer
71
** TODO Loop until passwords match when run interactively
72
** TODO "--secfile" option
73
Using the "secfile" option instead of "secret"
74
** TODO [#B] "--test" option
75
For testing decryption before rebooting.
78
** Implement DEB_BUILD_OPTIONS
79
http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules-options
82
** /usr/share/initramfs-tools/hooks/mandos
83
*** TODO [#C] use same file name rules as run-parts(8)
84
*** TODO [#C] Do not install in initrd.img if configured not to.
85
Use "/etc/initramfs-tools/hooksconf.d/mandos"?
86
** TODO [#C] /etc/bash_completion.d/mandos
87
From XML sources directly?