/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-09-19 13:50:22 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080919135022-214t21hetv8jgv0y
* debian/mandos-client.docs: New.  Add README and TODO file.
* debian/mandos.docs: - '' -

* debian/mandos-client.links: New.  Create plugin-runner.conf(5) link.

* debian/rules (DH_VERBOSE): Commented out.
               Removed commented-out unused dh_* stuff.  Removed
               "dh_makeshlibs".

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
3
 
* [#A] README file
4
 
 
5
 
* Plugin-runner
6
 
** [#A] Free plugin name and args
7
 
   [[file:plugin-runner.c::free%20plugin_list][file:plugin-runner.c::free plugin_list]] (both places)
8
 
** [#A] Change syntax for arguments
9
 
** [#B] Add more comments to code
10
 
** [#B] Add more if(debug) calls
11
 
** [#B] Seperate more code to function for more readability
12
 
** [#B] Make free_plugin_list() function
13
 
** [#A] Man page: man8/plugin-runner.8mandos
14
 
*** DESCRIPTION
15
 
    Describe the plus sign syntax for passing options from crypttab
16
 
*** EXIT STATUS
17
 
    Text needed
18
 
*** EXAMPLES
19
 
    Examples of normal usage, debug usage, debugging single or all
20
 
    plugins, examples of crypttab lines with plus syntax, etc.
21
 
*** FILES
22
 
    Text needed
23
 
*** SECURITY
24
 
    Text needed
25
 
*** NOTES
26
 
    Text needed
27
 
*** BUGS
28
 
    Text needed
29
 
*** SEE ALSO
30
 
    Explaining test on what you can read
31
 
** Support in configuration file for environment variables
32
 
** Keydir move: /etc/mandos -> /etc/keys/mandos
33
 
   Must create in preinst if not pre-depending on cryptsetup
34
 
 
35
 
* Password-request
36
 
** [#A] Man page: man8/password-request.8mandos
37
 
** Make prompt exactly like the normal prompt
38
 
   Use environment variables:
39
 
   "Enter passphrase to unlock the disk $cryptsource ($crypttarget): "
40
 
   [[file:plugins.d/password-prompt.c::fprintf%20stderr%20s%20Password%20prefix][Here]]
41
 
** [#B] Temporarily lower kernel log level
 
3
* plugin-runner
 
4
** TODO Man page  for plugin-runner.conf.5
 
5
   link to plugin-runner.8
 
6
 
 
7
* mandos-client
 
8
** TODO [#B] Temporarily lower kernel log level
42
9
   for less printouts during sucessfull boot.
43
 
*** DESCRIPTION
44
 
    Move options to new OPTIONS section.
45
 
    State that this command is not meant to be invoked directly, but
46
 
    is run as a plugin from mandos-client(8) and only run in the
47
 
    initrd environment, not the real system.
48
 
*** EXIT STATUS
49
 
    Create this section
50
 
*** EXAMPLES
51
 
    Examples of normal usage, debug usage, debugging by connecting
52
 
    directly, etc.
53
 
*** FILES
54
 
    Describe the key files and the key ring files.  Also note that
55
 
    they should normally have been automatically created.
56
 
*** DIAGNOSTICS
57
 
    Create this section
58
 
*** SECURITY
59
 
    Create this section
60
 
*** NOTES
61
 
    Create this section (if needed)
62
 
*** BUGS
63
 
    Create this section
64
 
*** SEE ALSO
65
 
    Refer to mandos-client(8mandos) and password-prompt(8mandos)
66
 
** IPv4 support
67
 
** use strsep instead of strtok?
68
 
** Do not depend on GnuPG key rings on disk
69
 
   This would mean creating new GnuPG key rings with GPGME by
70
 
   importing the key files from scratch on every program start.
71
 
 
72
 
* Password-prompt
73
 
** [#A] Man page: man8/password-prompt.8mandos
74
 
** Show getenv("cryptsource") and getenv("crypttarget") if set
75
 
   cryptsource will be the device, like "/dev/sda3", and crypttarget
76
 
   will be the device mapper name, like "sda3_crypt".
77
 
*** DESCRIPTION
78
 
    Move options to new OPTIONS section.
79
 
*** EXIT STATUS
80
 
    Create this section
81
 
*** EXAMPLES
82
 
    Examples of normal usage, debug usage, with a prefix, etc.
83
 
*** DIAGNOSTICS
84
 
    Create this section
85
 
*** SECURITY
86
 
    Create this section
87
 
    Not much to do here but it is noteworthy to state the danger of
88
 
    not having a fallback option.
89
 
*** NOTES
90
 
    Note that this is more or less a simple getpass(3) wrapper, even
91
 
    though actual use of getpass(3) is not guaranteed.
92
 
*** BUGS
93
 
    Create this section
94
 
*** SEE ALSO
95
 
    Refer to mandos-client(8mandos) and password-request(8mandos)
96
 
** Use getpass(3)?
97
 
   Man page says "obsolete", but [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
98
 
   does not.  See also [[http://sources.redhat.com/ml/libc-alpha/2003-05/msg00251.html][Marcus Brinkmann: Re: getpass obsolete?]] and
99
 
   [[http://article.gmane.org/gmane.comp.lib.glibc.alpha/4906][Petter Reinholdtsen: Re: getpass obsolete?]], and especially also
100
 
   [[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?]]
101
 
** Replace completely with "/lib/cryptsetup/askpass"?
102
 
 
103
 
* Mandos (server)
104
 
** [#A] Command man page: man8/mandos.8
105
 
*** DESCRIPTION
106
 
    Move options to new OPTIONS section
107
 
*** EXIT STATUS
108
 
    Create this section
109
 
*** EXAMPLES
110
 
    Create this section
111
 
*** FILES
112
 
    Describe briefly that the server gets global settings from
113
 
    mandos.conf and clients from clients.conf, but refer to their man
114
 
    pages for more details.
115
 
*** DIAGNOSTICS
116
 
    Create this section
117
 
*** SECURITY
118
 
    Create this section
119
 
*** NOTES
120
 
    Create this section (if needed)
121
 
*** BUGS
122
 
    Create this section
123
 
*** SEE ALSO
124
 
    Refer to the client man page
125
 
** [#A] Config file man page: man5/mandos.conf (mandos.conf)
126
 
** [#A] Config file man page: man5/mandos-clients.conf (clients.conf)
127
 
** [#A] /etc/init.d/mandos-server               :teddy:
128
 
** Log level
129
 
** /etc/mandos/clients.d/*.conf
 
10
** TODO [#C] IPv4 support
 
11
 
 
12
* DONE password-prompt
 
13
 
 
14
* mandos (server)
 
15
** TODO [#B] Log level                          :bugs:
 
16
** TODO /etc/mandos/clients.d/*.conf
130
17
   Watch this directory and add/remove/update clients?
131
 
** config for TXT record
132
 
** Run-time communication with server
 
18
** TODO config for TXT record
 
19
** TODO [#B] Run-time communication with server :bugs:
133
20
   Probably using D-Bus
134
21
   See also [[*Mandos-tools]]
135
 
** Implement --foreground
136
 
   [[info:standards:Option%20Table][Table of Long Options]]
137
 
** Implement --socket
138
 
   [[info:standards:Option%20Table][Table of Long Options]]
139
 
** Date+time on console log messages
 
22
** TODO Implement --foreground                  :bugs:
 
23
   [[info:standards:Option%20Table][Table of Long Options]]
 
24
** TODO Implement --socket
 
25
   [[info:standards:Option%20Table][Table of Long Options]]
 
26
** TODO Date+time on console log messages       :bugs:
140
27
   Is this the default?
 
28
** TODO delete hook when clients fall out by timeout
141
29
 
142
30
* Mandos-tools/utilities
143
31
  All of this probably using D-Bus
144
 
** List clients
145
 
** Disable client
146
 
** Enable client
 
32
** TODO List clients
 
33
** TODO Disable client
 
34
** TODO Enable client
 
35
** TODO Reset timer
 
36
 
 
37
* Man pages
 
38
** TODO Use xinclude for all common sections
 
39
   Like authors, etc.
 
40
 
147
41
 
148
42
* Installer
149
 
** Client
150
 
*** DONE [#A] Change initrd.img file to not be publically readable
151
 
    /usr/share/initramfs-tools/conf-hooks.d/mandos
152
 
    UMASK=027
153
 
*** Update initrd.img after installation
154
 
** Server
155
 
*** [#A] Create mandos user and group for server
156
 
*** [#A] Create /var/run/mandos directory with perm and ownership
 
43
** Client-side
 
44
*** TODO Update initrd.img after installation
 
45
    This seems to use some kind of "trigger" system
 
46
    [[file:/usr/share/doc/dpkg/triggers.txt.gz]]
 
47
    dpkg-trigger(1), deb-triggers(5)
 
48
*** mandos-keygen
 
49
**** TODO [#A] Ask for password twice for confirmation
 
50
**** TODO "--passfile" option
 
51
     Using the "secfile" option instead of "secret"
 
52
**** TODO [#B] "--test" option
 
53
     For testing decryption before rebooting.
 
54
** Server-side
 
55
*** TODO [#A] Create mandos user and group for server
157
56
 
158
 
** mandos-keygen
159
 
*** [#A] Command man page: man8/mandos-keygen.8
160
 
*** [#A] Output cut-and-paste ready snippet for clients.conf.
161
57
 
162
58
* [#A] Package
163
59
** /usr/share/initramfs-tools/hooks/mandos
164
 
*** Do not install in initrd.img if configured not to
 
60
*** TODO Do not install in initrd.img if configured not to.
165
61
    Use "/etc/initramfs-tools/conf.d/mandos"?  Definitely a debconf
166
62
    question.
167
 
** /etc/bash_completion.d/mandos
168
 
*** From xml sources directly?
169
 
** unperish
170
 
** bzr-builddeb
171
 
 
172
 
* INSTALL file
173
 
 
174
 
* Web site
 
63
** TODO /etc/bash_completion.d/mandos
 
64
   From XML sources directly?
 
65
** TODO unperish
 
66
** DONE bzr-builddeb
 
67
** DONE mandos user/group creation              :test:
 
68
** DONE Key creation in postinst                :test:
 
69
 
 
70
* TODO Web site
 
71
** DONE http://www.fukt.bsnet.se/mandos
 
72
   Redirects to the wiki page
 
73
** TODO http://wiki.fukt.bsnet.se/wiki/Mandos
175
74
 
176
75
* Mailing list
 
76
** DONE mandos-dev
 
77
*** TODO http://gmane.org/subscribe.php
177
78
 
178
 
* Announce project on news
 
79
* TODO Announce project on Usenet
179
80
  [[news:comp.os.linux.announce]]
180
81
 
181
82