/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 plugins.d/password-prompt.xml

  • Committer: Teddy Hogeborn
  • Date: 2008-08-29 05:53:59 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080829055359-wkdasnyxtylmnxus
* mandos.xml (EXAMPLE): Replaced all occurences of command name with
                        "&COMMANDNAME;".

* plugins.d/password-prompt.c (main): Improved some documentation
                                      strings.  Do perror() of
                                      tcgetattr() fails.  Add debug
                                      output if interrupted by signal.
                                      Loop over write() instead of
                                      using fwrite() when outputting
                                      password.  Add debug output if
                                      getline() returns 0, unless it
                                      was caused by a signal.  Add
                                      exit status code to debug
                                      output.

* plugins.d/password-prompt.xml: Changed all single quotes to double
                                 quotes for consistency.  Removed
                                 <?xml-stylesheet>.
  (ENTITY TIMESTAMP): New.  Automatically updated by Emacs time-stamp
                      by using Emacs local variables.
  (/refentry/refentryinfo/title): Changed to "Mandos Manual".
  (/refentry/refentryinfo/productname): Changed to "Mandos".
  (/refentry/refentryinfo/date): New; set to "&TIMESTAMP;".
  (/refentry/refentryinfo/copyright): Split copyright holders.
  (/refentry/refnamediv/refpurpose): Improved wording.
  (SYNOPSIS): Fix to use correct markup.  Add short options.
  (DESCRIPTION, OPTIONS): Improved wording.
  (OPTIONS): Improved wording.  Use more correct markup.  Document
             short options.
  (EXIT STATUS): Add text.
  (ENVIRONMENT): Document use of "cryptsource" and "crypttarget".
  (FILES): REMOVED.
  (BUGS): Add text.
  (EXAMPLE): Added some examples.
  (SECURITY): Added text.
  (SEE ALSO): Remove reference to mandos(8).  Add reference to
              crypttab(5).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<?xml version="1.0" encoding="UTF-8"?>
2
2
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3
3
        "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
 
4
<!ENTITY VERSION "1.0">
4
5
<!ENTITY COMMANDNAME "password-prompt">
5
 
<!ENTITY TIMESTAMP "2019-07-27">
6
 
<!ENTITY % common SYSTEM "../common.ent">
7
 
%common;
 
6
<!ENTITY TIMESTAMP "2008-08-29">
8
7
]>
9
8
 
10
 
<refentry xmlns:xi="http://www.w3.org/2001/XInclude">
 
9
<refentry>
11
10
  <refentryinfo>
12
11
    <title>Mandos Manual</title>
13
12
    <!-- NWalsh’s docbook scripts use this to generate the footer: -->
14
13
    <productname>Mandos</productname>
15
 
    <productnumber>&version;</productnumber>
 
14
    <productnumber>&VERSION;</productnumber>
16
15
    <date>&TIMESTAMP;</date>
17
16
    <authorgroup>
18
17
      <author>
19
18
        <firstname>Björn</firstname>
20
19
        <surname>Påhlsson</surname>
21
20
        <address>
22
 
          <email>belorn@recompile.se</email>
 
21
          <email>belorn@fukt.bsnet.se</email>
23
22
        </address>
24
23
      </author>
25
24
      <author>
26
25
        <firstname>Teddy</firstname>
27
26
        <surname>Hogeborn</surname>
28
27
        <address>
29
 
          <email>teddy@recompile.se</email>
 
28
          <email>teddy@fukt.bsnet.se</email>
30
29
        </address>
31
30
      </author>
32
31
    </authorgroup>
33
32
    <copyright>
34
33
      <year>2008</year>
35
 
      <year>2009</year>
36
 
      <year>2010</year>
37
 
      <year>2011</year>
38
 
      <year>2012</year>
39
 
      <year>2013</year>
40
 
      <year>2014</year>
41
 
      <year>2015</year>
42
 
      <year>2016</year>
43
 
      <year>2017</year>
44
 
      <year>2018</year>
45
 
      <year>2019</year>
46
34
      <holder>Teddy Hogeborn</holder>
47
35
      <holder>Björn Påhlsson</holder>
48
36
    </copyright>
49
 
    <xi:include href="../legalnotice.xml"/>
 
37
    <legalnotice>
 
38
      <para>
 
39
        This manual page is free software: you can redistribute it
 
40
        and/or modify it under the terms of the GNU General Public
 
41
        License as published by the Free Software Foundation,
 
42
        either version 3 of the License, or (at your option) any
 
43
        later version.
 
44
      </para>
 
45
      
 
46
      <para>
 
47
        This manual page is distributed in the hope that it will
 
48
        be useful, but WITHOUT ANY WARRANTY; without even the
 
49
        implied warranty of MERCHANTABILITY or FITNESS FOR A
 
50
        PARTICULAR PURPOSE.  See the GNU General Public License
 
51
        for more details.
 
52
      </para>
 
53
      
 
54
      <para>
 
55
        You should have received a copy of the GNU General Public
 
56
        License along with this program; If not, see
 
57
        <ulink url="http://www.gnu.org/licenses/"/>.
 
58
      </para>
 
59
    </legalnotice>
50
60
  </refentryinfo>
51
61
  
52
62
  <refmeta>
63
73
    <cmdsynopsis>
64
74
      <command>&COMMANDNAME;</command>
65
75
      <group choice="opt">
66
 
        <arg choice="plain"><option>--prefix <replaceable
 
76
        <arg choice="plain"><option>-p <replaceable
67
77
        >PREFIX</replaceable></option></arg>
68
 
        <arg choice="plain"><option>-p </option><replaceable
 
78
        <arg choice="plain"><option>--prefix </option><replaceable
69
79
        >PREFIX</replaceable></arg>
70
80
      </group>
71
 
      <sbr/>
72
 
      <arg choice="opt">
73
 
        <option>--prompt <replaceable>PROMPT</replaceable></option>
74
 
      </arg>
75
81
      <arg choice="opt"><option>--debug</option></arg>
76
82
    </cmdsynopsis>
77
83
    <cmdsynopsis>
78
84
      <command>&COMMANDNAME;</command>
79
85
      <group choice="req">
 
86
        <arg choice="plain"><option>-?</option></arg>
80
87
        <arg choice="plain"><option>--help</option></arg>
81
 
        <arg choice="plain"><option>-?</option></arg>
82
88
      </group>
83
89
    </cmdsynopsis>
84
90
    <cmdsynopsis>
88
94
    <cmdsynopsis>
89
95
      <command>&COMMANDNAME;</command>
90
96
      <group choice="req">
 
97
        <arg choice="plain"><option>-V</option></arg>
91
98
        <arg choice="plain"><option>--version</option></arg>
92
 
        <arg choice="plain"><option>-V</option></arg>
93
99
      </group>
94
 
    </cmdsynopsis>
 
100
    </cmdsynopsis>    
95
101
  </refsynopsisdiv>
96
102
  
97
103
  <refsect1 id="description">
98
104
    <title>DESCRIPTION</title>
99
105
    <para>
100
106
      All <command>&COMMANDNAME;</command> does is prompt for a
101
 
      password and output any given password to standard output.
102
 
    </para>
103
 
    <para>
104
 
      This program is not very useful on its own.  This program is
105
 
      really meant to run as a plugin in the <application
106
 
      >Mandos</application> client-side system, where it is used as a
107
 
      fallback and alternative to retrieving passwords from a
108
 
      <application >Mandos</application> server.
 
107
      password and output any given password to standard output.  This
 
108
      is not very useful on its own.  This program is really meant to
 
109
      run as a plugin in the <application>Mandos</application>
 
110
      client-side system, where it is used as a fallback and
 
111
      alternative to retriving passwords from a <application
 
112
      >Mandos</application> server.
109
113
    </para>
110
114
    <para>
111
115
      This program is little more than a <citerefentry><refentrytitle
113
117
      wrapper, although actual use of that function is not guaranteed
114
118
      or implied.
115
119
    </para>
116
 
    <para>
117
 
      This program tries to detect if a Plymouth daemon
118
 
      (<citerefentry><refentrytitle
119
 
      >plymouthd</refentrytitle><manvolnum>8</manvolnum></citerefentry>)
120
 
      is running, by looking for a
121
 
      <filename>/run/plymouth/pid</filename> file or a process named
122
 
      <quote><literal>plymouthd</literal></quote>.  If it is detected,
123
 
      this process will immediately exit without doing anything.
124
 
    </para>
125
120
  </refsect1>
126
121
  
127
122
  <refsect1 id="options">
138
133
    
139
134
    <variablelist>
140
135
      <varlistentry>
141
 
        <term><option>--prefix=<replaceable
142
 
        >PREFIX</replaceable></option></term>
143
 
        <term><option>-p
144
 
        <replaceable>PREFIX</replaceable></option></term>
 
136
        <term><option>-p</option> <replaceable>PREFIX</replaceable
 
137
        ></term>
 
138
        <term><option>--prefix=</option><replaceable
 
139
        >PREFIX</replaceable></term>
145
140
        <listitem>
146
141
          <para>
147
142
            Prefix string shown before the password prompt.
150
145
      </varlistentry>
151
146
      
152
147
      <varlistentry>
153
 
        <term><option>--prompt=<replaceable
154
 
        >PROMPT</replaceable></option></term>
155
 
        <listitem>
156
 
          <para>
157
 
            The password prompt.  Using this option will make this
158
 
            program ignore the <envar>CRYPTTAB_SOURCE</envar> and
159
 
            <envar>CRYPTTAB_NAME</envar> environment variables.
160
 
          </para>
161
 
        </listitem>
162
 
      </varlistentry>
163
 
      
164
 
      <varlistentry>
165
148
        <term><option>--debug</option></term>
166
149
        <listitem>
167
150
          <para>
173
156
      </varlistentry>
174
157
      
175
158
      <varlistentry>
 
159
        <term><option>-?</option></term>
176
160
        <term><option>--help</option></term>
177
 
        <term><option>-?</option></term>
178
161
        <listitem>
179
162
          <para>
180
163
            Gives a help message about options and their meanings.
192
175
      </varlistentry>
193
176
      
194
177
      <varlistentry>
 
178
        <term><option>-V</option></term>
195
179
        <term><option>--version</option></term>
196
 
        <term><option>-V</option></term>
197
180
        <listitem>
198
181
          <para>
199
182
            Prints the program version.
200
183
          </para>
201
184
        </listitem>
202
 
      </varlistentry>
 
185
      </varlistentry>            
203
186
    </variablelist>
204
187
  </refsect1>
205
188
  
217
200
    <title>ENVIRONMENT</title>
218
201
    <variablelist>
219
202
      <varlistentry>
220
 
        <term><envar>CRYPTTAB_SOURCE</envar></term>
221
 
        <term><envar>CRYPTTAB_NAME</envar></term>
 
203
        <term><envar>cryptsource</envar></term>
 
204
        <term><envar>crypttarget</envar></term>
222
205
        <listitem>
223
206
          <para>
224
 
            If set, and if the <option>--prompt</option> option is not
225
 
            used, these environment variables will be assumed to
 
207
            If set, these environment variables will be assumed to
226
208
            contain the source device name and the target device
227
209
            mapper name, respectively, and will be shown as part of
228
210
            the prompt.
230
212
        <para>
231
213
          These variables will normally be inherited from
232
214
          <citerefentry><refentrytitle>plugin-runner</refentrytitle>
233
 
          <manvolnum>8mandos</manvolnum></citerefentry>, which might
234
 
          have in turn inherited them from its calling process.
 
215
          <manvolnum>8mandos</manvolnum></citerefentry>, which will
 
216
          normally have inherited them from
 
217
          <filename>/scripts/local-top/cryptroot</filename> in the
 
218
          initial RAM disk environment, which will have set them from
 
219
          parsing kernel arguments and
 
220
          <filename>/conf/conf.d/cryptroot</filename> (also in the
 
221
          initial RAM disk environment), which in turn will have been
 
222
          created when the initial RAM disk image was created by
 
223
          <filename
 
224
          >/usr/share/initramfs-tools/hooks/cryptroot</filename>, by
 
225
          extracting the information of the root file system from
 
226
          <filename >/etc/crypttab</filename>.
235
227
        </para>
236
228
        <para>
237
229
          This behavior is meant to exactly mirror the behavior of
238
 
          <command>askpass</command>, the default password prompter
239
 
          from initramfs-tools.
 
230
          <command>askpass</command>, the default password prompter.
240
231
        </para>
241
232
        </listitem>
242
233
      </varlistentry>
245
236
  
246
237
  <refsect1 id="bugs">
247
238
    <title>BUGS</title>
248
 
    <xi:include href="../bugs.xml"/>
249
 
  </refsect1>
 
239
    <para>
 
240
      None are known at this time.
 
241
    </para>
 
242
  </refsect1>  
250
243
  
251
244
  <refsect1 id="example">
252
245
    <title>EXAMPLE</title>
268
261
      <para>
269
262
        Show a prefix before the prompt; in this case, a host name.
270
263
        It might be useful to be reminded of which host needs a
271
 
        password, in case of <acronym>KVM</acronym> switches, etc.
 
264
        password, in case of KVM switches, etc.
272
265
      </para>
273
266
      <para>
274
267
 
298
291
      >plugin-runner</refentrytitle><manvolnum>8mandos</manvolnum>
299
292
      </citerefentry>, and will, when run standalone, outside, in a
300
293
      normal environment, immediately output on its standard output
301
 
      any presumably secret password it just received.  Therefore,
 
294
      any presumably secret password it just recieved.  Therefore,
302
295
      when running this program standalone (which should never
303
296
      normally be done), take care not to type in any real secret
304
297
      password by force of habit, since it would then immediately be
316
309
  <refsect1 id="see_also">
317
310
    <title>SEE ALSO</title>
318
311
    <para>
319
 
      <citerefentry><refentrytitle>intro</refentrytitle>
320
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
321
 
      <citerefentry><refentrytitle>mandos-client</refentrytitle>
322
 
      <manvolnum>8mandos</manvolnum></citerefentry>,
 
312
      <citerefentry><refentrytitle>crypttab</refentrytitle>
 
313
      <manvolnum>5</manvolnum></citerefentry>
 
314
      <citerefentry><refentrytitle>password-request</refentrytitle>
 
315
      <manvolnum>8mandos</manvolnum></citerefentry>
323
316
      <citerefentry><refentrytitle>plugin-runner</refentrytitle>
324
317
      <manvolnum>8mandos</manvolnum></citerefentry>,
325
 
      <citerefentry><refentrytitle>plymouthd</refentrytitle>
326
 
      <manvolnum>8</manvolnum></citerefentry>
327
318
    </para>
328
319
  </refsect1>
329
320
</refentry>