/mandos/trunk

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

« back to all changes in this revision

Viewing changes to TODO

  • Committer: Teddy Hogeborn
  • Date: 2010-04-04 23:51:07 UTC
  • mfrom: (24.1.147 mandos)
  • Revision ID: teddy@fukt.bsnet.se-20100404235107-mjnuq6gjdeq030w7
MergeĀ fromĀ Belorn.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
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
 
** Log level
31
 
** /etc/mandos/clients.d/*.conf
32
 
   Watch this directory and add/remove/update clients?
33
 
** config for TXT record
34
 
** Run-time communication with server
35
 
   probably using D-Bus
36
 
 
37
 
* Mandos-tools/utilities
38
 
  All of this probably using D-Bus
39
 
** List clients
40
 
** Enable client
41
 
** Disable client
42
 
 
43
 
* Installer
44
 
** Change initrd.img file to not be publically readable
45
 
** Create GPG key ring files in initrd
 
3
* mandos-client
 
4
** TODO [#B] use scandir(3) instead of readdir(3)
 
5
** TODO [#B] Prefix all debug output with "Mandos plugin " + program_invocation_short_name
 
6
** TODO use error() instead of perror()
 
7
** TODO [#B] Retry a server which has a non-definite reply:
 
8
*** A closed connection during the TLS handshake
 
9
*** A TCP timeout
 
10
** TODO [#B] Use capabilities instead of seteuid().
 
11
** TODO [#A] Retry --connect forever
 
12
 
 
13
* splashy
 
14
** TODO [#B] use scandir(3) instead of readdir(3)
 
15
** TODO [#B] Prefix all debug output with "Mandos plugin " + program_invocation_short_name
 
16
** TODO [#B] use error() instead of perror()
 
17
 
 
18
* usplash
 
19
** TODO [#A] Make it work again
 
20
** TODO [#B] use scandir(3) instead of readdir(3)
 
21
** TODO [#B] Prefix all debug output with "Mandos plugin " + program_invocation_short_name
 
22
** TODO [#B] use error() instead of perror()
 
23
 
 
24
* askpass-fifo
 
25
** TODO [#B] Prefix all debug output with "Mandos plugin " + program_invocation_short_name
 
26
** TODO [#B] use error() instead of perror()
 
27
** TODO [#B] Drop privileges after opening FIFO.
 
28
 
 
29
* password-prompt
 
30
** TODO [#B] Prefix all debug output with "Mandos plugin " + program_invocation_short_name
 
31
** TODO [#B] use error() instead of perror()
 
32
** TODO [#B] lock stdin (with flock()?)
 
33
 
 
34
* TODO [#B] passdev
 
35
 
 
36
* plugin-runner
 
37
** TODO [#B] use scandir(3) instead of readdir(3)
 
38
** TODO [#C] use same file name rules as run-parts(8)
 
39
** kernel command line option for debug info
 
40
** TODO [#B] use error() instead of perror()
 
41
 
 
42
* mandos (server)
 
43
** TODO [#B] Log level                                                    :BUGS:
 
44
** TODO Persistent state                                                  :BUGS:
 
45
   /var/lib/mandos/*
 
46
*** TODO /etc/mandos/clients.d/*.conf
 
47
    Watch this directory and add/remove/update clients?
 
48
** TODO [#C] config for TXT record
 
49
** TODO Log level option
 
50
   syslogger.setLevel(logging.WARNING)
 
51
   + SetLogLevel D-Bus call
 
52
** TODO Implement --foreground                                            :BUGS:
 
53
   [[info:standards:Option%20Table][Table of Long Options]]
 
54
** TODO Implement --socket
 
55
   [[info:standards:Option%20Table][Table of Long Options]]
 
56
** TODO Date+time on console log messages                                 :BUGS:
 
57
   Is this the default?
 
58
** TODO [#C] DBusServiceObjectUsingSuper
 
59
** TODO [#B] Global enable/disable flag
 
60
** TODO [#B] By-client countdown on secrets given
 
61
** TODO [#B] Fix problem with fsck taking a really long time
 
62
   Whenever a client successfully gets a secret it could get a
 
63
   one-time timeout boost to allow for an fsck-incurred delay
 
64
** TODO [#A] Delay before client receives key
 
65
   This would give an operator opportunity to cancel the request if
 
66
   desired.
 
67
** TODO [#A] Client manual approval mode
 
68
   A client needs manual approval on the server before it gets the
 
69
   secret
 
70
** TODO [#B] Support RFC 3339 time duration syntax
 
71
 
 
72
* mandos.xml
 
73
** [[file:mandos.xml::XXX][Document D-Bus interface]]
 
74
   Remove mention of lack of such interface in BUGS section
 
75
** Add mandos contact info in manual pages
 
76
 
 
77
* TODO [#A] Provide and install /etc/dbus-1/system.d/mandos.conf
 
78
 
 
79
* mandos-ctl
 
80
*** Handle "no D-Bus server" and/or "no Mandos server found" better
 
81
*** [#B] --dump option
 
82
** TODO Support RFC 3339 time duration syntax
 
83
 
 
84
* TODO mandos-dispatch
 
85
  Listens for specified D-Bus signals and spawns shell commands with
 
86
  arguments.
 
87
 
 
88
* mandos-monitor
 
89
** Urwid client data displayer
 
90
   Better view of client data in the listing
 
91
*** Properties popup
 
92
 
 
93
* mandos-keygen
 
94
** TODO Loop until passwords match when run interactively
 
95
** TODO "--secfile" option
 
96
   Using the "secfile" option instead of "secret"
 
97
** TODO [#B] "--test" option
 
98
   For testing decryption before rebooting.
 
99
 
 
100
* Makefile
 
101
** TODO [#C] Implement DEB_BUILD_OPTIONS
 
102
   http://www.debian.org/doc/debian-policy/ch-source.html#s-debianrules-options
 
103
 
 
104
* Package
 
105
** /usr/share/initramfs-tools/hooks/mandos
 
106
*** TODO [#C] use same file name rules as run-parts(8)
 
107
*** TODO [#C] Do not install in initrd.img if configured not to.
 
108
    Use "/etc/initramfs-tools/hooksconf.d/mandos"?
 
109
** TODO [#C] /etc/bash_completion.d/mandos
 
110
   From XML sources directly?
46
111
 
47
112
 
48
113
#+STARTUP: showall