]> granicus.if.org Git - pdns/commitdiff
Fix a bunch of doc nits
authorPieter Lexis <pieter.lexis@powerdns.com>
Tue, 17 Oct 2017 12:18:48 +0000 (14:18 +0200)
committerPieter Lexis <pieter.lexis@powerdns.com>
Tue, 17 Oct 2017 13:59:18 +0000 (15:59 +0200)
Closes #5724

docs/appendices/compiling.rst [new file with mode: 0644]
docs/appendices/crypto-export.rst [new file with mode: 0644]
docs/appendices/types.rst
docs/backends/index.rst
docs/dnssec/operational.rst
docs/dnsupdate.rst
pdns/recursordist/docs/appendices/crypto-export.rst [new symlink]

diff --git a/docs/appendices/compiling.rst b/docs/appendices/compiling.rst
new file mode 100644 (file)
index 0000000..a185dcc
--- /dev/null
@@ -0,0 +1,82 @@
+Compiling PowerDNS
+==================
+
+PowerDNS can be compiled with modules built in, or with modules designed to be loaded at runtime.
+All that is configured before compiling using the well known autoconf/automake system::
+
+  tar xf pdns-VERSION.tar.bz2
+  cd pdns-VERSION
+  ./configure --with-modules=$MODULES --with-dynmodules=$DYNMODULES
+  make
+  make install
+
+To compile in modules, specify them as ``--with-modules='mod1 mod2 mod3'``, substituting the desired module names.
+See each :doc:`backend specific documentation <../backends/index>` for the module names.
+Each backend has a module name that you look up in this table.
+
+To compile a module for inclusion at runtime, which is great if you are a unix vendor, use ``--with-dynmodules='mod1 mod2 mod3'``.
+These modules then end up as .so files in the compiled ``libdir``.
+
+By default, the :doc:`bind <../../backends/bind>`, :doc:`mysql <../../backends/generic-mysql>` and :doc:`random <../../backends/random>` are compiled into the binary. The :doc:`pipe <../../backends/pipe>` is, by default, compiled as a runtime loadable module.
+
+Getting the sources
+-------------------
+
+There are 3 ways of getting the source.
+
+If you want the bleeding edge, you can clone the `repository at GitHub <https://github.com/PowerDNS/pdns>`__ and run ``./bootstrap`` in the clone.
+
+You can also download snapshot tarballs `here <https://downloads.powerdns.com/autobuilt_browser/#/auth>`__.
+
+You can also download releases on the `website <https://downloads.powerdns.com/releases/>`__.
+These releases are PGP-signed with one of these key-ids:
+
+* `FBAE 0323 821C 7706 A5CA 151B DCF5 13FA 7EED 19F3 <https://pgp.mit.edu/pks/lookup?op=get&search=0xDCF513FA7EED19F3>`_
+* `1628 90D0 689D D12D D33E 4696 1C5E E990 D2E7 1575 <https://pgp.mit.edu/pks/lookup?op=get&search=0x1C5EE990D2E71575>`_
+* `B76C D467 1C09 68BA A87D E61C 5E50 715B F2FF E1A7 <https://pgp.mit.edu/pks/lookup?op=get&search=0x5E50715BF2FFE1A7>`_
+* `16E1 2866 B773 8C73 976A 5743 6FFC 3343 9B0D 04DF <https://pgp.mit.edu/pks/lookup?op=get&search=0x6FFC33439B0D04DF>`_
+
+Dependencies
+------------
+
+To build the PowerDNS Authoritative Server, a C++ compiler with support for C++ 2011 is required.
+This means gcc 4.9 and newer and clang 3.5 and newer.
+Furthermore, the Makefiles require GNU make, not BSD make.
+
+By default, the PowerDNS Authoritative Server requires the following libraries and headers:
+
+* `Boost <http://boost.org/>`_ 1.35 or newer
+* `OpenSSL <https://openssl.org>`_
+
+To build from git, the following dependencies are also required:
+
+* `ragel <http://www.colm.net/open-source/ragel/>`_
+* `bison <https://www.gnu.org/software/bison/>`_
+* `flex <https://github.com/westes/flex>`_
+* `virtualenv <https://pypi.python.org/pypi/virtualenv>`_
+
+Optional dependencies
+---------------------
+
+Several options that can be passed to ``./configure`` can enable and disable different features.
+These will require additional dependencies
+
+ed25519 support with libsodium
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The PowerDNS Recursor can link with `libsodium <https://download.libsodium.org/doc/>`_ to support ed25519 (DNSSEC algorithm 15).
+To detect libsodium, use the ``--enable-libsodium`` configure option.
+
+ed25519 and ed448 support with libdecaf
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+`libdecaf <https://sourceforge.net/projects/ed448goldilocks/>`_ is a library that allows the PowerDNS Recursor to support ed25519 and Ed448 (DNSSEC algorithms 15 and 16).
+To detect libsodium, use the ``--enable-libsodium`` configure option.
+
+systemd notify support
+^^^^^^^^^^^^^^^^^^^^^^
+
+During configure, ``configure`` will attempt to detect the availability of `systemd or systemd-daemon <https://freedesktop.org/wiki/Software/systemd/>`_ headers.
+To force the use of systemd (and failing configure if the headers do not exist), use ``--enable-systemd``.
+To set the directory where the unit files should be installed, use ``--with-systemd=/path/to/unit/dir``.
+
diff --git a/docs/appendices/crypto-export.rst b/docs/appendices/crypto-export.rst
new file mode 100644 (file)
index 0000000..adf72dd
--- /dev/null
@@ -0,0 +1,22 @@
+Cryptographic software and export control
+=========================================
+In certain legal climates, PowerDNS might potentially require an export control status, particularly since PowerDNS software contains cryptographic primitives.
+
+PowerDNS does not itself implement any cryptographic algorithms but relies on third party implementations of AES, RSA, ECDSA, GOST, MD5 and various SHA-based hashing algorithms.
+
+Starting with 4.0.0, PowerDNS will link in hash and cryptographic primitives from the open source `OpenSSL <https://openssl.org/>`_ library.
+
+Optionally, PowerDNS can link in a copy of the open source `Botan <http://botan.randombits.org/>`_ cryptographic library.
+
+Optionally, PowerDNS can link in a copy of the open source `Sodium <https://libsodium.org/>`_ library.
+
+Specific United States Export Control Notes
+-------------------------------------------
+PowerDNS is not "US Origin" software.
+For re-export, like most open source, publicly available "mass market" projects, PowerDNS is considered to be governed by section 740.13(e) of the US EAR, "Unrestricted encryption source code", under which PowerDNS source code would be considered re-exportable from the US without an export license under License Exception TSU (Technology and Software - Unrestricted).
+
+Like most open source projects containing some encryption, the ECCN that best fits PowerDNS software is 5D002.
+
+The official link to the publicly available source code is `http://downloads.powerdns.com/releases`.
+
+If absolute certainty is required, we recommend consulting an expert in US Export Control, or asking the BIS for confirmation.
index 3a566e9dcdc8207cc542021440dca3f33dd00f23..f22552b7495a48c8447d8582ce29e599fd76ab22 100644 (file)
@@ -11,7 +11,7 @@ grouped.
   it will inevitably cause problems, problems that may be hard to debug.
   Use ``pdnsutil check-zone`` to validate your zone data.
 
-..note::
+.. note::
   Whenever the storage format is mentioned, this relates only to
   the way the record should be stored in one of the :doc:`generic SQL <../backends/generic-sql>` backends. The other
   backends should use their *native* format.
index 8e6d51cadc2a9afcf96d161b50a655cde68d6ab4..2628991cf94df7ba73a2106f32872047d2cb88e9 100644 (file)
@@ -34,7 +34,7 @@ The following table describes the supported backends and some of their capabilit
 +------------------------------------------------+--------+--------+-------+--------------+-------------+---------------------------------+--------------+
 | :doc:`Remote <remote>`                         | Yes    | Yes\*  | Yes\* | Yes\*        | Yes\*       | Yes\*                           | ``remote``   |
 +------------------------------------------------+--------+--------+-------+--------------+-------------+---------------------------------+--------------+
-| :doc:`TinyDNS <tinydns>`                       | Yes    | Yes    | No    | No           | No          | Parti                           | ``pipe``     |
+| :doc:`TinyDNS <tinydns>`                       | Yes    | Yes    | No    | No           | No          | Parti                           | ``tinydns``  |
 +------------------------------------------------+--------+--------+-------+--------------+-------------+---------------------------------+--------------+
 
 All the generic SQL backends have similar functionality, apart from the database they communicate with.
index 519eddb95af7ab2ea6b00f04c273c4b11ed33e94..fcde9b1bef850f8691077ffc6cee873b747ece84 100644 (file)
@@ -182,8 +182,6 @@ Sets the SOA serial to the number of seconds since the epoch.
   databases directly with incremental updates (or use the same database
   server on the slaves)
 
-.. deprecated:: 4.1.0
-
 NONE
 ^^^^
 
index 686b23bf4c97e4d413750bc6dd6afbd870aff836..6cbc953767a5228b2b1c14f19fb07c71d20fd633 100644 (file)
@@ -221,7 +221,7 @@ These are the settings available for **SOA-EDIT-DNSUPDATE**.
 -  EPOCH: Change the serial to the number of seconds since the EPOCH,
    aka unixtime.
 -  SOA-EDIT: Change the serial to whatever SOA-EDIT would provide. See
-   `Domain metadata <domainmetadata>`
+   :doc:`Domain metadata <domainmetadata>`
 -  SOA-EDIT-INCREASE: Change the serial to whatever SOA-EDIT would
    provide. If what SOA-EDIT provides is lower than the current serial,
    increase the current serial by 1.
diff --git a/pdns/recursordist/docs/appendices/crypto-export.rst b/pdns/recursordist/docs/appendices/crypto-export.rst
new file mode 120000 (symlink)
index 0000000..964806c
--- /dev/null
@@ -0,0 +1 @@
+../../../../docs/appendices/crypto-export.rst
\ No newline at end of file