/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: Björn Påhlsson
  • Date: 2008-08-23 23:19:45 UTC
  • mto: (237.7.1 mandos) (24.1.154 mandos)
  • mto: This revision was merged to the branch mainline in revision 99.
  • Revision ID: belorn@braxen-20080823231945-05m7xkkhnc9q7wm3
added verify for server in TOTO

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
-*- org -*-
2
2
 
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
 
** [#A] check return codes of all system calls
11
 
** [#B] header files/symbols tally
12
 
** use strsep instead of strtok?
13
 
** use config file in addition to arguments
14
 
** pass things in environment, like device name, etc
15
 
 
16
 
* Password-request
 
3
* [#A] README file
 
4
 
 
5
* plugin-runner
 
6
** [#B] Add more comments to code
 
7
** [#B] Add more if(debug) calls
 
8
** [#B] Seperate more code to function for more readability
 
9
** [#A] Man page: man8/plugin-runner.8mandos
 
10
*** EXIT STATUS
 
11
*** EXAMPLES
 
12
    Examples of normal usage, debug usage, debugging single or all
 
13
    plugins, etc.
 
14
*** FILES
 
15
*** SECURITY
 
16
    Note the danger of using this program, since you might lock
 
17
    yourself out of your system without any means of entering the root
 
18
    file system password.  This is, however, very unlikely considering
 
19
    the fallback to getpass(3).
 
20
*** BUGS
 
21
*** SEE ALSO
 
22
    Explaining text on what you can read
 
23
 
 
24
* password-request
17
25
** [#A] Man page: man8/password-request.8mandos
18
 
** [#A] check return codes of all system calls
19
 
** [#B] header files/symbols tally
 
26
*** SYNOPSIS
 
27
    Document short options
 
28
*** DESCRIPTION
 
29
    State that this command is not meant to be invoked directly, but
 
30
    is run as a plugin from mandos-client(8) and only run in the
 
31
    initrd environment, not the real system.
 
32
*** PURPOSE
 
33
    As in mandos.xml
 
34
*** OVERVIEW
 
35
    As in mandos.xml
 
36
*** EXIT STATUS
 
37
*** ENVIRONMENT
 
38
    Note that it does *not* currently use cryptsource or crypttarget.
 
39
*** FILES
 
40
    Describe the key files and the key ring files.  Also note that
 
41
    they should normally have been automatically created.
 
42
*** BUGS
 
43
*** EXAMPLE
 
44
    Examples of normal usage, debug usage, debugging by connecting
 
45
    directly, etc.
 
46
*** SECURITY
 
47
*** SEE ALSO
 
48
    Update from mandos.xml
 
49
** [#B] Temporarily lower kernel log level
 
50
   for less printouts during sucessfull boot.
20
51
** IPv4 support
21
52
** 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.
 
53
** Do not depend on GnuPG key rings on disk
 
54
   This would mean creating new GnuPG key rings with GPGME by
 
55
   importing the key files from scratch on every program start.
 
56
** Keydir move: /etc/mandos -> /etc/keys/mandos
 
57
   Must create in preinst if not pre-depending on cryptsetup
25
58
 
26
 
* Password-prompt
 
59
* password-prompt
27
60
** [#A] Man page: man8/password-prompt.8mandos
 
61
*** SYNOPSIS
 
62
    Document short options
 
63
*** DESCRIPTION
 
64
    Note that this is more or less a simple getpass(3) wrapper, even
 
65
    though actual use of getpass(3) is not guaranteed.
 
66
*** EXIT STATUS
 
67
*** ENVIRONMENT
 
68
    Document use of "cryptsource" and "crypttarget".
 
69
*** FILES
 
70
*** BUGS
 
71
*** EXAMPLE
 
72
    Examples of normal usage, debug usage, with a prefix, etc.
 
73
*** SECURITY
 
74
    Not much to do here but it is noteworthy to state the danger of
 
75
    not having a fallback option.
 
76
*** SEE ALSO
 
77
    Refer to mandos-client(8mandos) and password-request(8mandos)
 
78
    and also, perhaps, to cryptsetup(8)?
28
79
** Use getpass(3)?
29
 
   [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
 
80
   Man page says "obsolete", but [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
 
81
   does not.  See also [[http://sources.redhat.com/ml/libc-alpha/2003-05/msg00251.html][Marcus Brinkmann: Re: getpass obsolete?]] and
 
82
   [[http://article.gmane.org/gmane.comp.lib.glibc.alpha/4906][Petter Reinholdtsen: Re: getpass obsolete?]], and especially also
 
83
   [[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?]]
30
84
 
31
 
* Server
32
 
** [#A] Command man page: man8/mandos.8
33
 
** [#A] Config file man page: man5/mandos.conf (mandos.conf)
 
85
* mandos (server)
 
86
** run gnutls_openpgp_crt_verify_self() and verify clients certificates
34
87
** [#A] Config file man page: man5/mandos-clients.conf (clients.conf)
35
 
** [#A] /etc/init.d/mandos-server
36
 
** Log level
 
88
*** For option "secret", document which program can help generate it.
 
89
** [#A] /etc/init.d/mandos-server               :teddy:
 
90
** [#B] Log level                               :bugs:
37
91
** /etc/mandos/clients.d/*.conf
38
92
   Watch this directory and add/remove/update clients?
39
93
** config for TXT record
40
 
** Run-time communication with server
41
 
   probably using D-Bus
42
 
** Implement --foreground
 
94
** [#B] Run-time communication with server      :bugs:
 
95
   Probably using D-Bus
 
96
   See also [[*Mandos-tools]]
 
97
** Implement --foreground                       :bugs:
43
98
   [[info:standards:Option%20Table][Table of Long Options]]
44
99
** Implement --socket
45
100
   [[info:standards:Option%20Table][Table of Long Options]]
 
101
** Date+time on console log messages            :bugs:
 
102
   Is this the default?
46
103
 
47
104
* Mandos-tools/utilities
48
105
  All of this probably using D-Bus
49
106
** List clients
 
107
** Disable client
50
108
** Enable client
51
 
** Disable client
52
109
 
53
110
* Installer
54
 
** [#A] Change initrd.img file to not be publically readable
55
 
** [#A] Create GPG key ring files in initrd
56
 
** [#A] Create mandos user and group for server
57
 
** [#A] Create /var/run/mandos directory with perm and ownership
 
111
** Client-side
 
112
*** Update initrd.img after installation
 
113
    This seems to use some kind of "trigger" system
 
114
*** Keydir move: /etc/mandos -> /etc/keys/mandos
 
115
    Must create in preinst if not pre-depending on cryptsetup
 
116
*** mandos-keygen
 
117
**** [#A] Output cut-and-paste ready snippet for clients.conf.
 
118
** Server-side
 
119
*** [#A] Create mandos user and group for server
 
120
*** [#A] Create /var/run/mandos directory with perm and ownership
 
121
 
 
122
* [#A] Package
 
123
** /usr/share/initramfs-tools/hooks/mandos
 
124
*** Do not install in initrd.img if configured not to.
 
125
    Use "/etc/initramfs-tools/conf.d/mandos"?  Definitely a debconf
 
126
    question.
 
127
** /etc/bash_completion.d/mandos
 
128
   From XML sources directly?
 
129
** unperish
 
130
** bzr-builddeb
 
131
 
 
132
* INSTALL file
 
133
 
 
134
* Web site
 
135
 
 
136
* Mailing list
 
137
 
 
138
* Announce project on news
 
139
  [[news:comp.os.linux.announce]]
58
140
 
59
141
 
60
142
#+STARTUP: showall