/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: 2019-03-03 22:09:38 UTC
  • Revision ID: teddy@recompile.se-20190303220938-92e8q07rtjdnpjh6
mandos-ctl: Refactor

* mandos-ctl (commands_and_clients_from_options): Take options as an
                                                  argument.  Move
                                                  parser setup into
                                                  new function and
                                                  move extra parse
                                                  checking into main.
  (add_command_line_options): New.
  (main): Create parser here and call add_command_line_options() to
          add options to it.

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 "2011-10-03">
 
5
<!ENTITY TIMESTAMP "2019-02-10">
6
6
<!ENTITY % common SYSTEM "common.ent">
7
7
%common;
8
8
]>
33
33
    <copyright>
34
34
      <year>2010</year>
35
35
      <year>2011</year>
 
36
      <year>2012</year>
 
37
      <year>2013</year>
 
38
      <year>2014</year>
 
39
      <year>2015</year>
 
40
      <year>2016</year>
 
41
      <year>2017</year>
 
42
      <year>2018</year>
 
43
      <year>2019</year>
36
44
      <holder>Teddy Hogeborn</holder>
37
45
      <holder>Björn Påhlsson</holder>
38
46
    </copyright>
47
55
  <refnamediv>
48
56
    <refname><command>&COMMANDNAME;</command></refname>
49
57
    <refpurpose>
50
 
      Control the operation of the Mandos server
 
58
      Control or query the operation of the Mandos server
51
59
    </refpurpose>
52
60
  </refnamediv>
53
61
  
54
62
  <refsynopsisdiv>
55
63
    <cmdsynopsis>
56
64
      <command>&COMMANDNAME;</command>
57
 
      <group>
58
 
        <arg choice="plain"><option>--enable</option></arg>
59
 
        <arg choice="plain"><option>-e</option></arg>
60
 
        <sbr/>
61
 
        <arg choice="plain"><option>--disable</option></arg>
62
 
        <arg choice="plain"><option>-d</option></arg>
63
 
      </group>
64
 
      <sbr/>
65
 
      <group>
66
 
        <arg choice="plain"><option>--bump-timeout</option></arg>
67
 
        <arg choice="plain"><option>-b</option></arg>
68
 
      </group>
69
 
      <sbr/>
70
 
      <group>
71
 
        <arg choice="plain"><option>--start-checker</option></arg>
72
 
      </group>
73
 
      <sbr/>
74
 
      <group>
75
 
        <arg choice="plain"><option>--stop-checker</option></arg>
76
 
      </group>
77
 
      <sbr/>
78
 
      <group>
79
 
        <arg choice="plain"><option>--remove</option></arg>
80
 
        <arg choice="plain"><option>-r</option></arg>
81
 
      </group>
82
 
      <sbr/>
83
 
      <group>
84
 
        <arg choice="plain"><option>--checker
85
 
        <replaceable>COMMAND</replaceable></option></arg>
86
 
        <arg choice="plain"><option>-c
87
 
        <replaceable>COMMAND</replaceable></option></arg>
88
 
      </group>
89
 
      <sbr/>
90
 
      <group>
91
 
        <arg choice="plain"><option>--timeout
92
 
        <replaceable>TIME</replaceable></option></arg>
93
 
        <arg choice="plain"><option>-t
94
 
        <replaceable>TIME</replaceable></option></arg>
95
 
      </group>
96
 
      <sbr/>
97
 
      <group>
98
 
        <arg choice="plain"><option>--extended-timeout
99
 
        <replaceable>TIME</replaceable></option></arg>
100
 
      </group>
101
 
      <sbr/>
102
 
      <group>
103
 
        <arg choice="plain"><option>--interval
104
 
        <replaceable>TIME</replaceable></option></arg>
105
 
        <arg choice="plain"><option>-i
106
 
        <replaceable>TIME</replaceable></option></arg>
107
 
      </group>
108
 
      <sbr/>
109
 
      <group>
110
 
        <arg choice="plain"><option>--approve-by-default</option
111
 
        ></arg>
112
 
        <sbr/>
113
 
        <arg choice="plain"><option>--deny-by-default</option></arg>
114
 
      </group>
115
 
      <sbr/>
116
 
      <group>
117
 
        <arg choice="plain"><option>--approval-delay
118
 
        <replaceable>TIME</replaceable></option></arg>
119
 
      </group>
120
 
      <sbr/>
121
 
      <group>
122
 
        <arg choice="plain"><option>--approval-duration
123
 
        <replaceable>TIME</replaceable></option></arg>
124
 
      </group>
125
 
      <sbr/>
126
 
      <group>
127
 
        <arg choice="plain"><option>--interval
128
 
        <replaceable>TIME</replaceable></option></arg>
129
 
        <arg choice="plain"><option>-i
130
 
        <replaceable>TIME</replaceable></option></arg>
131
 
      </group>
132
 
      <sbr/>
133
 
      <group>
134
 
        <arg choice="plain"><option>--host
135
 
        <replaceable>STRING</replaceable></option></arg>
136
 
        <arg choice="plain"><option>-H
137
 
        <replaceable>STRING</replaceable></option></arg>
138
 
      </group>
139
 
      <sbr/>
140
 
      <group>
141
 
        <arg choice="plain"><option>--secret
142
 
        <replaceable>FILENAME</replaceable></option></arg>
143
 
        <arg choice="plain"><option>-s
144
 
        <replaceable>FILENAME</replaceable></option></arg>
145
 
      </group>
146
 
      <sbr/>
147
 
      <group>
148
 
        <arg choice="plain"><option>--approve</option></arg>
149
 
        <arg choice="plain"><option>-A</option></arg>
150
 
        <sbr/>
151
 
        <arg choice="plain"><option>--deny</option></arg>
152
 
        <arg choice="plain"><option>-D</option></arg>
 
65
      <group choice="req">
 
66
        <group>
 
67
          <arg choice="plain"><option>--enable</option></arg>
 
68
          <arg choice="plain"><option>-e</option></arg>
 
69
          <sbr/>
 
70
          <arg choice="plain"><option>--disable</option></arg>
 
71
          <arg choice="plain"><option>-d</option></arg>
 
72
        </group>
 
73
        <sbr/>
 
74
        <group>
 
75
          <arg choice="plain"><option>--bump-timeout</option></arg>
 
76
          <arg choice="plain"><option>-b</option></arg>
 
77
        </group>
 
78
        <sbr/>
 
79
        <group>
 
80
          <arg choice="plain"><option>--start-checker</option></arg>
 
81
        </group>
 
82
        <sbr/>
 
83
        <group>
 
84
          <arg choice="plain"><option>--stop-checker</option></arg>
 
85
        </group>
 
86
        <sbr/>
 
87
        <group>
 
88
          <arg choice="plain"><option>--remove</option></arg>
 
89
          <arg choice="plain"><option>-r</option></arg>
 
90
        </group>
 
91
        <sbr/>
 
92
        <group>
 
93
          <arg choice="plain"><option>--checker
 
94
          <replaceable>COMMAND</replaceable></option></arg>
 
95
          <arg choice="plain"><option>-c
 
96
          <replaceable>COMMAND</replaceable></option></arg>
 
97
        </group>
 
98
        <sbr/>
 
99
        <group>
 
100
          <arg choice="plain"><option>--timeout
 
101
          <replaceable>TIME</replaceable></option></arg>
 
102
          <arg choice="plain"><option>-t
 
103
          <replaceable>TIME</replaceable></option></arg>
 
104
        </group>
 
105
        <sbr/>
 
106
        <group>
 
107
          <arg choice="plain"><option>--extended-timeout
 
108
          <replaceable>TIME</replaceable></option></arg>
 
109
        </group>
 
110
        <sbr/>
 
111
        <group>
 
112
          <arg choice="plain"><option>--interval
 
113
          <replaceable>TIME</replaceable></option></arg>
 
114
          <arg choice="plain"><option>-i
 
115
          <replaceable>TIME</replaceable></option></arg>
 
116
        </group>
 
117
        <sbr/>
 
118
        <group>
 
119
          <arg choice="plain"><option>--approve-by-default</option
 
120
          ></arg>
 
121
          <sbr/>
 
122
          <arg choice="plain"><option>--deny-by-default</option></arg>
 
123
        </group>
 
124
        <sbr/>
 
125
        <group>
 
126
          <arg choice="plain"><option>--approval-delay
 
127
          <replaceable>TIME</replaceable></option></arg>
 
128
        </group>
 
129
        <sbr/>
 
130
        <group>
 
131
          <arg choice="plain"><option>--approval-duration
 
132
          <replaceable>TIME</replaceable></option></arg>
 
133
        </group>
 
134
        <sbr/>
 
135
        <group>
 
136
          <arg choice="plain"><option>--interval
 
137
          <replaceable>TIME</replaceable></option></arg>
 
138
          <arg choice="plain"><option>-i
 
139
          <replaceable>TIME</replaceable></option></arg>
 
140
        </group>
 
141
        <sbr/>
 
142
        <group>
 
143
          <arg choice="plain"><option>--host
 
144
          <replaceable>STRING</replaceable></option></arg>
 
145
          <arg choice="plain"><option>-H
 
146
          <replaceable>STRING</replaceable></option></arg>
 
147
        </group>
 
148
        <sbr/>
 
149
        <group>
 
150
          <arg choice="plain"><option>--secret
 
151
          <replaceable>FILENAME</replaceable></option></arg>
 
152
          <arg choice="plain"><option>-s
 
153
          <replaceable>FILENAME</replaceable></option></arg>
 
154
        </group>
 
155
        <sbr/>
 
156
        <group>
 
157
          <arg choice="plain"><option>--approve</option></arg>
 
158
          <arg choice="plain"><option>-A</option></arg>
 
159
          <sbr/>
 
160
          <arg choice="plain"><option>--deny</option></arg>
 
161
          <arg choice="plain"><option>-D</option></arg>
 
162
        </group>
153
163
      </group>
154
164
      <sbr/>
155
165
      <group choice="req">
163
173
    <cmdsynopsis>
164
174
      <command>&COMMANDNAME;</command>
165
175
      <group>
166
 
        <arg choice="plain"><option>--verbose</option></arg>
167
 
        <arg choice="plain"><option>-v</option></arg>
 
176
          <arg choice="plain"><option>--verbose</option></arg>
 
177
          <arg choice="plain"><option>-v</option></arg>
 
178
          <sbr/>
 
179
          <arg choice="plain"><option>--dump-json</option></arg>
 
180
          <arg choice="plain"><option>-j</option></arg>
168
181
      </group>
169
182
      <group>
170
183
        <arg rep='repeat' choice='plain'>
194
207
        <arg choice="plain"><option>-v</option></arg>
195
208
      </group>
196
209
    </cmdsynopsis>
 
210
    <cmdsynopsis>
 
211
      <command>&COMMANDNAME;</command>
 
212
      <arg choice="plain"><option>--check</option></arg>
 
213
    </cmdsynopsis>
197
214
  </refsynopsisdiv>
198
215
  
199
216
  <refsect1 id="description">
200
217
    <title>DESCRIPTION</title>
201
218
    <para>
202
 
      <command>&COMMANDNAME;</command> is a program to control the
203
 
      operation of the Mandos server <citerefentry><refentrytitle
204
 
      >mandos</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
 
219
      <command>&COMMANDNAME;</command> is a program to control or
 
220
      query the operation of the Mandos server
 
221
      <citerefentry><refentrytitle>mandos</refentrytitle><manvolnum
 
222
      >8</manvolnum></citerefentry>.
205
223
    </para>
206
224
    <para>
207
225
      This program can be used to change client settings, approve or
465
483
      </varlistentry>
466
484
      
467
485
      <varlistentry>
 
486
        <term><option>--dump-json</option></term>
 
487
        <term><option>-j</option></term>
 
488
        <listitem>
 
489
          <para>
 
490
            Dump client settings as JSON to standard output.
 
491
          </para>
 
492
        </listitem>
 
493
      </varlistentry>
 
494
      
 
495
      <varlistentry>
468
496
        <term><option>--is-enabled</option></term>
469
497
        <term><option>-V</option></term>
470
498
        <listitem>
475
503
        </listitem>
476
504
      </varlistentry>
477
505
      
 
506
      <varlistentry>
 
507
        <term><option>--check</option></term>
 
508
        <listitem>
 
509
          <para>
 
510
            Run self-tests.  This includes any unit tests, etc.
 
511
          </para>
 
512
        </listitem>
 
513
      </varlistentry>
 
514
      
478
515
    </variablelist>
479
516
  </refsect1>
480
517
  
496
533
    </para>
497
534
  </refsect1>
498
535
  
499
 
<!--   <refsect1 id="bugs"> -->
500
 
<!--     <title>BUGS</title> -->
501
 
<!--     <para> -->
502
 
<!--     </para> -->
503
 
<!--   </refsect1> -->
 
536
  <refsect1 id="bugs">
 
537
    <title>BUGS</title>
 
538
    <xi:include href="bugs.xml"/>
 
539
  </refsect1>
504
540
  
505
541
  <refsect1 id="example">
506
542
    <title>EXAMPLE</title>