/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
-*- org -*-

* [#A] README file

* Mandos-client
** [#A] Change syntax for arguments
** [#A] Man page: man8/mandos-client.8mandos
*** DESCRIPTION
    Describe the plus sign syntax for passing options from crypttab
*** EXIT STATUS
    Text needed
*** EXAMPLES
    Examples of normal usage, debug usage, debugging single or all
    plugins, examples of crypttab lines with plus syntax, etc.
*** FILES
    Text needed
*** SECURITY
    Text needed
*** NOTES
    Text needed
*** BUGS
    Text needed
*** SEE ALSO
    Explaining test on what you can read
** Use asprintf instead of malloc and strcat?
** use strsep instead of strtok?
** use config file in addition to arguments
** pass things in environment, like device name, etc

* Password-request
** [#A] Man page: man8/password-request.8mandos
** [#B] Temporarily lower kernel log level
   for less printouts during sucessfull boot.
*** DESCRIPTION
    Move options to new OPTIONS section.
    State that this command is not meant to be invoked directly, but
    is run as a plugin from mandos-client(8) and only run in the
    initrd environment, not the real system.
*** EXIT STATUS
    Create this section
*** EXAMPLES
    Examples of normal usage, debug usage, debugging by connecting
    directly, etc.
*** FILES
    Describe the key files and the key ring files.  Also note that
    they should normally have been automatically created.
*** DIAGNOSTICS
    Create this section
*** SECURITY
    Create this section
*** NOTES
    Create this section (if needed)
*** BUGS
    Create this section
*** SEE ALSO
    Refer to mandos-client(8mandos) and password-prompt(8mandos)
** Use asprintf instead of malloc and memcpy?
** IPv4 support
** use strsep instead of strtok?
** Do not depend on GnuPG key rings on disk
   This would mean creating new GnuPG key rings with GPGME by
   importing the key files from scratch on every program start.

* Password-prompt
** [#A] Man page: man8/password-prompt.8mandos
*** DESCRIPTION
    Move options to new OPTIONS section.
*** EXIT STATUS
    Create this section
*** EXAMPLES
    Examples of normal usage, debug usage, with a prefix, etc.
*** DIAGNOSTICS
    Create this section
*** SECURITY
    Create this section
    Not much to do here but it is noteworthy to state the danger of
    not having a fallback option.
*** NOTES
    Note that this is more or less a simple getpass(3) wrapper, even
    though actual use of getpass(3) is not guaranteed.
*** BUGS
    Create this section
*** SEE ALSO
    Refer to mandos-client(8mandos) and password-request(8mandos)
** Use getpass(3)?
   Man page says "obsolete", but [[info:libc:getpass][GNU LibC Manual: Reading Passwords]]
   does not.  See also [[http://sources.redhat.com/ml/libc-alpha/2003-05/msg00251.html][Marcus Brinkmann: Re: getpass obsolete?]] and
   [[http://article.gmane.org/gmane.comp.lib.glibc.alpha/4906][Petter Reinholdtsen: Re: getpass obsolete?]], and especially also
   [[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?]]
** Replace completely with "/lib/cryptsetup/askpass"?

* Mandos (server)
** [#A] Command man page: man8/mandos.8
*** DESCRIPTION
    Move options to new OPTIONS section
*** EXIT STATUS
    Create this section
*** EXAMPLES
    Create this section
*** FILES
    Describe briefly that the server gets global settings from
    mandos.conf and clients from clients.conf, but refer to their man
    pages for more details.
*** DIAGNOSTICS
    Create this section
*** SECURITY
    Create this section
*** NOTES
    Create this section (if needed)
*** BUGS
    Create this section
*** SEE ALSO
    Refer to the client man page
** [#A] Config file man page: man5/mandos.conf (mandos.conf)
** [#A] Config file man page: man5/mandos-clients.conf (clients.conf)
** [#A] /etc/init.d/mandos-server		:teddy:
** Log level
** /etc/mandos/clients.d/*.conf
   Watch this directory and add/remove/update clients?
** config for TXT record
** Run-time communication with server
   Probably using D-Bus
   See also [[*Mandos-tools]]
** Implement --foreground
   [[info:standards:Option%20Table][Table of Long Options]]
** Implement --socket
   [[info:standards:Option%20Table][Table of Long Options]]
** Date+time on console log messages
   Is this the default?

* Mandos-tools/utilities
  All of this probably using D-Bus
** List clients
** Disable client
** Enable client

* Installer
** Client
*** DONE [#A] Change initrd.img file to not be publically readable
    /usr/share/initramfs-tools/conf-hooks.d/mandos
    UMASK=027
*** Update initrd.img after installation
** Server
*** [#A] Create mandos user and group for server
*** [#A] Create /var/run/mandos directory with perm and ownership

** mandos-keygen
*** [#A] Command man page: man8/mandos-keygen.8
*** [#A] Output cut-and-paste ready snippet for clients.conf.

* [#A] Package
** /usr/share/initramfs-tools/hooks/mandos
*** Do not install in initrd.img if configured not to
    Use "/etc/initramfs-tools/conf.d/mandos"?  Definitely a debconf
    question.
** /etc/bash_completion.d/mandos
*** From xml sources directly?
** unperish
** bzr-builddeb

* INSTALL file

* Web site

* Mailing list

* Announce project on news
  [[news:comp.os.linux.announce]]


#+STARTUP: showall