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
7
** [#A] check exit codes of all system calls
18
8
** [#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
10
** use strsep instead of strtok?
22
11
** Do not depend on GPG key rings on disk
23
12
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?]]
13
the key files from scratch every time we start the program.
20
** [#A] check exit codes of all system calls
21
** [#B] header files/symbols tally
22
** use strsep instead of strtok?
23
** use config file in addition to arguments
24
** pass things in environment, like device name, etc
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:
28
** [#A] write PID file
29
** [#A] /etc/init.d/mandos-server
30
** Better comments in config files
40
32
** /etc/mandos/clients.d/*.conf
41
33
Watch this directory and add/remove/update clients?
42
34
** config for TXT record
43
35
** Run-time communication with server
45
See also [[*Mandos-tools]]
46
** Implement --foreground
47
[[info:standards:Option%20Table][Table of Long Options]]
49
[[info:standards:Option%20Table][Table of Long Options]]
51
38
* Mandos-tools/utilities
52
39
All of this probably using D-Bus
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]]
45
** Change initrd.img file to not be publically readable
46
** Create GPG key ring files in initrd