/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

  • Committer: Teddy Hogeborn
  • Date: 2008-08-04 23:38:26 UTC
  • mfrom: (24.1.20 mandos)
  • Revision ID: teddy@fukt.bsnet.se-20080804233826-idy7v8x36llseue0
* network-protocol.txt: New.

* server.py (daemon): Do the double fork thing.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
3
 
* mandos-client
4
 
** TODO [#A] Clean up /tmp directory and take down interface on signal    :test:
5
 
** TODO [#B] use scandir(3) instead of readdir(3)
6
 
** TODO [#B] Prefix all debug output with argv[0]
7
 
 
8
 
* splashy
9
 
** TODO [#A] Re-raise signal received when exiting due to handled signal.
10
 
** TODO [#B] use scandir(3) instead of readdir(3)
11
 
** TODO [#B] Prefix all debug output with argv[0]
12
 
 
13
 
* usplash
14
 
** TODO [#A] Re-raise signal received when exiting due to handled signal.
15
 
** TODO [#B] use scandir(3) instead of readdir(3)
16
 
** TODO [#B] Prefix all debug output with argv[0]
17
 
 
18
 
* password-prompt
19
 
** TODO [#B] Prefix all debug output with argv[0]
20
 
 
21
 
* plugin-runner
22
 
** TODO [#B] use scandir(3) instead of readdir(3)
23
 
** TODO [#C] use same file name rules as run-parts(8)
24
 
 
25
 
* mandos (server)
26
 
** TODO [#B] Log level                          :BUGS:
27
 
** TODO /etc/mandos/clients.d/*.conf
 
3
* README file
 
4
 
 
5
* Mandos client
 
6
** [#A] Man page
 
7
** [#A] check exit codes of all system calls
 
8
** [#B] header files/symbols tally
 
9
** IPv4 support
 
10
** use strsep instead of strtok?
 
11
** Do not depend on GPG key rings on disk
 
12
   This would mean creating new GPG key rings with GPGME by importing
 
13
   the key files from scratch every time we start the program.
 
14
 
 
15
* Passprompt
 
16
** [#A] Man page
 
17
 
 
18
* Pluginbasedclient
 
19
** [#A] Man page
 
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
 
25
 
 
26
* Server
 
27
** [#A] Man page
 
28
** [#A] write PID file
 
29
** [#A] /etc/init.d/mandos-server
 
30
** Better comments in config files
 
31
** Log level
 
32
** /etc/mandos/clients.d/*.conf
28
33
   Watch this directory and add/remove/update clients?
29
 
** TODO config for TXT record
30
 
** TODO [#B] Run-time communication with server :BUGS:
31
 
   Probably using D-Bus
32
 
*** Client class
33
 
*** Main server
34
 
    + SetLogLevel
35
 
      syslogger.setLevel(logging.WARNING)
36
 
    + [[http://log.ometer.com/2007-05.html][Best D-Bus practices]]
37
 
** TODO Implement --foreground                  :BUGS:
38
 
   [[info:standards:Option%20Table][Table of Long Options]]
39
 
** TODO Implement --socket
40
 
   [[info:standards:Option%20Table][Table of Long Options]]
41
 
** TODO Date+time on console log messages       :BUGS:
42
 
   Is this the default?
43
 
** TODO Split IPv6_TCPServer into a generic and Mandos-specific class
44
 
** TODO move handle_ipc out of IPv6_TCPServer
45
 
** TODO DBusServiceObjectUsingSuper
46
 
** Global enable/disable flag
47
 
** By-client countdown on secrets given
48
 
 
49
 
* mandos.xml
50
 
** [[file:mandos.xml::XXX][Document D-Bus interface]]
51
 
 
52
 
* Provide and install /etc/dbus-1/system.d/mandos.conf
53
 
 
54
 
* mandos-ctl
55
 
*** Handle "no D-Bus server" and/or "no Mandos server found" better
56
 
*** [#B] --dump option
57
 
 
58
 
* mandos-name
59
 
** D-Bus mail loop w/ signal receiver
60
 
** Urwid/Newt client data displayer
61
 
*** Urwid scaffolding
62
 
*** Client Widgets
63
 
*** Properties popup
64
 
 
65
 
* mandos-keygen
66
 
** TODO Loop until passwords match when run interactively
67
 
** TODO "--secfile" option
68
 
   Using the "secfile" option instead of "secret"
69
 
** TODO [#B] "--test" option
70
 
   For testing decryption before rebooting.
71
 
 
72
 
* Package
73
 
** /usr/share/initramfs-tools/hooks/mandos
74
 
*** TODO [#C] use same file name rules as run-parts(8)
75
 
*** TODO [#C] Do not install in initrd.img if configured not to.
76
 
    Use "/etc/initramfs-tools/hooksconf.d/mandos"?
77
 
** TODO [#C] /etc/bash_completion.d/mandos
78
 
   From XML sources directly?
 
34
** config for TXT record
 
35
** Run-time communication with server
 
36
   probably using D-Bus
 
37
 
 
38
* Mandos-tools/utilities
 
39
  All of this probably using D-Bus
 
40
** List clients
 
41
** Enable client
 
42
** Disable client
 
43
 
 
44
* Installer
 
45
** Change initrd.img file to not be publically readable
 
46
** Create GPG key ring files in initrd
79
47
 
80
48
 
81
49
#+STARTUP: showall