/mandos/release

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

« back to all changes in this revision

Viewing changes to TODO

merge

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
3
 
* mandos-client
4
 
** TODO [#B] Temporarily lower kernel log level
5
 
   for less printouts during sucessfull boot.
6
 
   klogctl(6, NULL, 0); klogctl(7, NULL, 0);
7
 
** TODO [#C] IPv4 support
8
 
 
9
 
* plugin-runner
10
 
** TODO [#B] use scandir(3) instead of readdir(3)
11
 
 
12
 
* mandos (server)
13
 
** TODO [#B] Log level                          :bugs:
14
 
** TODO /etc/mandos/clients.d/*.conf
 
3
* README file
 
4
 
 
5
* 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
** [#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>]]
 
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
15
41
   Watch this directory and add/remove/update clients?
16
 
** TODO config for TXT record
17
 
** TODO [#B] Run-time communication with server :bugs:
 
42
** config for TXT record
 
43
** Run-time communication with server
18
44
   Probably using D-Bus
19
45
   See also [[*Mandos-tools]]
20
 
*** Client class
21
 
*** Main server
22
 
    + SetLogLevel
23
 
      syslogger.setLevel(logging.WARNING)
24
 
    + Quit
25
 
    + [[http://log.ometer.com/2007-05.html][Best D-Bus practices]]
26
 
** TODO Implement --foreground                  :bugs:
27
 
   [[info:standards:Option%20Table][Table of Long Options]]
28
 
** TODO Implement --socket
29
 
   [[info:standards:Option%20Table][Table of Long Options]]
30
 
** TODO Date+time on console log messages       :bugs:
31
 
   Is this the default?
32
 
** TODO delete hook when clients fall out by timeout
33
 
   This will not be strictly necessary when the D-Bus interface is
34
 
   implemented.
35
 
 
36
 
* mandos.xml
37
 
** [[file:mandos.xml::XXX][Document D-Bus interface]]
38
 
 
39
 
* Provide and install /etc/dbus-1/system.d/mandos.conf
40
 
 
41
 
* mandos-list
42
 
*** Handle "no D-Bus server" and/or "no Mandos server found" better
43
 
*** [#B] --dump option
44
 
** TODO Disable client
45
 
** TODO Enable client
46
 
** TODO Reset timer
47
 
 
48
 
* Curses interface
49
 
 
50
 
* mandos-keygen
51
 
** TODO "--secfile" option
52
 
   Using the "secfile" option instead of "secret"
53
 
** TODO [#B] "--test" option
54
 
   For testing decryption before rebooting.
55
 
 
56
 
* [#A] Package
57
 
** /usr/share/initramfs-tools/hooks/mandos
58
 
*** TODO [#C] Do not install in initrd.img if configured not to.
59
 
    Use "/etc/initramfs-tools/conf.d/mandos"?  Definitely a debconf
60
 
    question.
61
 
** TODO [#C] /etc/bash_completion.d/mandos
62
 
   From XML sources directly?
63
 
** TODO initramfs-tools-script                                            :test:
64
 
   Do not insert plugin-runner as keyscript if a kernel parameter
65
 
   "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
** [#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
 
64
 
 
65
* [[http://en.tldp.org/HOWTO/Software-Release-Practice-HOWTO/][Software Release Practice HOWTO]]
66
66
 
67
67
 
68
68
#+STARTUP: showall