/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 plugin-runner.xml

  • Committer: Teddy Hogeborn
  • Date: 2008-07-21 01:50:31 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080721015031-ivjiclli2j06hwgs
* Makefile: Include targets for all binaries.

* plugins.d/Makefile: Do nothing but call the parent Makefile.

* server.py: Added copyright statement and information.
  (Client.__init__): Added doc string.
  (Client.stop): Bug fix: Only log message if stopping for the first
                 time.  Check if the "stop_initiator_tag" and
                 "checker_initiator_tag" attributes exist before using
                 them.
  (Client.__del__): Call self.stop() instead of doing things here.
  (Client.checker_callback): Set self.checker_callback_tag and
                             self.checker to None unconditionally and
                             immediately.
  (Client.stop_checker): Added some checks to handle multiple calls.
  (tcp_handler.handle): Use "self.server.clients" instead of "clients".
  (__main__): Moved all code to the "main" function.
  (main): New.  New option "--address".  Instantiate IPv6_TCPServer
          with "options.address".  Log before starting main loop.
  (main.cleanup) Use "clients.pop()" to remove clients from the set as
                 they are stopped.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version="1.0" encoding="UTF-8"?>
2
 
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3
 
        "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4
 
<!ENTITY VERSION "1.0">
5
 
<!ENTITY COMMANDNAME "plugin-runner">
6
 
<!ENTITY TIMESTAMP "2008-08-31">
7
 
]>
8
 
 
9
 
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
10
 
  <refentryinfo>
11
 
    <title>Mandos Manual</title>
12
 
    <!-- Nwalsh’s docbook scripts use this to generate the footer: -->
13
 
    <productname>Mandos</productname>
14
 
    <productnumber>&VERSION;</productnumber>
15
 
    <date>&TIMESTAMP;</date>
16
 
    <authorgroup>
17
 
      <author>
18
 
        <firstname>Björn</firstname>
19
 
        <surname>Påhlsson</surname>
20
 
        <address>
21
 
          <email>belorn@fukt.bsnet.se</email>
22
 
        </address>
23
 
      </author>
24
 
      <author>
25
 
        <firstname>Teddy</firstname>
26
 
        <surname>Hogeborn</surname>
27
 
        <address>
28
 
          <email>teddy@fukt.bsnet.se</email>
29
 
        </address>
30
 
      </author>
31
 
    </authorgroup>
32
 
    <copyright>
33
 
      <year>2008</year>
34
 
      <holder>Teddy Hogeborn</holder>
35
 
      <holder>Björn Påhlsson</holder>
36
 
    </copyright>
37
 
    <xi:include href="legalnotice.xml"/>
38
 
  </refentryinfo>
39
 
 
40
 
  <refmeta>
41
 
    <refentrytitle>&COMMANDNAME;</refentrytitle>
42
 
    <manvolnum>8mandos</manvolnum>
43
 
  </refmeta>
44
 
  
45
 
  <refnamediv>
46
 
    <refname><command>&COMMANDNAME;</command></refname>
47
 
    <refpurpose>
48
 
      Run Mandos plugins.  Pass data from first succesful one.
49
 
    </refpurpose>
50
 
  </refnamediv>
51
 
 
52
 
  <refsynopsisdiv>
53
 
    <cmdsynopsis>
54
 
      <command>&COMMANDNAME;</command>
55
 
      <group rep="repeat">
56
 
        <arg choice="plain"><option>--global-envs=<replaceable
57
 
        >VAR</replaceable><literal>=</literal><replaceable
58
 
        >value</replaceable></option></arg>
59
 
        <arg choice="plain"><option>-e
60
 
        <replaceable>VAR</replaceable><literal>=</literal><replaceable
61
 
        >value</replaceable> </option></arg>
62
 
      </group>
63
 
      <sbr/>
64
 
      <group rep="repeat">
65
 
        <arg choice="plain"><option>--envs-for=<replaceable
66
 
        >PLUGIN</replaceable><literal>:</literal><replaceable
67
 
        >ENV</replaceable><literal>=</literal><replaceable
68
 
        >value</replaceable></option></arg>
69
 
        <arg choice="plain"><option>-f<replaceable>
70
 
        PLUGIN</replaceable><literal>:</literal><replaceable
71
 
        >ENV</replaceable><literal>=</literal><replaceable
72
 
        >value</replaceable> </option></arg>
73
 
      </group>
74
 
      <sbr/>
75
 
      <group rep="repeat">
76
 
        <arg choice="plain"><option>--global-options=<replaceable
77
 
        >OPTIONS</replaceable></option></arg>
78
 
        <arg choice="plain"><option>-g<replaceable>
79
 
        OPTIONS</replaceable> </option></arg>
80
 
      </group>
81
 
      <sbr/>
82
 
      <group rep="repeat">
83
 
        <arg choice="plain"><option>--options-for=<replaceable
84
 
        >PLUGIN</replaceable><literal>:</literal><replaceable
85
 
        >OPTIONS</replaceable></option></arg>
86
 
        <arg choice="plain"><option>-f<replaceable>
87
 
        PLUGIN</replaceable><literal>:</literal><replaceable
88
 
        >OPTIONS</replaceable> </option></arg>
89
 
      </group>
90
 
      <sbr/>
91
 
      <group rep="repeat">
92
 
        <arg choice="plain"><option>--disable=<replaceable
93
 
        >PLUGIN</replaceable></option></arg>
94
 
        <arg choice="plain"><option>-d
95
 
        <replaceable>PLUGIN</replaceable> </option></arg>
96
 
      </group>
97
 
      <sbr/>
98
 
      <arg><option>--groupid=<replaceable
99
 
      >ID</replaceable></option></arg>
100
 
      <sbr/>
101
 
      <arg><option>--userid=<replaceable
102
 
      >ID</replaceable></option></arg>
103
 
      <sbr/>
104
 
      <arg><option>--plugin-dir=<replaceable
105
 
      >DIRECTORY</replaceable></option></arg>
106
 
      <sbr/>
107
 
      <arg><option>--debug</option></arg>
108
 
    </cmdsynopsis>
109
 
    <cmdsynopsis>
110
 
      <command>&COMMANDNAME;</command>
111
 
      <group choice="req">
112
 
        <arg choice="plain"><option>--help</option></arg>
113
 
        <arg choice="plain"><option>-?</option></arg>
114
 
      </group>
115
 
    </cmdsynopsis>
116
 
    <cmdsynopsis>
117
 
      <command>&COMMANDNAME;</command>
118
 
      <arg choice="plain"><option>--usage</option></arg>
119
 
    </cmdsynopsis>
120
 
    <cmdsynopsis>
121
 
      <command>&COMMANDNAME;</command>
122
 
      <group choice="req">
123
 
        <arg choice="plain"><option>--version</option></arg>
124
 
        <arg choice="plain"><option>-V</option></arg>
125
 
      </group>
126
 
    </cmdsynopsis>
127
 
  </refsynopsisdiv>
128
 
 
129
 
  <refsect1 id="description">
130
 
    <title>DESCRIPTION</title>
131
 
    <para>
132
 
      <command>&COMMANDNAME;</command> is a plugin runner that waits
133
 
      for any of its plugins to return sucessfull with a password, and
134
 
      passes it to cryptsetup as stdout message. This command is not
135
 
      meant to be invoked directly, but is instead meant to be run by
136
 
      cryptsetup by being specified in /etc/crypttab as a keyscript
137
 
      and subsequlently started in the initrd environment. See
138
 
      <citerefentry><refentrytitle>crypttab</refentrytitle>
139
 
      <manvolnum>5</manvolnum></citerefentry> for more information on
140
 
      keyscripts.
141
 
    </para>
142
 
 
143
 
    <para>
144
 
      plugins is looked for in the plugins directory which by default will be
145
 
      /conf/conf.d/mandos/plugins.d if not changed by option --plugin-dir.
146
 
    </para>
147
 
  </refsect1>
148
 
  <refsect1>
149
 
    <title>OPTIONS</title>
150
 
    <variablelist>
151
 
      <varlistentry>
152
 
        <term><option>--global-options
153
 
        <replaceable>OPTIONS</replaceable></option></term>
154
 
        <term><option>-g
155
 
        <replaceable>OPTIONS</replaceable></option></term>
156
 
        <listitem>
157
 
          <para>
158
 
            Global options given to all plugins as additional start
159
 
            arguments.  Options are specified with a -o flag followed
160
 
            by a comma separated string of options.
161
 
          </para>       
162
 
        </listitem>
163
 
      </varlistentry>
164
 
 
165
 
      <varlistentry>
166
 
        <term><option>--options-for
167
 
        <replaceable>PLUGIN</replaceable><literal>:</literal
168
 
        ><replaceable>OPTION</replaceable></option></term>
169
 
        <term><option>-o
170
 
        <replaceable>PLUGIN</replaceable><literal>:</literal
171
 
        ><replaceable>OPTION</replaceable></option></term>
172
 
        <listitem>
173
 
          <para>
174
 
            Plugin specific options given to the plugin as additional
175
 
            start arguments.  Options are specified with a -o flag
176
 
            followed by a comma separated string of options.
177
 
          </para>       
178
 
        </listitem>
179
 
      </varlistentry>
180
 
 
181
 
      <varlistentry>
182
 
        <term><option> --disable
183
 
        <replaceable>PLUGIN</replaceable></option></term>
184
 
        <term><option>-d
185
 
        <replaceable>PLUGIN</replaceable></option></term>
186
 
        <listitem>
187
 
          <para>
188
 
            Disable a specific plugin
189
 
          </para>       
190
 
        </listitem>
191
 
      </varlistentry>
192
 
 
193
 
      <varlistentry>
194
 
        <term><option>--groupid
195
 
        <replaceable>ID</replaceable></option></term>
196
 
        <listitem>
197
 
          <para>
198
 
            Group ID the plugins will run as
199
 
          </para>
200
 
        </listitem>
201
 
      </varlistentry>
202
 
 
203
 
      <varlistentry>
204
 
        <term><option>--userid
205
 
        <replaceable>ID</replaceable></option></term>
206
 
        <listitem>
207
 
          <para>
208
 
            User ID the plugins will run as
209
 
          </para>
210
 
        </listitem>
211
 
      </varlistentry>
212
 
 
213
 
      <varlistentry>
214
 
        <term><option>--plugin-dir
215
 
        <replaceable>DIRECTORY</replaceable></option></term>
216
 
        <listitem>
217
 
          <para>
218
 
            Specify a different plugin directory
219
 
          </para>
220
 
        </listitem>
221
 
      </varlistentry>
222
 
      
223
 
      <varlistentry>
224
 
        <term><option>--debug</option></term>
225
 
        <listitem>
226
 
          <para>
227
 
            Debug mode
228
 
          </para>
229
 
        </listitem>
230
 
      </varlistentry>
231
 
      
232
 
      <varlistentry>
233
 
        <term><option>--help</option></term>
234
 
        <term><option>-?</option></term>
235
 
        <listitem>
236
 
          <para>
237
 
            Gives a help message
238
 
          </para>
239
 
        </listitem>
240
 
      </varlistentry>
241
 
      
242
 
      <varlistentry>
243
 
        <term><option>--usage</option></term>
244
 
        <listitem>
245
 
          <para>
246
 
            Gives a short usage message
247
 
          </para>
248
 
        </listitem>
249
 
      </varlistentry>
250
 
 
251
 
      <varlistentry>
252
 
        <term><option>--version</option></term>
253
 
        <term><option>-V</option></term>
254
 
        <listitem>
255
 
          <para>
256
 
            Prints the program version
257
 
          </para>
258
 
        </listitem>
259
 
      </varlistentry>
260
 
    </variablelist>
261
 
  </refsect1>
262
 
 
263
 
  <refsect1 id="exit_status">
264
 
    <title>EXIT STATUS</title>
265
 
    <para>
266
 
    </para>
267
 
  </refsect1>
268
 
 
269
 
  <refsect1 id="file">
270
 
    <title>FILES</title>
271
 
    <para>
272
 
    </para>
273
 
  </refsect1>
274
 
 
275
 
  <refsect1 id="notes">
276
 
    <title>NOTES</title>
277
 
    <para>
278
 
    </para>
279
 
  </refsect1>
280
 
  
281
 
  <refsect1 id="bugs">
282
 
    <title>BUGS</title>
283
 
    <para>
284
 
    </para>
285
 
  </refsect1>
286
 
 
287
 
  <refsect1 id="examples">
288
 
    <title>EXAMPLE</title>
289
 
    <para>
290
 
    </para>
291
 
  </refsect1>
292
 
 
293
 
  <refsect1 id="security">
294
 
    <title>SECURITY</title>
295
 
    <para>
296
 
    </para>
297
 
  </refsect1>
298
 
 
299
 
  <refsect1 id="see_also">
300
 
    <title>SEE ALSO</title>
301
 
    <para>
302
 
      <citerefentry><refentrytitle>cryptsetup</refentrytitle>
303
 
      <manvolnum>8</manvolnum></citerefentry>,
304
 
      <citerefentry><refentrytitle>mandos</refentrytitle>
305
 
      <manvolnum>8</manvolnum></citerefentry>,
306
 
      <citerefentry><refentrytitle>password-prompt</refentrytitle>
307
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
308
 
      <citerefentry><refentrytitle>password-request</refentrytitle>
309
 
      <manvolnum>8mandos</manvolnum></citerefentry>
310
 
    </para>
311
 
  </refsect1>
312
 
 
313
 
</refentry>
314
 
<!-- Local Variables: -->
315
 
<!-- time-stamp-start: "<!ENTITY TIMESTAMP [\"']" -->
316
 
<!-- time-stamp-end: "[\"']>" -->
317
 
<!-- time-stamp-format: "%:y-%02m-%02d" -->
318
 
<!-- End: -->