/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 mandos-ctl.xml

  • Committer: Teddy Hogeborn
  • Date: 2016-03-17 20:40:55 UTC
  • Revision ID: teddy@recompile.se-20160317204055-bhsh5xsidq7w5cxu
Client: Fix plymouth agent; broken since 1.7.2.

Fix an very old memory bug in the plymouth agent (which has been
present since its apperance in version 1.2), but which was only
recently detected at run time due to the new -fsanitize=address
compile- time flag, which has been used since version 1.7.2.  This
detection of a memory access violation causes the program to abort,
making the Plymouth graphical boot system unable to accept interactive
input of passwords when using the Mandos client.

* plugins.d/plymouth.c (exec_and_wait): Fix memory allocation bug when
  allocating new_argv.  Also tolerate a zero-length argv.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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
4
<!ENTITY COMMANDNAME "mandos-ctl">
5
 
<!ENTITY TIMESTAMP "2019-07-29">
 
5
<!ENTITY TIMESTAMP "2016-03-05">
6
6
<!ENTITY % common SYSTEM "common.ent">
7
7
%common;
8
8
]>
38
38
      <year>2014</year>
39
39
      <year>2015</year>
40
40
      <year>2016</year>
41
 
      <year>2017</year>
42
 
      <year>2018</year>
43
 
      <year>2019</year>
44
41
      <holder>Teddy Hogeborn</holder>
45
42
      <holder>Björn Påhlsson</holder>
46
43
    </copyright>
55
52
  <refnamediv>
56
53
    <refname><command>&COMMANDNAME;</command></refname>
57
54
    <refpurpose>
58
 
      Control or query the operation of the Mandos server
 
55
      Control the operation of the Mandos server
59
56
    </refpurpose>
60
57
  </refnamediv>
61
58
  
63
60
    <cmdsynopsis>
64
61
      <command>&COMMANDNAME;</command>
65
62
      <group>
66
 
          <arg choice="plain"><option>--verbose</option></arg>
67
 
          <arg choice="plain"><option>-v</option></arg>
68
 
          <sbr/>
69
 
          <arg choice="plain"><option>--dump-json</option></arg>
70
 
          <arg choice="plain"><option>-j</option></arg>
71
 
      </group>
72
 
      <arg><option>--debug</option></arg>
73
 
      <group>
74
 
        <arg rep='repeat' choice='plain'>
75
 
          <replaceable>CLIENT</replaceable>
76
 
        </arg>
77
 
      </group>
78
 
    </cmdsynopsis>
79
 
    <cmdsynopsis>
80
 
      <command>&COMMANDNAME;</command>
81
 
      <group choice="req">
82
 
        <group>
83
 
          <arg choice="plain"><option>--enable</option></arg>
84
 
          <arg choice="plain"><option>-e</option></arg>
85
 
          <sbr/>
86
 
          <arg choice="plain"><option>--disable</option></arg>
87
 
          <arg choice="plain"><option>-d</option></arg>
88
 
        </group>
89
 
        <sbr/>
90
 
        <group>
91
 
          <arg choice="plain"><option>--bump-timeout</option></arg>
92
 
          <arg choice="plain"><option>-b</option></arg>
93
 
        </group>
94
 
        <sbr/>
95
 
        <group>
96
 
          <arg choice="plain"><option>--start-checker</option></arg>
97
 
          <arg choice="plain"><option>--stop-checker</option></arg>
98
 
        </group>
99
 
        <sbr/>
100
 
        <group>
101
 
          <arg choice="plain"><option>--checker
102
 
          <replaceable>COMMAND</replaceable></option></arg>
103
 
          <arg choice="plain"><option>-c
104
 
          <replaceable>COMMAND</replaceable></option></arg>
105
 
        </group>
106
 
        <sbr/>
107
 
        <group>
108
 
          <arg choice="plain"><option>--timeout
109
 
          <replaceable>TIME</replaceable></option></arg>
110
 
          <arg choice="plain"><option>-t
111
 
          <replaceable>TIME</replaceable></option></arg>
112
 
        </group>
113
 
        <sbr/>
114
 
        <group>
115
 
          <arg choice="plain"><option>--extended-timeout
116
 
          <replaceable>TIME</replaceable></option></arg>
117
 
        </group>
118
 
        <sbr/>
119
 
        <group>
120
 
          <arg choice="plain"><option>--interval
121
 
          <replaceable>TIME</replaceable></option></arg>
122
 
          <arg choice="plain"><option>-i
123
 
          <replaceable>TIME</replaceable></option></arg>
124
 
        </group>
125
 
        <sbr/>
126
 
        <group>
127
 
          <arg choice="plain"><option>--approve-by-default</option
128
 
          ></arg>
129
 
          <sbr/>
130
 
          <arg choice="plain"><option>--deny-by-default</option></arg>
131
 
        </group>
132
 
        <sbr/>
133
 
        <group>
134
 
          <arg choice="plain"><option>--approval-delay
135
 
          <replaceable>TIME</replaceable></option></arg>
136
 
        </group>
137
 
        <sbr/>
138
 
        <group>
139
 
          <arg choice="plain"><option>--approval-duration
140
 
          <replaceable>TIME</replaceable></option></arg>
141
 
        </group>
142
 
        <sbr/>
143
 
        <group>
144
 
          <arg choice="plain"><option>--host
145
 
          <replaceable>STRING</replaceable></option></arg>
146
 
          <arg choice="plain"><option>-H
147
 
          <replaceable>STRING</replaceable></option></arg>
148
 
        </group>
149
 
        <sbr/>
150
 
        <group>
151
 
          <arg choice="plain"><option>--secret
152
 
          <replaceable>FILENAME</replaceable></option></arg>
153
 
          <arg choice="plain"><option>-s
154
 
          <replaceable>FILENAME</replaceable></option></arg>
155
 
        </group>
156
 
        <sbr/>
157
 
        <group>
158
 
          <arg choice="plain"><option>--approve</option></arg>
159
 
          <arg choice="plain"><option>-A</option></arg>
160
 
          <sbr/>
161
 
          <arg choice="plain"><option>--deny</option></arg>
162
 
          <arg choice="plain"><option>-D</option></arg>
163
 
        </group>
164
 
      </group>
165
 
      <sbr/>
166
 
      <arg><option>--debug</option></arg>
167
 
      <group choice="req">
168
 
        <arg choice="plain"><option>--all</option></arg>
169
 
        <arg choice="plain"><option>-a</option></arg>
170
 
        <arg rep='repeat' choice='plain'>
171
 
          <replaceable>CLIENT</replaceable>
172
 
        </arg>
173
 
      </group>
174
 
    </cmdsynopsis>
175
 
    <cmdsynopsis>
176
 
      <command>&COMMANDNAME;</command>
177
 
      <group>
 
63
        <arg choice="plain"><option>--enable</option></arg>
 
64
        <arg choice="plain"><option>-e</option></arg>
 
65
        <sbr/>
 
66
        <arg choice="plain"><option>--disable</option></arg>
 
67
        <arg choice="plain"><option>-d</option></arg>
 
68
      </group>
 
69
      <sbr/>
 
70
      <group>
 
71
        <arg choice="plain"><option>--bump-timeout</option></arg>
 
72
        <arg choice="plain"><option>-b</option></arg>
 
73
      </group>
 
74
      <sbr/>
 
75
      <group>
 
76
        <arg choice="plain"><option>--start-checker</option></arg>
 
77
      </group>
 
78
      <sbr/>
 
79
      <group>
 
80
        <arg choice="plain"><option>--stop-checker</option></arg>
 
81
      </group>
 
82
      <sbr/>
 
83
      <group>
 
84
        <arg choice="plain"><option>--remove</option></arg>
 
85
        <arg choice="plain"><option>-r</option></arg>
 
86
      </group>
 
87
      <sbr/>
 
88
      <group>
 
89
        <arg choice="plain"><option>--checker
 
90
        <replaceable>COMMAND</replaceable></option></arg>
 
91
        <arg choice="plain"><option>-c
 
92
        <replaceable>COMMAND</replaceable></option></arg>
 
93
      </group>
 
94
      <sbr/>
 
95
      <group>
 
96
        <arg choice="plain"><option>--timeout
 
97
        <replaceable>TIME</replaceable></option></arg>
 
98
        <arg choice="plain"><option>-t
 
99
        <replaceable>TIME</replaceable></option></arg>
 
100
      </group>
 
101
      <sbr/>
 
102
      <group>
 
103
        <arg choice="plain"><option>--extended-timeout
 
104
        <replaceable>TIME</replaceable></option></arg>
 
105
      </group>
 
106
      <sbr/>
 
107
      <group>
 
108
        <arg choice="plain"><option>--interval
 
109
        <replaceable>TIME</replaceable></option></arg>
 
110
        <arg choice="plain"><option>-i
 
111
        <replaceable>TIME</replaceable></option></arg>
 
112
      </group>
 
113
      <sbr/>
 
114
      <group>
 
115
        <arg choice="plain"><option>--approve-by-default</option
 
116
        ></arg>
 
117
        <sbr/>
 
118
        <arg choice="plain"><option>--deny-by-default</option></arg>
 
119
      </group>
 
120
      <sbr/>
 
121
      <group>
 
122
        <arg choice="plain"><option>--approval-delay
 
123
        <replaceable>TIME</replaceable></option></arg>
 
124
      </group>
 
125
      <sbr/>
 
126
      <group>
 
127
        <arg choice="plain"><option>--approval-duration
 
128
        <replaceable>TIME</replaceable></option></arg>
 
129
      </group>
 
130
      <sbr/>
 
131
      <group>
 
132
        <arg choice="plain"><option>--interval
 
133
        <replaceable>TIME</replaceable></option></arg>
 
134
        <arg choice="plain"><option>-i
 
135
        <replaceable>TIME</replaceable></option></arg>
 
136
      </group>
 
137
      <sbr/>
 
138
      <group>
 
139
        <arg choice="plain"><option>--host
 
140
        <replaceable>STRING</replaceable></option></arg>
 
141
        <arg choice="plain"><option>-H
 
142
        <replaceable>STRING</replaceable></option></arg>
 
143
      </group>
 
144
      <sbr/>
 
145
      <group>
 
146
        <arg choice="plain"><option>--secret
 
147
        <replaceable>FILENAME</replaceable></option></arg>
 
148
        <arg choice="plain"><option>-s
 
149
        <replaceable>FILENAME</replaceable></option></arg>
 
150
      </group>
 
151
      <sbr/>
 
152
      <group>
 
153
        <arg choice="plain"><option>--approve</option></arg>
 
154
        <arg choice="plain"><option>-A</option></arg>
 
155
        <sbr/>
178
156
        <arg choice="plain"><option>--deny</option></arg>
179
157
        <arg choice="plain"><option>-D</option></arg>
180
158
      </group>
181
 
      <group choice="req">
182
 
          <arg choice="plain"><option>--remove</option></arg>
183
 
          <arg choice="plain"><option>-r</option></arg>
184
 
      </group>
185
159
      <sbr/>
186
 
      <arg><option>--debug</option></arg>
187
160
      <group choice="req">
188
161
        <arg choice="plain"><option>--all</option></arg>
189
162
        <arg choice="plain"><option>-a</option></arg>
194
167
    </cmdsynopsis>
195
168
    <cmdsynopsis>
196
169
      <command>&COMMANDNAME;</command>
 
170
      <group>
 
171
        <arg choice="plain"><option>--verbose</option></arg>
 
172
        <arg choice="plain"><option>-v</option></arg>
 
173
      </group>
 
174
      <group>
 
175
        <arg rep='repeat' choice='plain'>
 
176
          <replaceable>CLIENT</replaceable>
 
177
        </arg>
 
178
      </group>
 
179
    </cmdsynopsis>
 
180
    <cmdsynopsis>
 
181
      <command>&COMMANDNAME;</command>
197
182
      <group choice="req">
198
183
        <arg choice="plain"><option>--is-enabled</option></arg>
199
184
        <arg choice="plain"><option>-V</option></arg>
200
185
      </group>
201
 
      <arg><option>--debug</option></arg>
202
186
      <arg choice='plain'><replaceable>CLIENT</replaceable></arg>
203
187
    </cmdsynopsis>
204
188
    <cmdsynopsis>
224
208
  <refsect1 id="description">
225
209
    <title>DESCRIPTION</title>
226
210
    <para>
227
 
      <command>&COMMANDNAME;</command> is a program to control or
228
 
      query the operation of the Mandos server
229
 
      <citerefentry><refentrytitle>mandos</refentrytitle><manvolnum
230
 
      >8</manvolnum></citerefentry>.
 
211
      <command>&COMMANDNAME;</command> is a program to control the
 
212
      operation of the Mandos server <citerefentry><refentrytitle
 
213
      >mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
231
214
    </para>
232
215
    <para>
233
216
      This program can be used to change client settings, approve or
491
474
      </varlistentry>
492
475
      
493
476
      <varlistentry>
494
 
        <term><option>--dump-json</option></term>
495
 
        <term><option>-j</option></term>
496
 
        <listitem>
497
 
          <para>
498
 
            Dump client settings as JSON to standard output.
499
 
          </para>
500
 
        </listitem>
501
 
      </varlistentry>
502
 
      
503
 
      <varlistentry>
504
477
        <term><option>--is-enabled</option></term>
505
478
        <term><option>-V</option></term>
506
479
        <listitem>
512
485
      </varlistentry>
513
486
      
514
487
      <varlistentry>
515
 
        <term><option>--debug</option></term>
516
 
        <listitem>
517
 
          <para>
518
 
            Show debug output; currently, this means show D-Bus calls.
519
 
          </para>
520
 
        </listitem>
521
 
      </varlistentry>
522
 
      
523
 
      <varlistentry>
524
488
        <term><option>--check</option></term>
525
489
        <listitem>
526
490
          <para>
557
521
  
558
522
  <refsect1 id="example">
559
523
    <title>EXAMPLE</title>
560
 
    <!-- Name of test methods in class Test_commands_from_options are
561
 
         written in comments below.  When adding an example, add a
562
 
         test too which tests the documented behavior. -->
563
524
    <informalexample>
564
 
      <!-- Test method: test_manual_page_example_1() -->
565
525
      <para>
566
526
        To list all clients:
567
527
      </para>
571
531
    </informalexample>
572
532
    
573
533
    <informalexample>
574
 
      <!-- Test method: test_manual_page_example_2() -->
575
534
      <para>
576
535
        To list <emphasis>all</emphasis> settings for the clients
577
536
        named <quote>foo1.example.org</quote> and <quote
586
545
    </informalexample>
587
546
    
588
547
    <informalexample>
589
 
      <!-- Test method: test_manual_page_example_3() -->
590
548
      <para>
591
549
        To enable all clients:
592
550
      </para>
596
554
    </informalexample>
597
555
    
598
556
    <informalexample>
599
 
      <!-- Test method: test_manual_page_example_4() -->
600
557
      <para>
601
558
        To change timeout and interval value for the clients
602
559
        named <quote>foo1.example.org</quote> and <quote
605
562
      <para>
606
563
 
607
564
<!-- do not wrap this line -->
608
 
<userinput>&COMMANDNAME; --timeout=PT5M --interval=PT1M foo1.example.org foo2.example.org</userinput>
 
565
<userinput>&COMMANDNAME; --timeout="5m" --interval="1m" foo1.example.org foo2.example.org</userinput>
609
566
 
610
567
      </para>
611
568
    </informalexample>
612
569
    
613
570
    <informalexample>
614
 
      <!-- Test method: test_manual_page_example_5() -->
615
571
      <para>
616
 
        To approve all clients currently waiting for approval:
 
572
        To approve all clients currently waiting for it:
617
573
      </para>
618
574
      <para>
619
575
        <userinput>&COMMANDNAME; --approve --all</userinput>