/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: 2014-03-23 19:24:40 UTC
  • Revision ID: teddy@recompile.se-20140323192440-d71iiqxebsxf9u2v
Update GCC warning flags and function attributes to GCC 4.7.

* Makefile (WARN): Update to include almost all warning flags.
* plugin-runner.c (getplugin, add_to_char_array, add_argument,
                   add_environment, set_cloexec_flag,
                   print_out_password): Add attribute
                                        "warn_unused_result".
  (main/parse_opt): Bug fix: Add error checking to --global-env,
                    --env-for, --plugin-dir, and --config-file, and
                    make sure errno does not "leak" from unrelated
                    functions.
* plugins.d/mandos-client.c
  (fprintf_plus, debuggnutls, resolve_callback): Add "nonnull"
                                                 attribute.
  (incbuffer, add_server, init_gpgme): Add "nonnull" and
                                       "warn_unused_result"
                                       attributes.
  (pgp_packet_decrypt, init_gnutls_global): - '' -
  (init_gnutls_session start_mandos_communication, get_flags): - '' -
  (good_flags, good_interface, interface_is_up): - '' -
  (interface_is_running, runnable_hook): - '' -
  (avahi_loop_with_timeout, bring_up_interface): : - '' -
  (safer_gnutls_strerror): Add "warn_unused_result" attribute.
  (notdotentries): Set "nonnull", "pure", and "warn_unused_result"
                   attributes.
  (raise_privileges, raise_privileges_permanently, lower_privileges,
  lower_privileges_permanently): Set "warn_unused_result" attribute.
  (run_network_hooks): Exit child process if it fails to do anything
                       it needs to do.  Make explicit cast to double
                       when passing float value to asprintf().  Change
                       return type to void - all callers changed.
  (bring_up_interface): Move variables "sd", "ret_errno", and
                        "ret_setflags" to innermost scope.  Bug fix:
                        Fail if could not get interface flags also in
                        non-debug mode, and restore old errno
                        correctly.  Print message if could not raise
                        (or later lower) privileges.
  (take_down_interface): Bug fix: When failing because it could not
                         get interface flags, restore old errno
                         correctly.  Print message if it could not
                         raise (or later lower) privileges.
  (main): Complain if failed to raise or lower privileges.  Only run
          network hooks or lower privileges if raising privileges was
          successful.

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 "2015-07-08">
 
5
<!ENTITY TIMESTAMP "2014-03-05">
6
6
<!ENTITY % common SYSTEM "../common.ent">
7
7
%common;
8
8
]>
36
36
      <year>2012</year>
37
37
      <year>2013</year>
38
38
      <year>2014</year>
39
 
      <year>2015</year>
40
39
      <holder>Teddy Hogeborn</holder>
41
40
      <holder>Björn Påhlsson</holder>
42
41
    </copyright>
99
98
      </arg>
100
99
      <sbr/>
101
100
      <arg>
102
 
        <option>--dh-params <replaceable>FILE</replaceable></option>
103
 
      </arg>
104
 
      <sbr/>
105
 
      <arg>
106
101
        <option>--delay <replaceable>SECONDS</replaceable></option>
107
102
      </arg>
108
103
      <sbr/>
316
311
        <listitem>
317
312
          <para>
318
313
            Sets the number of bits to use for the prime number in the
319
 
            TLS Diffie-Hellman key exchange.  The default value is
320
 
            selected automatically based on the OpenPGP key.  Note
321
 
            that if the <option>--dh-params</option> option is used,
322
 
            the values from that file will be used instead.
323
 
          </para>
324
 
        </listitem>
325
 
      </varlistentry>
326
 
      
327
 
      <varlistentry>
328
 
        <term><option>--dh-params=<replaceable
329
 
        >FILE</replaceable></option></term>
330
 
        <listitem>
331
 
          <para>
332
 
            Specifies a PEM-encoded PKCS#3 file to read the parameters
333
 
            needed by the TLS Diffie-Hellman key exchange from.  If
334
 
            this option is not given, or if the file for some reason
335
 
            could not be used, the parameters will be generated on
336
 
            startup, which will take some time and processing power.
337
 
            Those using servers running under time, power or processor
338
 
            constraints may want to generate such a file in advance
339
 
            and use this option.
 
314
            TLS Diffie-Hellman key exchange.  Default is 1024.
340
315
          </para>
341
316
        </listitem>
342
317
      </varlistentry>
469
444
  
470
445
  <refsect1 id="environment">
471
446
    <title>ENVIRONMENT</title>
472
 
    <variablelist>
473
 
      <varlistentry>
474
 
        <term><envar>MANDOSPLUGINHELPERDIR</envar></term>
475
 
        <listitem>
476
 
          <para>
477
 
            This environment variable will be assumed to contain the
478
 
            directory containing any helper executables.  The use and
479
 
            nature of these helper executables, if any, is
480
 
            purposefully not documented.
481
 
        </para>
482
 
        </listitem>
483
 
      </varlistentry>
484
 
    </variablelist>
485
447
    <para>
486
 
      This program does not use any other environment variables, not
487
 
      even the ones provided by <citerefentry><refentrytitle
 
448
      This program does not use any environment variables, not even
 
449
      the ones provided by <citerefentry><refentrytitle
488
450
      >cryptsetup</refentrytitle><manvolnum>8</manvolnum>
489
451
    </citerefentry>.
490
452
    </para>
786
748
    <para>
787
749
      It will also help if the checker program on the server is
788
750
      configured to request something from the client which can not be
789
 
      spoofed by someone else on the network, like SSH server key
790
 
      fingerprints, and unlike unencrypted <acronym>ICMP</acronym>
791
 
      echo (<quote>ping</quote>) replies.
 
751
      spoofed by someone else on the network, unlike unencrypted
 
752
      <acronym>ICMP</acronym> echo (<quote>ping</quote>) replies.
792
753
    </para>
793
754
    <para>
794
755
      <emphasis>Note</emphasis>: This makes it completely insecure to