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

  • Committer: Teddy Hogeborn
  • Date: 2017-06-24 10:08:21 UTC
  • Revision ID: teddy@recompile.se-20170624100821-3ojepr4r6sifqzj5
Fix memory leak in password-prompt

* plugins.d/password-prompt.c (conflict_detection): Free any
  individual direntries, not just the direntry list.

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-client">
5
 
<!ENTITY TIMESTAMP "2012-06-13">
 
5
<!ENTITY TIMESTAMP "2017-02-23">
6
6
<!ENTITY % common SYSTEM "../common.ent">
7
7
%common;
8
8
]>
33
33
    <copyright>
34
34
      <year>2008</year>
35
35
      <year>2009</year>
 
36
      <year>2010</year>
 
37
      <year>2011</year>
36
38
      <year>2012</year>
 
39
      <year>2013</year>
 
40
      <year>2014</year>
 
41
      <year>2015</year>
 
42
      <year>2016</year>
 
43
      <year>2017</year>
37
44
      <holder>Teddy Hogeborn</holder>
38
45
      <holder>Björn Påhlsson</holder>
39
46
    </copyright>
96
103
      </arg>
97
104
      <sbr/>
98
105
      <arg>
 
106
        <option>--dh-params <replaceable>FILE</replaceable></option>
 
107
      </arg>
 
108
      <sbr/>
 
109
      <arg>
99
110
        <option>--delay <replaceable>SECONDS</replaceable></option>
100
111
      </arg>
101
112
      <sbr/>
218
229
            assumed to separate the address from the port number.
219
230
          </para>
220
231
          <para>
221
 
            This option is normally only useful for testing and
222
 
            debugging.
 
232
            Normally, Zeroconf would be used to locate Mandos servers,
 
233
            in which case this option would only be used when testing
 
234
            and debugging.
223
235
          </para>
224
236
        </listitem>
225
237
      </varlistentry>
226
238
      
227
239
      <varlistentry>
228
240
        <term><option>--interface=<replaceable
229
 
        >NAME</replaceable></option></term>
 
241
        >NAME</replaceable><arg rep='repeat'>,<replaceable
 
242
        >NAME</replaceable></arg></option></term>
230
243
        <term><option>-i
231
 
        <replaceable>NAME</replaceable></option></term>
 
244
        <replaceable>NAME</replaceable><arg rep='repeat'>,<replaceable
 
245
        >NAME</replaceable></arg></option></term>
232
246
        <listitem>
233
247
          <para>
234
248
            Comma separated list of network interfaces that will be
237
251
            use all appropriate interfaces.
238
252
          </para>
239
253
          <para>
240
 
            If the <option>--connect</option> option is used, this
241
 
            specifies the interface to use to connect to the address
242
 
            given.
 
254
            If the <option>--connect</option> option is used, and
 
255
            exactly one interface name is specified (except
 
256
            <quote><literal>none</literal></quote>), this specifies
 
257
            the interface to use to connect to the address given.
243
258
          </para>
244
259
          <para>
245
260
            Note that since this program will normally run in the
254
269
          </para>
255
270
          <para>
256
271
            <replaceable>NAME</replaceable> can be the string
257
 
            <quote><literal>none</literal></quote>; this will not use
258
 
            any specific interface, and will not bring up an interface
259
 
            on startup.  This is not recommended, and only meant for
260
 
            advanced users.
 
272
            <quote><literal>none</literal></quote>; this will make
 
273
            <command>&COMMANDNAME;</command> only bring up interfaces
 
274
            specified <emphasis>before</emphasis> this string.  This
 
275
            is not recommended, and only meant for advanced users.
261
276
          </para>
262
277
        </listitem>
263
278
      </varlistentry>
305
320
        <listitem>
306
321
          <para>
307
322
            Sets the number of bits to use for the prime number in the
308
 
            TLS Diffie-Hellman key exchange.  Default is 1024.
 
323
            TLS Diffie-Hellman key exchange.  The default value is
 
324
            selected automatically based on the OpenPGP key.  Note
 
325
            that if the <option>--dh-params</option> option is used,
 
326
            the values from that file will be used instead.
 
327
          </para>
 
328
        </listitem>
 
329
      </varlistentry>
 
330
      
 
331
      <varlistentry>
 
332
        <term><option>--dh-params=<replaceable
 
333
        >FILE</replaceable></option></term>
 
334
        <listitem>
 
335
          <para>
 
336
            Specifies a PEM-encoded PKCS#3 file to read the parameters
 
337
            needed by the TLS Diffie-Hellman key exchange from.  If
 
338
            this option is not given, or if the file for some reason
 
339
            could not be used, the parameters will be generated on
 
340
            startup, which will take some time and processing power.
 
341
            Those using servers running under time, power or processor
 
342
            constraints may want to generate such a file in advance
 
343
            and use this option.
309
344
          </para>
310
345
        </listitem>
311
346
      </varlistentry>
438
473
  
439
474
  <refsect1 id="environment">
440
475
    <title>ENVIRONMENT</title>
 
476
    <variablelist>
 
477
      <varlistentry>
 
478
        <term><envar>MANDOSPLUGINHELPERDIR</envar></term>
 
479
        <listitem>
 
480
          <para>
 
481
            This environment variable will be assumed to contain the
 
482
            directory containing any helper executables.  The use and
 
483
            nature of these helper executables, if any, is
 
484
            purposefully not documented.
 
485
        </para>
 
486
        </listitem>
 
487
      </varlistentry>
 
488
    </variablelist>
441
489
    <para>
442
 
      This program does not use any environment variables, not even
443
 
      the ones provided by <citerefentry><refentrytitle
 
490
      This program does not use any other environment variables, not
 
491
      even the ones provided by <citerefentry><refentrytitle
444
492
      >cryptsetup</refentrytitle><manvolnum>8</manvolnum>
445
493
    </citerefentry>.
446
494
    </para>
508
556
              It is not necessary to print any non-executable files
509
557
              already in the network hook directory, these will be
510
558
              copied implicitly if they otherwise satisfy the name
511
 
              requirement.
 
559
              requirements.
512
560
            </para>
513
561
          </listitem>
514
562
        </varlistentry>
646
694
    </variablelist>
647
695
  </refsect1>
648
696
  
649
 
<!--   <refsect1 id="bugs"> -->
650
 
<!--     <title>BUGS</title> -->
651
 
<!--     <para> -->
652
 
<!--     </para> -->
653
 
<!--   </refsect1> -->
 
697
  <refsect1 id="bugs">
 
698
    <title>BUGS</title>
 
699
    <xi:include href="../bugs.xml"/>
 
700
  </refsect1>
654
701
  
655
702
  <refsect1 id="example">
656
703
    <title>EXAMPLE</title>
662
709
    </para>
663
710
    <informalexample>
664
711
      <para>
665
 
        Normal invocation needs no options, if the network interface
 
712
        Normal invocation needs no options, if the network interfaces
666
713
        can be automatically determined:
667
714
      </para>
668
715
      <para>
671
718
    </informalexample>
672
719
    <informalexample>
673
720
      <para>
674
 
        Search for Mandos servers (and connect to them) using another
675
 
        interface:
 
721
        Search for Mandos servers (and connect to them) using one
 
722
        specific interface:
676
723
      </para>
677
724
      <para>
678
725
        <!-- do not wrap this line -->
742
789
    <para>
743
790
      It will also help if the checker program on the server is
744
791
      configured to request something from the client which can not be
745
 
      spoofed by someone else on the network, unlike unencrypted
746
 
      <acronym>ICMP</acronym> echo (<quote>ping</quote>) replies.
 
792
      spoofed by someone else on the network, like SSH server key
 
793
      fingerprints, and unlike unencrypted <acronym>ICMP</acronym>
 
794
      echo (<quote>ping</quote>) replies.
747
795
    </para>
748
796
    <para>
749
797
      <emphasis>Note</emphasis>: This makes it completely insecure to
795
843
      </varlistentry>
796
844
      <varlistentry>
797
845
        <term>
798
 
          <ulink url="http://www.gnu.org/software/gnutls/"
799
 
          >GnuTLS</ulink>
 
846
          <ulink url="https://www.gnutls.org/">GnuTLS</ulink>
800
847
        </term>
801
848
      <listitem>
802
849
        <para>
808
855
      </varlistentry>
809
856
      <varlistentry>
810
857
        <term>
811
 
          <ulink url="http://www.gnupg.org/related_software/gpgme/"
 
858
          <ulink url="https://www.gnupg.org/related_software/gpgme/"
812
859
                 >GPGME</ulink>
813
860
        </term>
814
861
        <listitem>
842
889
              <para>
843
890
                This client uses IPv6 link-local addresses, which are
844
891
                immediately usable since a link-local addresses is
845
 
                automatically assigned to a network interfaces when it
 
892
                automatically assigned to a network interface when it
846
893
                is brought up.
847
894
              </para>
848
895
            </listitem>
852
899
      </varlistentry>
853
900
      <varlistentry>
854
901
        <term>
855
 
          RFC 4346: <citetitle>The Transport Layer Security (TLS)
856
 
          Protocol Version 1.1</citetitle>
 
902
          RFC 5246: <citetitle>The Transport Layer Security (TLS)
 
903
          Protocol Version 1.2</citetitle>
857
904
        </term>
858
905
      <listitem>
859
906
        <para>
860
 
          TLS 1.1 is the protocol implemented by GnuTLS.
 
907
          TLS 1.2 is the protocol implemented by GnuTLS.
861
908
        </para>
862
909
      </listitem>
863
910
      </varlistentry>
874
921
      </varlistentry>
875
922
      <varlistentry>
876
923
        <term>
877
 
          RFC 5081: <citetitle>Using OpenPGP Keys for Transport Layer
 
924
          RFC 6091: <citetitle>Using OpenPGP Keys for Transport Layer
878
925
          Security</citetitle>
879
926
        </term>
880
927
      <listitem>