Index: server/other/openldap-systemd.xml
===================================================================
--- server/other/openldap-systemd.xml	(revision 602332ff433862c22f2f17d2c86ea70f8c634482)
+++ 	(revision )
@@ -1,805 +1,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-
-  <!ENTITY openldap-download-http " ">
-  <!ENTITY openldap-download-ftp  "ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-&openldap-version;.tgz">
-  <!ENTITY openldap-md5sum        "47c8e2f283647a6105b8b0325257e922">
-  <!ENTITY openldap-size          "5.4 MB">
-  <!ENTITY openldap-buildsize     "53 MB (client), 103 MB (server, additional 5 MB for the tests)">
-  <!ENTITY openldap-time          "0.6 SBU (client), 1.1 SBU (server, additional 3.4 SBU for the tests)">
-]>
-
-<sect1 id="openldap" xreflabel="OpenLDAP-&openldap-version;">
-  <?dbhtml filename="openldap.html"?>
-
-  <sect1info>
-    <othername>$LastChangedBy$</othername>
-    <date>$Date$</date>
-  </sect1info>
-
-  <title>OpenLDAP-&openldap-version;</title>
-
-  <indexterm zone="openldap">
-    <primary sortas="a-OpenLDAP">OpenLDAP</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title>Introduction to OpenLDAP</title>
-
-    <para>
-      The <application>OpenLDAP</application> package provides an open
-      source implementation of the Lightweight Directory Access Protocol.
-    </para>
-
-    &lfs77_checked;
-
-    <bridgehead renderas="sect3">Package Information</bridgehead>
-    <itemizedlist spacing="compact">
-      <listitem>
-        <para>
-          Download (HTTP): <ulink url="&openldap-download-http;"/>
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download (FTP): <ulink url="&openldap-download-ftp;"/>
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download MD5 sum: &openldap-md5sum;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download size: &openldap-size;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Estimated disk space required: &openldap-buildsize;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Estimated build time: &openldap-time;
-        </para>
-      </listitem>
-    </itemizedlist>
-
-    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
-    <itemizedlist spacing="compact">
-      <listitem>
-        <para>
-          Required patch:
-          <ulink url="&patch-root;/openldap-&openldap-version;-consolidated-1.patch"/>
-        </para>
-      </listitem>
-    </itemizedlist>
-
-    <bridgehead renderas="sect3">OpenLDAP Dependencies</bridgehead>
-
-    <bridgehead renderas="sect4">Recommended</bridgehead>
-    <para role="recommended">
-      <xref linkend="cyrus-sasl"/> and
-      <xref linkend="openssl"/>
-    </para>
-
-    <bridgehead renderas="sect4">Optional</bridgehead>
-    <para role="optional">
-      <xref linkend="db"/> (not recommended by the
-      developers due to license incompatiblities),
-      <xref linkend="icu"/>,
-      <xref linkend="mariadb"/> or
-      <xref linkend="postgresql"/>,
-      <xref linkend="pth"/>,
-      <xref linkend="unixodbc"/> and
-      <ulink url="http://www.openslp.org/">OpenSLP</ulink>
-    </para>
-
-    <para condition="html" role="usernotes">User Notes:
-      <ulink url="&blfs-wiki;/openldap"/>
-    </para>
-  </sect2>
-
-  <sect2 role="installation">
-    <title>Installation of OpenLDAP</title>
-
-    <note>
-      <para>
-        If you only need to install the client side <command>ldap*</command>
-        binaries, corresponding man pages, libraries and header files (referred
-        to as a <quote>client-only</quote> install), issue these commands
-        instead of the following ones (no test suite available):
-      </para>
-
-<screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-consolidated-1.patch &amp;&amp;
-autoconf &amp;&amp;
-
-./configure --prefix=/usr     \
-            --sysconfdir=/etc \
-            --disable-static  \
-            --enable-dynamic  \
-            --disable-debug   \
-            --disable-slapd &amp;&amp;
-make depend &amp;&amp;
-make</userinput></screen>
-
-    <para>
-      Then, as the <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>make install</userinput></screen>
-
-    </note>
-
-    <warning>
-      <para>
-        If upgrading from a previos installation that used Berkeley DB as
-        the backend, you will need to dump the database(s) using the
-        <command>slapcat</command> utility, relocate all files in
-        <filename class="directory">/var/lib/openldap</filename>, change all
-        instances of <option>bdb</option> to <option>mdb</option> in
-        <filename>/etc/openldap/slapd.conf</filename> and any files in
-        <filename class="directory">/etc/openldap/slapd.d</filename>, and import
-        using the <command>slapadd</command> utility after the installation is
-        completed.
-      </para>
-    </warning>
-
-    <para>
-      There should be a dedicated user and group to take control
-      of the <command>slapd</command> daemon after it is
-      started. Issue the following commands as the
-      <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>groupadd -g 83 ldap &amp;&amp;
-useradd -c "OpenLDAP Daemon Owner" -d /var/lib/openldap -u 83 \
-        -g ldap -s /bin/false ldap</userinput></screen>
-
-    <para>
-      Install <application>OpenLDAP</application> by
-      running the following commands:
-    </para>
-
-<screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-consolidated-1.patch &amp;&amp;
-autoconf &amp;&amp;
-
-./configure --prefix=/usr         \
-            --sysconfdir=/etc     \
-            --localstatedir=/var  \
-            --libexecdir=/usr/lib \
-            --disable-static      \
-            --disable-debug       \
-            --enable-dynamic      \
-            --enable-crypt        \
-            --enable-spasswd      \
-            --enable-modules      \
-            --enable-rlookups     \
-            --enable-backends=mod \
-            --enable-overlays=mod \
-            --disable-bdb         \
-            --disable-hdb         \
-            --disable-ndb         \
-            --disable-sql &amp;&amp;
-make depend &amp;&amp;
-make</userinput></screen>
-
-    <para>
-      To test the results, issue: <command>make -k test</command>.
-    </para>
-
-    <para>
-      Now, as the <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>make install &amp;&amp;
-
-install -v -dm700 -o ldap -g ldap /var/lib/openldap     &amp;&amp;
-install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &amp;&amp;
-chmod -v 640       /etc/openldap/slapd.{conf,ldif}      &amp;&amp;
-chown -v root:ldap /etc/openldap/slapd.{conf,ldif}      &amp;&amp;
-
-install -v -dm755              /usr/share/doc/openldap-&openldap-version; &amp;&amp;
-cp -vfr doc/{drafts,rfc,guide} /usr/share/doc/openldap-&openldap-version;</userinput></screen>
-
-    <para>
-      Having slapd configuration files and ldap databases in /var/lib/openldap
-      readable by anyone is a SECURITY ISSUE, especially since a file stores
-      admin password in PLAIN TEXT. That's why mode 640 and root:ldap ownership
-      were used. Owner is root, so only root can modify the file, and group is
-      ldap, so that the group which owns slapd daemon could read but not modify
-      the file in case of a security breach. 
-    </para>
-
-  </sect2>
-
-  <sect2 role="commands">
-    <title>Command Explanations</title>
-
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="../../xincludes/static-libraries.xml"/>
-
-    <para>
-      <parameter>--disable-debug</parameter>: This switch disables
-      the debugging code in <application>OpenLDAP</application>.
-    </para>
-
-    <para>
-      <parameter>--enable-dynamic</parameter>: This switch forces the
-      <application>OpenLDAP</application> libraries to be dynamically
-      linked to the executable programs.
-    </para>
-
-    <para>
-      <parameter>--enable-crypt</parameter>: This switch enables using of
-      <command>crypt(3)</command> passwords.
-    </para>
-
-    <para>
-      <parameter>--enable-spasswd</parameter>: This switch enables
-      <application>SASL</application> password verification.
-    </para>
-
-    <para>
-      <parameter>--enable-modules</parameter>: This switch enables dynamic
-      module support.
-    </para>
-
-    <para>
-      <parameter>--enable-rlookups</parameter>: This switch enables
-      reverse lookups of client hostnames.
-    </para>
-
-    <para>
-      <parameter>--enable-backends</parameter>: This switch enables
-      all available backends.
-    </para>
-
-    <para>
-      <parameter>--enable-overlays</parameter>: This switch enables
-      all available overlays.
-    </para>
-
-    <para>
-      <parameter>--disable-bdb --disable-hdb</parameter>: These
-      switches disable
-      <application>Berkeley DB</application> backend due to
-      license incompatiblities with latest version of
-      <application>Berkeley DB</application>.
-    </para>
-
-    <para>
-      <parameter>--disable-ndb</parameter>: This switch disables
-      <application>MySQL</application> NDB Cluster backend
-      which causes configure to fail if
-      <application>MySQL</application> is present.
-    </para>
-
-    <para>
-      <parameter>--disable-sql</parameter>: This switch explicitly
-      disables the SQL backend.  Omit this switch if a SQL server is
-      installed and you are going to use a SQL backend.
-    </para>
-
-    <para>
-     <parameter>--libexecdir=/usr/lib</parameter>: This switch controls where
-     the <filename class="directory">/usr/lib/openldap</filename> directory is
-     installed.  Everything in that directory is a library, so it belongs under
-     <filename class="directory">/usr/lib</filename> instead of
-     <filename class="directory">/usr/libexec</filename>.
-    </para>
-
-    <para>
-      <option>--enable-slp</option>: This switch enables
-      SLPv2 support. Use it if you have installed
-      <ulink url="http://www.openslp.org/">OpenSLP</ulink>.
-    </para>
-
-    <note>
-      <para>
-        You can run <command>./configure --help</command> to see if there
-        are other switch you can pass to the <command>configure</command>
-        command to enable other options or dependency packages.
-      </para>
-    </note>
-
-  </sect2>
-
-  <sect2 role="configuration">
-    <title>Configuring OpenLDAP</title>
-
-    <sect3 id="openldap-config">
-      <title>Config Files</title>
-
-      <para>
-        <filename>/etc/openldap/*</filename>
-      </para>
-
-      <indexterm zone="openldap openldap-config">
-        <primary sortas="e-etc-openldap">/etc/openldap/*</primary>
-      </indexterm>
-
-    </sect3>
-
-    <sect3>
-      <title>Configuration Information</title>
-
-      <para>
-        Configuring the <command>slapd</command> servers can be complex.
-        Securing the LDAP directory, especially if you are storing non-public
-        data such as password databases, can also be a challenging task. You'll
-        need to modify the <filename>/etc/openldap/slapd.conf</filename> and
-        <filename>/etc/openldap/ldap.conf</filename> files to set up
-        <application>OpenLDAP</application> for your particular needs.
-      </para>
-
-      <indexterm zone="openldap openldap-config">
-        <primary
-        sortas="e-etc-openldap-slapd.conf">/etc/openldap/slapd.conf</primary>
-      </indexterm>
-
-      <indexterm zone="openldap openldap-config">
-        <primary
-        sortas="e-etc-openldap-ldap.conf">/etc/openldap/ldap.conf</primary>
-      </indexterm>
-
-      <para>
-        Resources to assist you with topics such as choosing a directory
-        configuration, backend and database definitions, access control settings,
-        running as a user other than <systemitem class="username">root</systemitem>
-        and setting a <command>chroot</command> environment include:
-      </para>
-
-      <itemizedlist spacing="compact">
-        <listitem>
-          <para>
-            The <command>slapd</command> man page.
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            The <filename>slapd.conf</filename> man page.
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            The <ulink url="http://www.openldap.org/doc/admin24/"> OpenLDAP 2.4
-            Administrator's Guide</ulink> (also installed locally in
-            <filename class="directory">
-            /usr/share/doc/openldap-&openldap-version;/guide/admin</filename>).
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Documents located at
-            <ulink url="http://www.openldap.org/pub/"/>.
-          </para>
-        </listitem>
-      </itemizedlist>
-
-    </sect3>
-
-    <sect3>
-      <title>Mozilla Address Directory</title>
-
-      <para>
-        By default, LDAPv2 support is disabled in the
-        <filename>slapd.conf</filename> file. Once the database is properly
-        set up and <application>Mozilla</application> is configured to use the
-        directory, you must add <option>allow bind_v2</option> to the
-        <filename>slapd.conf</filename> file.
-      </para>
-
-    </sect3>
-
-    <sect3 id="openldap-init">
-      <title>Systemd Units</title>
-
-      <para>
-        To start the <command>slapd</command> daemon at boot,
-        install the systemd unit from the <xref linkend="bootscripts"/>
-        package by running the following command as the
-        <systemitem class="username">root</systemitem> user:
-      </para>
-
-      <indexterm zone="openldap openldap-init">
-        <primary sortas="f-slapd">slapd</primary>
-      </indexterm>
-
-<screen role="root"><userinput>make install-slapd</userinput></screen>
-
-      <note>
-        <para>
-          You'll need to modify the
-          <filename>/etc/default/slapd</filename> to include the
-          parameters needed for your specific configuration. See the
-          <command>slapd</command> man page for parameter information.
-        </para>
-      </note>
-
-    </sect3>
-
-    <sect3>
-      <title>Testing the Configuration</title>
-
-      <para>
-        Start the LDAP server using <command>systemctl</command>:
-      </para>
-
-<screen role="root"><userinput>systemctl start slapd</userinput></screen>
-
-      <para>
-        Verify access to the LDAP server with the following command:
-      </para>
-
-<screen><userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput></screen>
-
-      <para>
-        The expected result is:
-      </para>
-
-<screen><computeroutput># extended LDIF
-#
-# LDAPv3
-# base &lt;&gt; with scope baseObject
-# filter: (objectclass=*)
-# requesting: namingContexts
-#
-
-#
-dn:
-namingContexts: dc=my-domain,dc=com
-
-# search result
-search: 2
-result: 0 Success
-
-# numResponses: 2
-# numEntries: 1</computeroutput></screen>
-
-    </sect3>
-
-  </sect2>
-
-  <sect2 role="content">
-    <title>Contents</title>
-
-    <segmentedlist>
-      <segtitle>Installed Programs</segtitle>
-      <segtitle>Installed Libraries</segtitle>
-      <segtitle>Installed Directories</segtitle>
-
-      <seglistitem>
-        <seg>
-          ldapadd, ldapcompare, ldapdelete, ldapexop, ldapmodify, ldapmodrdn,
-          ldappasswd, ldapsearch, ldapurl, ldapwhoami, slapacl, slapadd,
-          slapauth, slapcat, slapd, slapdn, slapindex, slappasswd, slapschema,
-          and slaptest
-        </seg>
-        <seg>
-          liblber.so, libldap.so, libldap_r.so,
-          and several under /usr/lib/openldap
-        </seg>
-        <seg>
-          /etc/openldap,
-          /usr/lib/openldap,
-          /usr/share/doc/openldap-&openldap-version;, and
-          /var/lib/openldap
-        </seg>
-      </seglistitem>
-    </segmentedlist>
-
-    <variablelist>
-      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
-      <?dbfo list-presentation="list"?>
-      <?dbhtml list-presentation="table"?>
-
-      <varlistentry id="ldapadd">
-        <term><command>ldapadd</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and adds entries.
-          </para>
-          <indexterm zone="openldap ldapadd">
-            <primary sortas="b-ldapadd">ldapadd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapcompare">
-        <term><command>ldapcompare</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and performs
-            a compare using specified parameters.
-          </para>
-          <indexterm zone="openldap ldapcompare">
-            <primary sortas="b-ldapcompare">ldapcompare</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapdelete">
-        <term><command>ldapdelete</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and deletes
-            one or more entries.
-          </para>
-          <indexterm zone="openldap ldapdelete">
-            <primary sortas="b-ldapdelete">ldapdelete</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapexop">
-        <term><command>ldapexop</command></term>
-        <listitem>
-          <para>
-            issues the LDAP extended operation specified by
-            oid or one of the  special  keywords  whoami,
-            cancel, or refresh.
-          </para>
-          <indexterm zone="openldap ldapexop">
-            <primary sortas="b-ldapexop">ldapexop</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapmodify">
-        <term><command>ldapmodify</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and modifies entries.
-          </para>
-          <indexterm zone="openldap ldapmodify">
-            <primary sortas="b-ldapmodify">ldapmodify</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapmodrdn">
-        <term><command>ldapmodrdn</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and modifies
-            the RDN of entries.
-          </para>
-          <indexterm zone="openldap ldapmodrdn">
-            <primary sortas="b-ldapmodrdn">ldapmodrdn</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldappasswd">
-        <term><command>ldappasswd</command></term>
-        <listitem>
-          <para>
-            is a tool used to set the password of an LDAP user.
-          </para>
-          <indexterm zone="openldap ldappasswd">
-            <primary sortas="b-ldappasswd">ldappasswd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapsearch">
-        <term><command>ldapsearch</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and performs
-            a search using specified parameters.
-          </para>
-          <indexterm zone="openldap ldapsearch">
-            <primary sortas="b-ldapsearch">ldapsearch</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapurl">
-        <term><command>ldapurl</command></term>
-        <listitem>
-          <para>
-            is a command that allows to either compose or
-            decompose LDAP URIs.
-          </para>
-          <indexterm zone="openldap ldapurl">
-            <primary sortas="b-ldapurl">ldapurl</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="ldapwhoami">
-        <term><command>ldapwhoami</command></term>
-        <listitem>
-          <para>
-            opens a connection to an LDAP server, binds and displays
-            whoami information.
-          </para>
-          <indexterm zone="openldap ldapwhoami">
-            <primary sortas="b-ldapwhoami">ldapwhoami</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapacl">
-        <term><command>slapacl</command></term>
-        <listitem>
-          <para>
-            is used to check the behavior of slapd by verifying
-            access to directory data according to the access control
-            list directives defined in its configuration.
-          </para>
-          <indexterm zone="openldap slapacl">
-            <primary sortas="b-slapacl">slapacl</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapadd">
-        <term><command>slapadd</command></term>
-        <listitem>
-          <para>
-            is used to add entries specified in LDAP Directory Interchange
-            Format (LDIF) to an LDAP database.
-          </para>
-          <indexterm zone="openldap slapadd">
-            <primary sortas="b-slapadd">slapadd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapauth">
-        <term><command>slapauth</command></term>
-        <listitem>
-          <para>
-            is used to check the behavior of the slapd
-            in mapping identities for authentication and
-            authorization purposes, as specified in slapd.conf.
-          </para>
-          <indexterm zone="openldap slapauth">
-            <primary sortas="b-slapauth">slapauth</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapcat">
-        <term><command>slapcat</command></term>
-        <listitem>
-          <para>
-            is used to generate an LDAP LDIF output based upon the
-            contents of a slapd database.
-          </para>
-          <indexterm zone="openldap slapcat">
-            <primary sortas="b-slapcat">slapcat</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapd">
-        <term><command>slapd</command></term>
-        <listitem>
-          <para>
-            is the standalone LDAP server.
-          </para>
-          <indexterm zone="openldap slapd">
-            <primary sortas="b-slapd">slapd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapdn">
-        <term><command>slapdn</command></term>
-        <listitem>
-          <para>
-            checks a list of string-represented DNs based on schema syntax.
-          </para>
-          <indexterm zone="openldap slapdn">
-            <primary sortas="b-slapdn">slapdn</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapindex">
-        <term><command>slapindex</command></term>
-        <listitem>
-          <para>
-            is used to regenerate slapd indexes based upon the current
-            contents of a database.
-          </para>
-          <indexterm zone="openldap slapindex">
-            <primary sortas="b-slapindex">slapindex</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slappasswd">
-        <term><command>slappasswd</command></term>
-        <listitem>
-          <para>
-            is an <application>OpenLDAP</application> password utility.
-          </para>
-          <indexterm zone="openldap slappasswd">
-            <primary sortas="b-slappasswd">slappasswd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slapschema">
-        <term><command>slapschema</command></term>
-        <listitem>
-          <para>
-            is used to check schema compliance of the contents
-            of a slapd database.
-          </para>
-          <indexterm zone="openldap slapschema">
-            <primary sortas="b-slapschema">slapschema</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="slaptest">
-        <term><command>slaptest</command></term>
-        <listitem>
-          <para>
-            checks the sanity of the <filename>slapd.conf</filename> file.
-          </para>
-          <indexterm zone="openldap slaptest">
-            <primary sortas="b-slaptest">slaptest</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="liblber">
-        <term><filename class="libraryfile">liblber.so</filename></term>
-        <listitem>
-          <para>
-            is a set of Lightweight Basic Encoding Rules routines. These
-            routines are used by the LDAP library routines to encode and decode
-            LDAP protocol elements using the (slightly simplified) Basic
-            Encoding Rules defined by LDAP. They are not normally used directly
-            by an LDAP application program except in the handling of controls
-            and extended operations.
-          </para>
-          <indexterm zone="openldap liblber">
-            <primary sortas="c-liblber">liblber.so</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="libldap">
-        <term><filename class="libraryfile">libldap.so</filename></term>
-        <listitem>
-          <para>
-            supports the LDAP programs and provide functionality for
-            other programs interacting with LDAP.
-          </para>
-          <indexterm zone="openldap libldap">
-            <primary sortas="c-libldap">libldap.so</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="libldap_r">
-        <term><filename class="libraryfile">libldap_r.so</filename></term>
-        <listitem>
-          <para>
-            contains the functions required by the LDAP programs to
-            produce the results from LDAP requests.
-          </para>
-          <indexterm zone="openldap libldap_r">
-            <primary sortas="c-libldap_r">libldap_r.so</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-    </variablelist>
-
-  </sect2>
-
-</sect1>
Index: server/other/openldap.xml
===================================================================
--- server/other/openldap.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
+++ server/other/openldap.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
@@ -0,0 +1,805 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../../general.ent">
+  %general-entities;
+
+  <!ENTITY openldap-download-http " ">
+  <!ENTITY openldap-download-ftp  "ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-&openldap-version;.tgz">
+  <!ENTITY openldap-md5sum        "47c8e2f283647a6105b8b0325257e922">
+  <!ENTITY openldap-size          "5.4 MB">
+  <!ENTITY openldap-buildsize     "53 MB (client), 103 MB (server, additional 5 MB for the tests)">
+  <!ENTITY openldap-time          "0.6 SBU (client), 1.1 SBU (server, additional 3.4 SBU for the tests)">
+]>
+
+<sect1 id="openldap" xreflabel="OpenLDAP-&openldap-version;">
+  <?dbhtml filename="openldap.html"?>
+
+  <sect1info>
+    <othername>$LastChangedBy$</othername>
+    <date>$Date$</date>
+  </sect1info>
+
+  <title>OpenLDAP-&openldap-version;</title>
+
+  <indexterm zone="openldap">
+    <primary sortas="a-OpenLDAP">OpenLDAP</primary>
+  </indexterm>
+
+  <sect2 role="package">
+    <title>Introduction to OpenLDAP</title>
+
+    <para>
+      The <application>OpenLDAP</application> package provides an open
+      source implementation of the Lightweight Directory Access Protocol.
+    </para>
+
+    &lfs77_checked;
+
+    <bridgehead renderas="sect3">Package Information</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Download (HTTP): <ulink url="&openldap-download-http;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download (FTP): <ulink url="&openldap-download-ftp;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download MD5 sum: &openldap-md5sum;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download size: &openldap-size;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated disk space required: &openldap-buildsize;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated build time: &openldap-time;
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Required patch:
+          <ulink url="&patch-root;/openldap-&openldap-version;-consolidated-1.patch"/>
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">OpenLDAP Dependencies</bridgehead>
+
+    <bridgehead renderas="sect4">Recommended</bridgehead>
+    <para role="recommended">
+      <xref linkend="cyrus-sasl"/> and
+      <xref linkend="openssl"/>
+    </para>
+
+    <bridgehead renderas="sect4">Optional</bridgehead>
+    <para role="optional">
+      <xref linkend="db"/> (not recommended by the
+      developers due to license incompatiblities),
+      <xref linkend="icu"/>,
+      <xref linkend="mariadb"/> or
+      <xref linkend="postgresql"/>,
+      <xref linkend="pth"/>,
+      <xref linkend="unixodbc"/> and
+      <ulink url="http://www.openslp.org/">OpenSLP</ulink>
+    </para>
+
+    <para condition="html" role="usernotes">User Notes:
+      <ulink url="&blfs-wiki;/openldap"/>
+    </para>
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of OpenLDAP</title>
+
+    <note>
+      <para>
+        If you only need to install the client side <command>ldap*</command>
+        binaries, corresponding man pages, libraries and header files (referred
+        to as a <quote>client-only</quote> install), issue these commands
+        instead of the following ones (no test suite available):
+      </para>
+
+<screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-consolidated-1.patch &amp;&amp;
+autoconf &amp;&amp;
+
+./configure --prefix=/usr     \
+            --sysconfdir=/etc \
+            --disable-static  \
+            --enable-dynamic  \
+            --disable-debug   \
+            --disable-slapd &amp;&amp;
+make depend &amp;&amp;
+make</userinput></screen>
+
+    <para>
+      Then, as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>make install</userinput></screen>
+
+    </note>
+
+    <warning>
+      <para>
+        If upgrading from a previos installation that used Berkeley DB as
+        the backend, you will need to dump the database(s) using the
+        <command>slapcat</command> utility, relocate all files in
+        <filename class="directory">/var/lib/openldap</filename>, change all
+        instances of <option>bdb</option> to <option>mdb</option> in
+        <filename>/etc/openldap/slapd.conf</filename> and any files in
+        <filename class="directory">/etc/openldap/slapd.d</filename>, and import
+        using the <command>slapadd</command> utility after the installation is
+        completed.
+      </para>
+    </warning>
+
+    <para>
+      There should be a dedicated user and group to take control
+      of the <command>slapd</command> daemon after it is
+      started. Issue the following commands as the
+      <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>groupadd -g 83 ldap &amp;&amp;
+useradd -c "OpenLDAP Daemon Owner" -d /var/lib/openldap -u 83 \
+        -g ldap -s /bin/false ldap</userinput></screen>
+
+    <para>
+      Install <application>OpenLDAP</application> by
+      running the following commands:
+    </para>
+
+<screen><userinput>patch -Np1 -i ../openldap-&openldap-version;-consolidated-1.patch &amp;&amp;
+autoconf &amp;&amp;
+
+./configure --prefix=/usr         \
+            --sysconfdir=/etc     \
+            --localstatedir=/var  \
+            --libexecdir=/usr/lib \
+            --disable-static      \
+            --disable-debug       \
+            --enable-dynamic      \
+            --enable-crypt        \
+            --enable-spasswd      \
+            --enable-modules      \
+            --enable-rlookups     \
+            --enable-backends=mod \
+            --enable-overlays=mod \
+            --disable-bdb         \
+            --disable-hdb         \
+            --disable-ndb         \
+            --disable-sql &amp;&amp;
+make depend &amp;&amp;
+make</userinput></screen>
+
+    <para>
+      To test the results, issue: <command>make -k test</command>.
+    </para>
+
+    <para>
+      Now, as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>make install &amp;&amp;
+
+install -v -dm700 -o ldap -g ldap /var/lib/openldap     &amp;&amp;
+install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &amp;&amp;
+chmod -v 640       /etc/openldap/slapd.{conf,ldif}      &amp;&amp;
+chown -v root:ldap /etc/openldap/slapd.{conf,ldif}      &amp;&amp;
+
+install -v -dm755              /usr/share/doc/openldap-&openldap-version; &amp;&amp;
+cp -vfr doc/{drafts,rfc,guide} /usr/share/doc/openldap-&openldap-version;</userinput></screen>
+
+    <para>
+      Having slapd configuration files and ldap databases in /var/lib/openldap
+      readable by anyone is a SECURITY ISSUE, especially since a file stores
+      admin password in PLAIN TEXT. That's why mode 640 and root:ldap ownership
+      were used. Owner is root, so only root can modify the file, and group is
+      ldap, so that the group which owns slapd daemon could read but not modify
+      the file in case of a security breach. 
+    </para>
+
+  </sect2>
+
+  <sect2 role="commands">
+    <title>Command Explanations</title>
+
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+      href="../../xincludes/static-libraries.xml"/>
+
+    <para>
+      <parameter>--disable-debug</parameter>: This switch disables
+      the debugging code in <application>OpenLDAP</application>.
+    </para>
+
+    <para>
+      <parameter>--enable-dynamic</parameter>: This switch forces the
+      <application>OpenLDAP</application> libraries to be dynamically
+      linked to the executable programs.
+    </para>
+
+    <para>
+      <parameter>--enable-crypt</parameter>: This switch enables using of
+      <command>crypt(3)</command> passwords.
+    </para>
+
+    <para>
+      <parameter>--enable-spasswd</parameter>: This switch enables
+      <application>SASL</application> password verification.
+    </para>
+
+    <para>
+      <parameter>--enable-modules</parameter>: This switch enables dynamic
+      module support.
+    </para>
+
+    <para>
+      <parameter>--enable-rlookups</parameter>: This switch enables
+      reverse lookups of client hostnames.
+    </para>
+
+    <para>
+      <parameter>--enable-backends</parameter>: This switch enables
+      all available backends.
+    </para>
+
+    <para>
+      <parameter>--enable-overlays</parameter>: This switch enables
+      all available overlays.
+    </para>
+
+    <para>
+      <parameter>--disable-bdb --disable-hdb</parameter>: These
+      switches disable
+      <application>Berkeley DB</application> backend due to
+      license incompatiblities with latest version of
+      <application>Berkeley DB</application>.
+    </para>
+
+    <para>
+      <parameter>--disable-ndb</parameter>: This switch disables
+      <application>MySQL</application> NDB Cluster backend
+      which causes configure to fail if
+      <application>MySQL</application> is present.
+    </para>
+
+    <para>
+      <parameter>--disable-sql</parameter>: This switch explicitly
+      disables the SQL backend.  Omit this switch if a SQL server is
+      installed and you are going to use a SQL backend.
+    </para>
+
+    <para>
+     <parameter>--libexecdir=/usr/lib</parameter>: This switch controls where
+     the <filename class="directory">/usr/lib/openldap</filename> directory is
+     installed.  Everything in that directory is a library, so it belongs under
+     <filename class="directory">/usr/lib</filename> instead of
+     <filename class="directory">/usr/libexec</filename>.
+    </para>
+
+    <para>
+      <option>--enable-slp</option>: This switch enables
+      SLPv2 support. Use it if you have installed
+      <ulink url="http://www.openslp.org/">OpenSLP</ulink>.
+    </para>
+
+    <note>
+      <para>
+        You can run <command>./configure --help</command> to see if there
+        are other switch you can pass to the <command>configure</command>
+        command to enable other options or dependency packages.
+      </para>
+    </note>
+
+  </sect2>
+
+  <sect2 role="configuration">
+    <title>Configuring OpenLDAP</title>
+
+    <sect3 id="openldap-config">
+      <title>Config Files</title>
+
+      <para>
+        <filename>/etc/openldap/*</filename>
+      </para>
+
+      <indexterm zone="openldap openldap-config">
+        <primary sortas="e-etc-openldap">/etc/openldap/*</primary>
+      </indexterm>
+
+    </sect3>
+
+    <sect3>
+      <title>Configuration Information</title>
+
+      <para>
+        Configuring the <command>slapd</command> servers can be complex.
+        Securing the LDAP directory, especially if you are storing non-public
+        data such as password databases, can also be a challenging task. You'll
+        need to modify the <filename>/etc/openldap/slapd.conf</filename> and
+        <filename>/etc/openldap/ldap.conf</filename> files to set up
+        <application>OpenLDAP</application> for your particular needs.
+      </para>
+
+      <indexterm zone="openldap openldap-config">
+        <primary
+        sortas="e-etc-openldap-slapd.conf">/etc/openldap/slapd.conf</primary>
+      </indexterm>
+
+      <indexterm zone="openldap openldap-config">
+        <primary
+        sortas="e-etc-openldap-ldap.conf">/etc/openldap/ldap.conf</primary>
+      </indexterm>
+
+      <para>
+        Resources to assist you with topics such as choosing a directory
+        configuration, backend and database definitions, access control settings,
+        running as a user other than <systemitem class="username">root</systemitem>
+        and setting a <command>chroot</command> environment include:
+      </para>
+
+      <itemizedlist spacing="compact">
+        <listitem>
+          <para>
+            The <command>slapd</command> man page.
+          </para>
+        </listitem>
+        <listitem>
+          <para>
+            The <filename>slapd.conf</filename> man page.
+          </para>
+        </listitem>
+        <listitem>
+          <para>
+            The <ulink url="http://www.openldap.org/doc/admin24/"> OpenLDAP 2.4
+            Administrator's Guide</ulink> (also installed locally in
+            <filename class="directory">
+            /usr/share/doc/openldap-&openldap-version;/guide/admin</filename>).
+          </para>
+        </listitem>
+        <listitem>
+          <para>
+            Documents located at
+            <ulink url="http://www.openldap.org/pub/"/>.
+          </para>
+        </listitem>
+      </itemizedlist>
+
+    </sect3>
+
+    <sect3>
+      <title>Mozilla Address Directory</title>
+
+      <para>
+        By default, LDAPv2 support is disabled in the
+        <filename>slapd.conf</filename> file. Once the database is properly
+        set up and <application>Mozilla</application> is configured to use the
+        directory, you must add <option>allow bind_v2</option> to the
+        <filename>slapd.conf</filename> file.
+      </para>
+
+    </sect3>
+
+    <sect3 id="openldap-init">
+      <title>Systemd Units</title>
+
+      <para>
+        To start the <command>slapd</command> daemon at boot,
+        install the systemd unit from the <xref linkend="bootscripts"/>
+        package by running the following command as the
+        <systemitem class="username">root</systemitem> user:
+      </para>
+
+      <indexterm zone="openldap openldap-init">
+        <primary sortas="f-slapd">slapd</primary>
+      </indexterm>
+
+<screen role="root"><userinput>make install-slapd</userinput></screen>
+
+      <note>
+        <para>
+          You'll need to modify the
+          <filename>/etc/default/slapd</filename> to include the
+          parameters needed for your specific configuration. See the
+          <command>slapd</command> man page for parameter information.
+        </para>
+      </note>
+
+    </sect3>
+
+    <sect3>
+      <title>Testing the Configuration</title>
+
+      <para>
+        Start the LDAP server using <command>systemctl</command>:
+      </para>
+
+<screen role="root"><userinput>systemctl start slapd</userinput></screen>
+
+      <para>
+        Verify access to the LDAP server with the following command:
+      </para>
+
+<screen><userinput>ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts</userinput></screen>
+
+      <para>
+        The expected result is:
+      </para>
+
+<screen><computeroutput># extended LDIF
+#
+# LDAPv3
+# base &lt;&gt; with scope baseObject
+# filter: (objectclass=*)
+# requesting: namingContexts
+#
+
+#
+dn:
+namingContexts: dc=my-domain,dc=com
+
+# search result
+search: 2
+result: 0 Success
+
+# numResponses: 2
+# numEntries: 1</computeroutput></screen>
+
+    </sect3>
+
+  </sect2>
+
+  <sect2 role="content">
+    <title>Contents</title>
+
+    <segmentedlist>
+      <segtitle>Installed Programs</segtitle>
+      <segtitle>Installed Libraries</segtitle>
+      <segtitle>Installed Directories</segtitle>
+
+      <seglistitem>
+        <seg>
+          ldapadd, ldapcompare, ldapdelete, ldapexop, ldapmodify, ldapmodrdn,
+          ldappasswd, ldapsearch, ldapurl, ldapwhoami, slapacl, slapadd,
+          slapauth, slapcat, slapd, slapdn, slapindex, slappasswd, slapschema,
+          and slaptest
+        </seg>
+        <seg>
+          liblber.so, libldap.so, libldap_r.so,
+          and several under /usr/lib/openldap
+        </seg>
+        <seg>
+          /etc/openldap,
+          /usr/lib/openldap,
+          /usr/share/doc/openldap-&openldap-version;, and
+          /var/lib/openldap
+        </seg>
+      </seglistitem>
+    </segmentedlist>
+
+    <variablelist>
+      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?>
+
+      <varlistentry id="ldapadd">
+        <term><command>ldapadd</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and adds entries.
+          </para>
+          <indexterm zone="openldap ldapadd">
+            <primary sortas="b-ldapadd">ldapadd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapcompare">
+        <term><command>ldapcompare</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and performs
+            a compare using specified parameters.
+          </para>
+          <indexterm zone="openldap ldapcompare">
+            <primary sortas="b-ldapcompare">ldapcompare</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapdelete">
+        <term><command>ldapdelete</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and deletes
+            one or more entries.
+          </para>
+          <indexterm zone="openldap ldapdelete">
+            <primary sortas="b-ldapdelete">ldapdelete</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapexop">
+        <term><command>ldapexop</command></term>
+        <listitem>
+          <para>
+            issues the LDAP extended operation specified by
+            oid or one of the  special  keywords  whoami,
+            cancel, or refresh.
+          </para>
+          <indexterm zone="openldap ldapexop">
+            <primary sortas="b-ldapexop">ldapexop</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapmodify">
+        <term><command>ldapmodify</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and modifies entries.
+          </para>
+          <indexterm zone="openldap ldapmodify">
+            <primary sortas="b-ldapmodify">ldapmodify</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapmodrdn">
+        <term><command>ldapmodrdn</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and modifies
+            the RDN of entries.
+          </para>
+          <indexterm zone="openldap ldapmodrdn">
+            <primary sortas="b-ldapmodrdn">ldapmodrdn</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldappasswd">
+        <term><command>ldappasswd</command></term>
+        <listitem>
+          <para>
+            is a tool used to set the password of an LDAP user.
+          </para>
+          <indexterm zone="openldap ldappasswd">
+            <primary sortas="b-ldappasswd">ldappasswd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapsearch">
+        <term><command>ldapsearch</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and performs
+            a search using specified parameters.
+          </para>
+          <indexterm zone="openldap ldapsearch">
+            <primary sortas="b-ldapsearch">ldapsearch</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapurl">
+        <term><command>ldapurl</command></term>
+        <listitem>
+          <para>
+            is a command that allows to either compose or
+            decompose LDAP URIs.
+          </para>
+          <indexterm zone="openldap ldapurl">
+            <primary sortas="b-ldapurl">ldapurl</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="ldapwhoami">
+        <term><command>ldapwhoami</command></term>
+        <listitem>
+          <para>
+            opens a connection to an LDAP server, binds and displays
+            whoami information.
+          </para>
+          <indexterm zone="openldap ldapwhoami">
+            <primary sortas="b-ldapwhoami">ldapwhoami</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapacl">
+        <term><command>slapacl</command></term>
+        <listitem>
+          <para>
+            is used to check the behavior of slapd by verifying
+            access to directory data according to the access control
+            list directives defined in its configuration.
+          </para>
+          <indexterm zone="openldap slapacl">
+            <primary sortas="b-slapacl">slapacl</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapadd">
+        <term><command>slapadd</command></term>
+        <listitem>
+          <para>
+            is used to add entries specified in LDAP Directory Interchange
+            Format (LDIF) to an LDAP database.
+          </para>
+          <indexterm zone="openldap slapadd">
+            <primary sortas="b-slapadd">slapadd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapauth">
+        <term><command>slapauth</command></term>
+        <listitem>
+          <para>
+            is used to check the behavior of the slapd
+            in mapping identities for authentication and
+            authorization purposes, as specified in slapd.conf.
+          </para>
+          <indexterm zone="openldap slapauth">
+            <primary sortas="b-slapauth">slapauth</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapcat">
+        <term><command>slapcat</command></term>
+        <listitem>
+          <para>
+            is used to generate an LDAP LDIF output based upon the
+            contents of a slapd database.
+          </para>
+          <indexterm zone="openldap slapcat">
+            <primary sortas="b-slapcat">slapcat</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapd">
+        <term><command>slapd</command></term>
+        <listitem>
+          <para>
+            is the standalone LDAP server.
+          </para>
+          <indexterm zone="openldap slapd">
+            <primary sortas="b-slapd">slapd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapdn">
+        <term><command>slapdn</command></term>
+        <listitem>
+          <para>
+            checks a list of string-represented DNs based on schema syntax.
+          </para>
+          <indexterm zone="openldap slapdn">
+            <primary sortas="b-slapdn">slapdn</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapindex">
+        <term><command>slapindex</command></term>
+        <listitem>
+          <para>
+            is used to regenerate slapd indexes based upon the current
+            contents of a database.
+          </para>
+          <indexterm zone="openldap slapindex">
+            <primary sortas="b-slapindex">slapindex</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slappasswd">
+        <term><command>slappasswd</command></term>
+        <listitem>
+          <para>
+            is an <application>OpenLDAP</application> password utility.
+          </para>
+          <indexterm zone="openldap slappasswd">
+            <primary sortas="b-slappasswd">slappasswd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slapschema">
+        <term><command>slapschema</command></term>
+        <listitem>
+          <para>
+            is used to check schema compliance of the contents
+            of a slapd database.
+          </para>
+          <indexterm zone="openldap slapschema">
+            <primary sortas="b-slapschema">slapschema</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="slaptest">
+        <term><command>slaptest</command></term>
+        <listitem>
+          <para>
+            checks the sanity of the <filename>slapd.conf</filename> file.
+          </para>
+          <indexterm zone="openldap slaptest">
+            <primary sortas="b-slaptest">slaptest</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="liblber">
+        <term><filename class="libraryfile">liblber.so</filename></term>
+        <listitem>
+          <para>
+            is a set of Lightweight Basic Encoding Rules routines. These
+            routines are used by the LDAP library routines to encode and decode
+            LDAP protocol elements using the (slightly simplified) Basic
+            Encoding Rules defined by LDAP. They are not normally used directly
+            by an LDAP application program except in the handling of controls
+            and extended operations.
+          </para>
+          <indexterm zone="openldap liblber">
+            <primary sortas="c-liblber">liblber.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libldap">
+        <term><filename class="libraryfile">libldap.so</filename></term>
+        <listitem>
+          <para>
+            supports the LDAP programs and provide functionality for
+            other programs interacting with LDAP.
+          </para>
+          <indexterm zone="openldap libldap">
+            <primary sortas="c-libldap">libldap.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libldap_r">
+        <term><filename class="libraryfile">libldap_r.so</filename></term>
+        <listitem>
+          <para>
+            contains the functions required by the LDAP programs to
+            produce the results from LDAP requests.
+          </para>
+          <indexterm zone="openldap libldap_r">
+            <primary sortas="c-libldap_r">libldap_r.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
+
+  </sect2>
+
+</sect1>
Index: server/other/other.xml
===================================================================
--- server/other/other.xml	(revision 602332ff433862c22f2f17d2c86ea70f8c634482)
+++ server/other/other.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
@@ -23,9 +23,9 @@
   that you can analyze the risks.</para>
 
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="openldap-systemd.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="openldap.xml"/>
 <!--  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="soprano.xml"/>-->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="unbound-systemd.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="unbound.xml"/>
 <!--  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="virtuoso.xml"/>-->
-  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="xinetd-systemd.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="xinetd.xml"/>
 
 </chapter>
Index: server/other/unbound-systemd.xml
===================================================================
--- server/other/unbound-systemd.xml	(revision 602332ff433862c22f2f17d2c86ea70f8c634482)
+++ 	(revision )
@@ -1,365 +1,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-
-  <!ENTITY unbound-download-http "http://www.unbound.net/downloads/unbound-&unbound-version;.tar.gz">
-  <!ENTITY unbound-download-ftp  " ">
-  <!ENTITY unbound-md5sum        "f85853baad15adc7ce8acefe6cda4cf8">
-  <!ENTITY unbound-size          "4.6 MB">
-  <!ENTITY unbound-buildsize     "90 MB (with HTML documentation)">
-  <!ENTITY unbound-time          "0.5 SBU (Add 0.2 SBU for tests)">
-]>
-
-<sect1 id="unbound" xreflabel="Unbound-&unbound-version;">
-  <?dbhtml filename="unbound.html"?>
-
-  <sect1info>
-    <othername>$LastChangedBy$</othername>
-    <date>$Date$</date>
-  </sect1info>
-
-  <title>Unbound-&unbound-version;</title>
-
-  <indexterm zone="unbound">
-    <primary sortas="a-Unbound">Unbound</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title>Introduction to Unbound</title>
-
-    <para>
-      <application>Unbound</application> is a validating, recursive, and caching
-      DNS resolver. It is designed as a set of modular components that
-      incorporate modern features, such as enhanced security (DNSSEC)
-      validation, Internet Protocol Version 6 (IPv6), and a client resolver
-      library API as an integral part of the architecture.
-    </para>
-
-    &lfs77_checked;
-
-    <bridgehead renderas="sect3">Package Information</bridgehead>
-    <itemizedlist spacing="compact">
-      <listitem>
-        <para>
-          Download (HTTP): <ulink url="&unbound-download-http;"/>
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download (FTP): <ulink url="&unbound-download-ftp;"/>
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download MD5 sum: &unbound-md5sum;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Download size: &unbound-size;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Estimated disk space required: &unbound-buildsize;
-        </para>
-      </listitem>
-      <listitem>
-        <para>
-          Estimated build time: &unbound-time;
-        </para>
-      </listitem>
-    </itemizedlist>
-
-    <bridgehead renderas="sect3">Unbound Dependencies</bridgehead>
-
-    <bridgehead renderas="sect4">Required</bridgehead>
-    <para role="required">
-      <xref linkend="openssl"/>
-<!-- broken?
-      or <xref linkend="nss"/>
--->
-    </para>
-
-    <bridgehead renderas="sect4">Optional</bridgehead>
-    <para role="optional">
-      <xref linkend="libevent"/>,
-      <xref linkend="python2"/>,
-      <xref linkend="swig"/> (for Python bindings),
-      <xref linkend="doxygen"/> (for html documentation), and
-      <ulink url="http://dnstap.info/">dnstap</ulink>
-    </para>
-
-    <para condition="html" role="usernotes">User Notes:
-      <ulink url="&blfs-wiki;/unbound"/>
-    </para>
-  </sect2>
-
-  <sect2 role="installation">
-    <title>Installation of Unbound</title>
-
-    <para>
-      There should be a dedicated user and group to take control of the
-      <command>unbound</command> daemon after it is started. Issue the following
-      commands as the <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>groupadd -g 88 unbound &amp;&amp;
-useradd -c "Unbound DNS resolver" -d /var/lib/unbound -u 88 \
-        -g unbound -s /bin/false unbound</userinput></screen>
-
-    <para>
-      Install <application>Unbound</application> by running the following
-      commands:
-    </para>
-
-<screen><userinput>./configure --prefix=/usr     \
-            --sysconfdir=/etc \
-            --disable-static  \
-            --with-pidfile=/run/unbound.pid &amp;&amp;
-make</userinput></screen>
-
-    <para>
-      If you have <xref linkend="doxygen"/> package installed and want to build 
-      html documentation, run the following command:
-    </para>
-
-<screen><userinput>make doc</userinput></screen>
-
-    <para>To test the results, issue <command>make check</command>.</para>
-
-    <para>
-      Now, as the <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>make install &amp;&amp;
-mv -v /usr/sbin/unbound-host /usr/bin/</userinput></screen>
-
-    <para>
-      If you built html documentation, install it by running the following
-      commands as the <systemitem class="username">root</systemitem> user:
-    </para>
-
-<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/unbound-&unbound-version; &amp;&amp;
-install -v -m644 doc/html/* /usr/share/doc/unbound-&unbound-version;</userinput></screen>
-
-  </sect2>
-
-  <sect2 role="commands">
-    <title>Command Explanations</title>
-
-    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-      href="../../xincludes/static-libraries.xml"/>
-
-    <para>
-      <option>--with-libevent</option>: This switch enables libevent support
-      allowing use of large outgoing port ranges.
-    </para>
-
-    <para>
-      <option>--with-pyunbound</option>: This switch enables building of the Python
-      bindings.
-    </para>
-
-  </sect2>
-
-  <sect2 role="configuration">
-    <title>Configuring Unbound</title>
-
-    <sect3 id="unbound-config">
-      <title>Config Files</title>
-
-      <para><filename>/etc/unbound/unbound.conf</filename></para>
-
-      <indexterm zone="unbound unbound-config">
-        <primary sortas="e-etc-unbound-unbound.conf">/etc/unbound/unbound.conf</primary>
-      </indexterm>
-
-    </sect3>
-
-    <sect3>
-      <title>Configuration Information</title>
-
-      <para>
-        In the default configuration, <command>unbound</command> will bind to
-        localhost (127.0.0.1 IP address) and allow recursive queries only from
-        localhost clients. If you want to use <command>unbound</command> for
-        local DNS resolution, run the following command as the
-        <systemitem class="username">root</systemitem> user:
-      </para>
-
-<screen role="root"><userinput>echo "nameserver 127.0.0.1" > /etc/resolv.conf</userinput></screen>
-
-      <para>
-        If you are using a DHCP client for connecting to a network,
-        <filename>/etc/resolv.conf</filename> gets overwritten with values
-        provided by DHCP server. You can override this, for example in <xref
-        linkend="dhcp"/>, by running the following command as the <systemitem
-        class="username">root</systemitem> user:
-      </para>
-
-<screen role="root"><userinput>sed -i '/request /i\supersede domain-name-servers 127.0.0.1;' \
-       /etc/dhcp/dhclient.conf</userinput></screen>
-
-      <para>
-        For advanced configuration see
-        <filename>/etc/unbound/unbound.conf</filename> file and the
-        documentation.
-      </para>
-
-      <para>
-        When <application>Unbound</application> is installed, some packages
-        may fail to build if <filename>/etc/unbound/root.key</filename> is
-        not present. It can be created by running the following command as
-        the <systemitem class="username">root</systemitem> user:
-      </para>
-
-<screen role="root"><userinput>unbound-anchor</userinput></screen>
-
-    </sect3>
-
-    <sect3 id="unbound-init">
-      <title>Systemd Units</title>
-
-      <para>
-        To start the <command>unbound</command> daemon at boot,
-        install the systemd unit from the <xref linkend="bootscripts"/>
-        package by running the following command as the
-        <systemitem class="username">root</systemitem> user:
-      </para>
-
-      <indexterm zone="unbound unbound-init">
-        <primary sortas="f-unbound">unbound</primary>
-      </indexterm>
-
-<screen role="root"><userinput>make install-unbound</userinput></screen>
-
-    </sect3>
-
-  </sect2>
-
-  <sect2 role="content">
-    <title>Contents</title>
-
-    <segmentedlist>
-      <segtitle>Installed Programs</segtitle>
-      <segtitle>Installed Library</segtitle>
-      <segtitle>Installed Directories</segtitle>
-
-      <seglistitem>
-        <seg>
-          unbound, unbound-anchor, unbound-checkconf, unbound-control,
-          unbound-control-setup, and unbound-host
-        </seg>
-        <seg>
-          libunbound.so and
-          /usr/lib/python&python2-majorver;/site-packages/_unbound.so
-        </seg>
-        <seg>
-          /etc/unbound and /usr/share/doc/unbound-&unbound-version;
-        </seg>
-      </seglistitem>
-    </segmentedlist>
-
-    <variablelist>
-      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
-      <?dbfo list-presentation="list"?>
-      <?dbhtml list-presentation="table"?>
-
-      <varlistentry id="unbound-prog">
-        <term><command>unbound</command></term>
-        <listitem>
-          <para>
-            is a DNS resolver daemon.
-          </para>
-          <indexterm zone="unbound unbound-prog">
-            <primary sortas="b-unbound">unbound</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="unbound-anchor">
-        <term><command>unbound-anchor</command></term>
-        <listitem>
-          <para>
-            performs setup or update of the root trust anchor for DNSSEC
-            validation.
-          </para>
-          <indexterm zone="unbound unbound-anchor">
-            <primary sortas="b-unbound-anchor">unbound-anchor</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="unbound-checkconf">
-        <term><command>unbound-checkconf</command></term>
-        <listitem>
-          <para>
-            checks <command>unbound</command> configuration file for syntax
-            and other errors.
-          </para>
-          <indexterm zone="unbound unbound-checkconf">
-            <primary sortas="b-unbound-checkconf">unbound-checkconf</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="unbound-control">
-        <term><command>unbound-control</command></term>
-        <listitem>
-          <para>
-            performs remote administration on the <command>unbound</command> DNS
-            resolver.
-          </para>
-          <indexterm zone="unbound unbound-control">
-            <primary sortas="b-unbound-control">unbound-control</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="unbound-control-setup">
-        <term><command>unbound-control-setup</command></term>
-        <listitem>
-          <para>
-            generates self-signed certificate and private keys for the server
-            and client.
-          </para>
-          <indexterm zone="unbound unbound-control-setup">
-            <primary sortas="b-unbound-control-setup">unbound-control-setup</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="unbound-host">
-        <term><command>unbound-host</command></term>
-        <listitem>
-          <para>
-            is a DNS lookup utility similar to <command>host</command> from
-            <xref linkend="bind-utils"/>.
-          </para>
-          <indexterm zone="unbound unbound-host">
-            <primary sortas="b-unbound-host">unbound-host</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="libunbound">
-        <term><filename class="libraryfile">libunbound.so</filename></term>
-        <listitem>
-          <para>
-            provides the <application>Unbound</application> API functions to
-            programs.
-          </para>
-          <indexterm zone="unbound libunbound">
-            <primary sortas="c-libunbound">libunbound.so</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-    </variablelist>
-
-  </sect2>
-
-</sect1>
Index: server/other/unbound.xml
===================================================================
--- server/other/unbound.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
+++ server/other/unbound.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
@@ -0,0 +1,365 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../../general.ent">
+  %general-entities;
+
+  <!ENTITY unbound-download-http "http://www.unbound.net/downloads/unbound-&unbound-version;.tar.gz">
+  <!ENTITY unbound-download-ftp  " ">
+  <!ENTITY unbound-md5sum        "f85853baad15adc7ce8acefe6cda4cf8">
+  <!ENTITY unbound-size          "4.6 MB">
+  <!ENTITY unbound-buildsize     "90 MB (with HTML documentation)">
+  <!ENTITY unbound-time          "0.5 SBU (Add 0.2 SBU for tests)">
+]>
+
+<sect1 id="unbound" xreflabel="Unbound-&unbound-version;">
+  <?dbhtml filename="unbound.html"?>
+
+  <sect1info>
+    <othername>$LastChangedBy$</othername>
+    <date>$Date$</date>
+  </sect1info>
+
+  <title>Unbound-&unbound-version;</title>
+
+  <indexterm zone="unbound">
+    <primary sortas="a-Unbound">Unbound</primary>
+  </indexterm>
+
+  <sect2 role="package">
+    <title>Introduction to Unbound</title>
+
+    <para>
+      <application>Unbound</application> is a validating, recursive, and caching
+      DNS resolver. It is designed as a set of modular components that
+      incorporate modern features, such as enhanced security (DNSSEC)
+      validation, Internet Protocol Version 6 (IPv6), and a client resolver
+      library API as an integral part of the architecture.
+    </para>
+
+    &lfs77_checked;
+
+    <bridgehead renderas="sect3">Package Information</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Download (HTTP): <ulink url="&unbound-download-http;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download (FTP): <ulink url="&unbound-download-ftp;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download MD5 sum: &unbound-md5sum;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download size: &unbound-size;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated disk space required: &unbound-buildsize;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated build time: &unbound-time;
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">Unbound Dependencies</bridgehead>
+
+    <bridgehead renderas="sect4">Required</bridgehead>
+    <para role="required">
+      <xref linkend="openssl"/>
+<!-- broken?
+      or <xref linkend="nss"/>
+-->
+    </para>
+
+    <bridgehead renderas="sect4">Optional</bridgehead>
+    <para role="optional">
+      <xref linkend="libevent"/>,
+      <xref linkend="python2"/>,
+      <xref linkend="swig"/> (for Python bindings),
+      <xref linkend="doxygen"/> (for html documentation), and
+      <ulink url="http://dnstap.info/">dnstap</ulink>
+    </para>
+
+    <para condition="html" role="usernotes">User Notes:
+      <ulink url="&blfs-wiki;/unbound"/>
+    </para>
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of Unbound</title>
+
+    <para>
+      There should be a dedicated user and group to take control of the
+      <command>unbound</command> daemon after it is started. Issue the following
+      commands as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>groupadd -g 88 unbound &amp;&amp;
+useradd -c "Unbound DNS resolver" -d /var/lib/unbound -u 88 \
+        -g unbound -s /bin/false unbound</userinput></screen>
+
+    <para>
+      Install <application>Unbound</application> by running the following
+      commands:
+    </para>
+
+<screen><userinput>./configure --prefix=/usr     \
+            --sysconfdir=/etc \
+            --disable-static  \
+            --with-pidfile=/run/unbound.pid &amp;&amp;
+make</userinput></screen>
+
+    <para>
+      If you have <xref linkend="doxygen"/> package installed and want to build 
+      html documentation, run the following command:
+    </para>
+
+<screen><userinput>make doc</userinput></screen>
+
+    <para>To test the results, issue <command>make check</command>.</para>
+
+    <para>
+      Now, as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>make install &amp;&amp;
+mv -v /usr/sbin/unbound-host /usr/bin/</userinput></screen>
+
+    <para>
+      If you built html documentation, install it by running the following
+      commands as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>install -v -m755 -d /usr/share/doc/unbound-&unbound-version; &amp;&amp;
+install -v -m644 doc/html/* /usr/share/doc/unbound-&unbound-version;</userinput></screen>
+
+  </sect2>
+
+  <sect2 role="commands">
+    <title>Command Explanations</title>
+
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+      href="../../xincludes/static-libraries.xml"/>
+
+    <para>
+      <option>--with-libevent</option>: This switch enables libevent support
+      allowing use of large outgoing port ranges.
+    </para>
+
+    <para>
+      <option>--with-pyunbound</option>: This switch enables building of the Python
+      bindings.
+    </para>
+
+  </sect2>
+
+  <sect2 role="configuration">
+    <title>Configuring Unbound</title>
+
+    <sect3 id="unbound-config">
+      <title>Config Files</title>
+
+      <para><filename>/etc/unbound/unbound.conf</filename></para>
+
+      <indexterm zone="unbound unbound-config">
+        <primary sortas="e-etc-unbound-unbound.conf">/etc/unbound/unbound.conf</primary>
+      </indexterm>
+
+    </sect3>
+
+    <sect3>
+      <title>Configuration Information</title>
+
+      <para>
+        In the default configuration, <command>unbound</command> will bind to
+        localhost (127.0.0.1 IP address) and allow recursive queries only from
+        localhost clients. If you want to use <command>unbound</command> for
+        local DNS resolution, run the following command as the
+        <systemitem class="username">root</systemitem> user:
+      </para>
+
+<screen role="root"><userinput>echo "nameserver 127.0.0.1" > /etc/resolv.conf</userinput></screen>
+
+      <para>
+        If you are using a DHCP client for connecting to a network,
+        <filename>/etc/resolv.conf</filename> gets overwritten with values
+        provided by DHCP server. You can override this, for example in <xref
+        linkend="dhcp"/>, by running the following command as the <systemitem
+        class="username">root</systemitem> user:
+      </para>
+
+<screen role="root"><userinput>sed -i '/request /i\supersede domain-name-servers 127.0.0.1;' \
+       /etc/dhcp/dhclient.conf</userinput></screen>
+
+      <para>
+        For advanced configuration see
+        <filename>/etc/unbound/unbound.conf</filename> file and the
+        documentation.
+      </para>
+
+      <para>
+        When <application>Unbound</application> is installed, some packages
+        may fail to build if <filename>/etc/unbound/root.key</filename> is
+        not present. It can be created by running the following command as
+        the <systemitem class="username">root</systemitem> user:
+      </para>
+
+<screen role="root"><userinput>unbound-anchor</userinput></screen>
+
+    </sect3>
+
+    <sect3 id="unbound-init">
+      <title>Systemd Units</title>
+
+      <para>
+        To start the <command>unbound</command> daemon at boot,
+        install the systemd unit from the <xref linkend="bootscripts"/>
+        package by running the following command as the
+        <systemitem class="username">root</systemitem> user:
+      </para>
+
+      <indexterm zone="unbound unbound-init">
+        <primary sortas="f-unbound">unbound</primary>
+      </indexterm>
+
+<screen role="root"><userinput>make install-unbound</userinput></screen>
+
+    </sect3>
+
+  </sect2>
+
+  <sect2 role="content">
+    <title>Contents</title>
+
+    <segmentedlist>
+      <segtitle>Installed Programs</segtitle>
+      <segtitle>Installed Library</segtitle>
+      <segtitle>Installed Directories</segtitle>
+
+      <seglistitem>
+        <seg>
+          unbound, unbound-anchor, unbound-checkconf, unbound-control,
+          unbound-control-setup, and unbound-host
+        </seg>
+        <seg>
+          libunbound.so and
+          /usr/lib/python&python2-majorver;/site-packages/_unbound.so
+        </seg>
+        <seg>
+          /etc/unbound and /usr/share/doc/unbound-&unbound-version;
+        </seg>
+      </seglistitem>
+    </segmentedlist>
+
+    <variablelist>
+      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?>
+
+      <varlistentry id="unbound-prog">
+        <term><command>unbound</command></term>
+        <listitem>
+          <para>
+            is a DNS resolver daemon.
+          </para>
+          <indexterm zone="unbound unbound-prog">
+            <primary sortas="b-unbound">unbound</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="unbound-anchor">
+        <term><command>unbound-anchor</command></term>
+        <listitem>
+          <para>
+            performs setup or update of the root trust anchor for DNSSEC
+            validation.
+          </para>
+          <indexterm zone="unbound unbound-anchor">
+            <primary sortas="b-unbound-anchor">unbound-anchor</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="unbound-checkconf">
+        <term><command>unbound-checkconf</command></term>
+        <listitem>
+          <para>
+            checks <command>unbound</command> configuration file for syntax
+            and other errors.
+          </para>
+          <indexterm zone="unbound unbound-checkconf">
+            <primary sortas="b-unbound-checkconf">unbound-checkconf</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="unbound-control">
+        <term><command>unbound-control</command></term>
+        <listitem>
+          <para>
+            performs remote administration on the <command>unbound</command> DNS
+            resolver.
+          </para>
+          <indexterm zone="unbound unbound-control">
+            <primary sortas="b-unbound-control">unbound-control</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="unbound-control-setup">
+        <term><command>unbound-control-setup</command></term>
+        <listitem>
+          <para>
+            generates self-signed certificate and private keys for the server
+            and client.
+          </para>
+          <indexterm zone="unbound unbound-control-setup">
+            <primary sortas="b-unbound-control-setup">unbound-control-setup</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="unbound-host">
+        <term><command>unbound-host</command></term>
+        <listitem>
+          <para>
+            is a DNS lookup utility similar to <command>host</command> from
+            <xref linkend="bind-utils"/>.
+          </para>
+          <indexterm zone="unbound unbound-host">
+            <primary sortas="b-unbound-host">unbound-host</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libunbound">
+        <term><filename class="libraryfile">libunbound.so</filename></term>
+        <listitem>
+          <para>
+            provides the <application>Unbound</application> API functions to
+            programs.
+          </para>
+          <indexterm zone="unbound libunbound">
+            <primary sortas="c-libunbound">libunbound.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
+
+  </sect2>
+
+</sect1>
Index: server/other/xinetd-systemd.xml
===================================================================
--- server/other/xinetd-systemd.xml	(revision 602332ff433862c22f2f17d2c86ea70f8c634482)
+++ 	(revision )
@@ -1,499 +1,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
-   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-  <!ENTITY % general-entities SYSTEM "../../general.ent">
-  %general-entities;
-
-  <!-- Development seems to be over and the xinetd.og site does not seem to exist any more. -->
-  <!-- <!ENTITY xinetd-download-http "http://www.xinetd.org/xinetd-&xinetd-version;.tar.gz"> -->
-  <!ENTITY xinetd-download-http " ">
-  <!ENTITY xinetd-download-ftp  "&sources-anduin-ftp;/xinetd/xinetd-&xinetd-version;.tar.gz">
-  <!ENTITY xinetd-md5sum        "77358478fd58efa6366accae99b8b04c">
-  <!ENTITY xinetd-size          "308 KB">
-  <!ENTITY xinetd-buildsize     "5.0 MB">
-  <!ENTITY xinetd-time          "less than 0.1 SBU">
-]>
-
-<sect1 id="xinetd" xreflabel="xinetd-&xinetd-version;">
-  <?dbhtml filename="xinetd.html"?>
-
-  <sect1info>
-    <othername>$LastChangedBy$</othername>
-    <date>$Date$</date>
-  </sect1info>
-
-  <title>xinetd-&xinetd-version;</title>
-
-  <indexterm zone="xinetd">
-    <primary sortas="a-Xinetd">Xinetd</primary>
-  </indexterm>
-
-  <sect2 role="package">
-    <title>Introduction to xinetd</title>
-
-    <para><application>xinetd</application> is the eXtended InterNET services
-    daemon, a secure replacement for <command>inetd</command>.</para>
-
-    &lfs77_checked;
-
-    <bridgehead renderas="sect3">Package Information</bridgehead>
-    <itemizedlist spacing="compact">
-      <listitem>
-        <para>Download (HTTP): <ulink url="&xinetd-download-http;"/></para>
-      </listitem>
-      <listitem>
-        <para>Download (FTP): <ulink url="&xinetd-download-ftp;"/></para>
-      </listitem>
-      <listitem>
-        <para>Download MD5 sum: &xinetd-md5sum;</para>
-      </listitem>
-      <listitem>
-        <para>Download size: &xinetd-size;</para>
-      </listitem>
-      <listitem>
-        <para>Estimated disk space required: &xinetd-buildsize;</para>
-      </listitem>
-      <listitem>
-        <para>Estimated build time: &xinetd-time;</para>
-      </listitem>
-    </itemizedlist>
-
-    <bridgehead renderas="sect3">xinetd Dependencies</bridgehead>
-
-    <bridgehead renderas="sect4">Optional</bridgehead>
-    <para role="optional">
-      <ulink url="ftp://ftp.porcupine.org/pub/security/">TCP wrappers (deprecated)</ulink>
-    </para>
-
-    <para condition="html" role="usernotes">User Notes:
-    <ulink url="&blfs-wiki;/xinetd"/></para>
-
-  </sect2>
-
-  <sect2 role="installation">
-    <title>Installation of xinetd</title>
-
-    <para>Install <application>xinetd</application> by running the following
-    commands:</para>
-
-<screen><userinput>sed -i -e "s/exec_server/child_process/" xinetd/builtins.c       &amp;&amp;
-sed -i -e "/register unsigned count/s/register//" xinetd/itox.c  &amp;&amp;
-./configure --prefix=/usr --mandir=/usr/share/man --with-loadavg &amp;&amp;
-make</userinput></screen>
-
-    <para>This package does not come with a test suite.</para>
-
-    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
-
-<screen role="root"><userinput>make install</userinput></screen>
-
-  </sect2>
-
-  <sect2 role="commands">
-     <title>Command Explanations</title>
-
-     <!-- CVE-2013-4342 https://bugzilla.redhat.com/show_bug.cgi?id=1006100 -->
-     <para><command>sed ... xinetd/builtins.c</command>: This command fixes
-     a security issue.</para>
-
-     <para><command>sed ... xinetd/itox.c</command>: This command fixes some
-     compiler warnings.</para>
-
-  </sect2>
-
-  <sect2 role="configuration">
-    <title>Configuring xinetd</title>
-
-    <sect3 id="xinetd-config">
-      <title>Config Files</title>
-
-      <para><filename>/etc/xinetd.conf</filename> and
-      <filename class="directory">/etc/xinetd.d/*</filename></para>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.conf">/etc/xinetd.conf</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d">/etc/xinetd.d/*</primary>
-      </indexterm>
-
-    </sect3>
-
-    <sect3>
-      <title>Configuration Information</title>
-
-      <para>Ensure the path to all daemons is
-      <filename class="directory">/usr/sbin</filename>, rather than the default
-      path of <filename class="directory">/usr/bin</filename>, and install the
-      <application>xinetd</application> configuration files by running the
-      following commands as the <systemitem class="username">root</systemitem>
-      user:</para>
-
-<screen role="root"><userinput>cat &gt; /etc/xinetd.conf &lt;&lt; "EOF"
-<literal># Begin /etc/xinetd
-# Configuration file for xinetd
-
-defaults
-{
-      instances       = 60
-      log_type        = SYSLOG daemon
-      log_on_success  = HOST PID USERID
-      log_on_failure  = HOST USERID
-      cps             = 25 30
-}
-
-# All service files are stored in the /etc/xinetd.d directory
-
-includedir /etc/xinetd.d
-
-# End /etc/xinetd</literal>
-EOF</userinput></screen>
-
-      <para>All of the following files have the statement, "disable = yes".
-      To activate any of the services, this statement will need to be changed
-      to "disable = no".</para>
-
-      <note>
-        <para>The following files are listed to demonstrate several
-        <application>xinetd</application> applications. In many cases, these
-        applications are not needed. Some classic applications are
-        considered security risks. For example, <command>telnet</command>,
-        <command>rlogin</command>, <command>rexec</command>, and
-        <command>rsh</command> transmit unencrypted usernames and passwords
-        over the network and can be easily replaced with a more secure
-        alternative: <command>ssh</command>.</para>
-      </note>
-
-<screen role="root"><?dbfo keep-together="auto"?><userinput>install -v -d -m755 /etc/xinetd.d &amp;&amp;
-
-cat &gt; /etc/xinetd.d/systat &lt;&lt; "EOF" &amp;&amp;
-<literal># Begin /etc/xinetd.d/systat
-
-service systat
-{
-   disable           = yes
-   socket_type       = stream
-   wait              = no
-   user              = nobody
-   server            = /bin/ps
-   server_args       = -auwwx
-   only_from         = 128.138.209.0
-   log_on_success    = HOST
-}
-
-# End /etc/xinetd.d/systat</literal>
-EOF
-
-cat &gt; /etc/xinetd.d/echo &lt;&lt; "EOF" &amp;&amp;
-<literal># Begin /etc/xinetd.d/echo
-
-service echo
-{
-   disable     = yes
-   type        = INTERNAL
-   id          = echo-stream
-   socket_type = stream
-   protocol    = tcp
-   user        = root
-   wait        = no
-}
-
-service echo
-{
-   disable     = yes
-   type        = INTERNAL
-   id          = echo-dgram
-   socket_type = dgram
-   protocol    = udp
-   user        = root
-   wait        = yes
-}
-
-# End /etc/xinetd.d/echo</literal>
-EOF
-
-cat &gt; /etc/xinetd.d/chargen &lt;&lt; "EOF" &amp;&amp;
-<literal># Begin /etc/xinetd.d/chargen
-
-service chargen
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = chargen-stream
-   socket_type    = stream
-   protocol       = tcp
-   user           = root
-   wait           = no
-}
-
-service chargen
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = chargen-dgram
-   socket_type    = dgram
-   protocol       = udp
-   user           = root
-   wait           = yes
-}
-
-# End /etc/xinetd.d/chargen</literal>
-EOF
-
-cat &gt; /etc/xinetd.d/daytime &lt;&lt; "EOF" &amp;&amp;
-<literal># Begin /etc/xinetd.d/daytime
-
-service daytime
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = daytime-stream
-   socket_type    = stream
-   protocol       = tcp
-   user           = root
-   wait           = no
-}
-
-service daytime
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = daytime-dgram
-   socket_type    = dgram
-   protocol       = udp
-   user           = root
-   wait           = yes
-}
-
-# End /etc/xinetd.d/daytime</literal>
-EOF
-<!-- The last one without && -->
-cat &gt; /etc/xinetd.d/time &lt;&lt; "EOF"
-<literal># Begin /etc/xinetd.d/time
-
-service time
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = time-stream
-   socket_type    = stream
-   protocol       = tcp
-   user           = root
-   wait           = no
-}
-
-service time
-{
-   disable        = yes
-   type           = INTERNAL
-   id             = time-dgram
-   socket_type    = dgram
-   protocol       = udp
-   user           = root
-   wait           = yes
-}
-
-# End /etc/xinetd.d/time</literal>
-EOF</userinput></screen>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-login">/etc/xinetd.d/login</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-shell">/etc/xinetd.d/shell</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-exec">/etc/xinetd.d/exec</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-comsat">/etc/xinetd.d/comsat</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-talk">/etc/xinetd.d/talk</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-ntalk">/etc/xinetd.d/ntalk</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-telnet">/etc/xinetd.d/telnet</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-ftp">/etc/xinetd.d/ftp</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-tftp">/etc/xinetd.d/tftp</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-systat">/etc/xinetd.d/systat</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-finger">/etc/xinetd.d/finger</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-netstat">/etc/xinetd.d/netstat</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-echo">/etc/xinetd.d/echo</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-chargen">/etc/xinetd.d/chargen</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-daytime">/etc/xinetd.d/daytime</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-time">/etc/xinetd.d/time</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-rstatd">/etc/xinetd.d/rstatd</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-rquotad">/etc/xinetd.d/rquotad</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-ruserd">/etc/xinetd.d/ruserd</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-sprayd">/etc/xinetd.d/sprayd</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-walld">/etc/xinetd.d/walld</primary>
-      </indexterm>
-
-      <indexterm zone="xinetd xinetd-config">
-        <primary sortas="e-etc-xinetd.d-irc">/etc/xinetd.d/irc</primary>
-      </indexterm>
-
-      <para>The format of the <filename>/etc/xinetd.conf</filename> is
-      documented in the <filename>xinetd.conf.5</filename> man page.
-      <!-- 13-12-12 the http://www.xinetd.org is broken 
-      Further
-      information can be found at <ulink url="http://www.xinetd.org"/>.
-      -->
-     </para>
-
-    </sect3>
-
-    <sect3  id="xinetd-init">
-      <title>Systemd Units</title>
-
-      <para>
-        To start the <command>xinetd</command> daemon at boot,
-        install the systemd unit from the <xref linkend="bootscripts"/>
-        package by running the following command as the
-        <systemitem class="username">root</systemitem> user:
-      </para>
-
-      <indexterm zone="xinetd xinetd-init">
-        <primary sortas="f-xinetd">xinetd</primary>
-      </indexterm>
-
-<screen role="root"><userinput>make install-xinetd</userinput></screen>
-
-      <para>As the <systemitem class="username">root</systemitem> user,
-      use the <command>systemctl</command> utility to start
-      <command>xinetd</command>:</para>
-
-<screen role="root"><userinput>systemctl start xinetd</userinput></screen>
-
-      <para>Check the <command>journalctl</command> output to ensure the
-      appropriate services are started. If no services are enabled, the program
-      will not start without the <option>-stayalive</option> option.</para>
-
-<!--
-<screen><literal>Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rlogind is not
-executable [line=29]
-Aug 22 21:40:21 dps10 xinetd[2696]: Error parsing attribute server -
-DISABLING SERVICE [line=29]
-Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rshd is not
-executable [line=42]</literal></screen>
-
-      <para>These errors are because most of the servers
-      <command>xinetd</command> is trying to control are not
-      installed yet.</para>
--->
-    </sect3>
-
-  </sect2>
-
-  <sect2 role="content">
-    <title>Contents</title>
-
-    <segmentedlist>
-      <segtitle>Installed Programs</segtitle>
-      <segtitle>Installed Libraries</segtitle>
-      <segtitle>Installed Directories</segtitle>
-
-      <seglistitem>
-        <seg>itox, xconv.pl, and xinetd</seg>
-        <seg>None</seg>
-        <seg>/etc/xinetd.d/</seg>
-      </seglistitem>
-    </segmentedlist>
-
-    <variablelist>
-      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
-      <?dbfo list-presentation="list"?>
-      <?dbhtml list-presentation="table"?>
-
-      <varlistentry id="itox">
-        <term><command>itox</command></term>
-        <listitem>
-          <para>is a utility used for converting
-          <filename>inetd.conf</filename> files to
-          <filename>xinetd.conf</filename> format.</para>
-          <indexterm zone="xinetd itox">
-            <primary sortas="b-itox">itox</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="xconv.pl">
-        <term><command>xconv.pl</command></term>
-        <listitem>
-          <para>is a <application>Perl</application> script used for
-          converting <filename>inetd.conf</filename> files to
-          <filename>xinetd.conf</filename> format, similar to
-          <command>itox</command>.</para>
-          <indexterm zone="xinetd xconv.pl">
-            <primary sortas="b-xconv.pl">xconv.pl</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-      <varlistentry id="xinetd-prog">
-        <term><command>xinetd</command></term>
-        <listitem>
-          <para>is the Internet services daemon.</para>
-          <indexterm zone="xinetd xinetd-prog">
-            <primary sortas="b-xinetd">xinetd</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
-
-    </variablelist>
-
-  </sect2>
-
-</sect1>
Index: server/other/xinetd.xml
===================================================================
--- server/other/xinetd.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
+++ server/other/xinetd.xml	(revision 51d044fd30d588ddbc6bcc3a06d9c8e7f4909992)
@@ -0,0 +1,499 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../../general.ent">
+  %general-entities;
+
+  <!-- Development seems to be over and the xinetd.og site does not seem to exist any more. -->
+  <!-- <!ENTITY xinetd-download-http "http://www.xinetd.org/xinetd-&xinetd-version;.tar.gz"> -->
+  <!ENTITY xinetd-download-http " ">
+  <!ENTITY xinetd-download-ftp  "&sources-anduin-ftp;/xinetd/xinetd-&xinetd-version;.tar.gz">
+  <!ENTITY xinetd-md5sum        "77358478fd58efa6366accae99b8b04c">
+  <!ENTITY xinetd-size          "308 KB">
+  <!ENTITY xinetd-buildsize     "5.0 MB">
+  <!ENTITY xinetd-time          "less than 0.1 SBU">
+]>
+
+<sect1 id="xinetd" xreflabel="xinetd-&xinetd-version;">
+  <?dbhtml filename="xinetd.html"?>
+
+  <sect1info>
+    <othername>$LastChangedBy$</othername>
+    <date>$Date$</date>
+  </sect1info>
+
+  <title>xinetd-&xinetd-version;</title>
+
+  <indexterm zone="xinetd">
+    <primary sortas="a-Xinetd">Xinetd</primary>
+  </indexterm>
+
+  <sect2 role="package">
+    <title>Introduction to xinetd</title>
+
+    <para><application>xinetd</application> is the eXtended InterNET services
+    daemon, a secure replacement for <command>inetd</command>.</para>
+
+    &lfs77_checked;
+
+    <bridgehead renderas="sect3">Package Information</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>Download (HTTP): <ulink url="&xinetd-download-http;"/></para>
+      </listitem>
+      <listitem>
+        <para>Download (FTP): <ulink url="&xinetd-download-ftp;"/></para>
+      </listitem>
+      <listitem>
+        <para>Download MD5 sum: &xinetd-md5sum;</para>
+      </listitem>
+      <listitem>
+        <para>Download size: &xinetd-size;</para>
+      </listitem>
+      <listitem>
+        <para>Estimated disk space required: &xinetd-buildsize;</para>
+      </listitem>
+      <listitem>
+        <para>Estimated build time: &xinetd-time;</para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">xinetd Dependencies</bridgehead>
+
+    <bridgehead renderas="sect4">Optional</bridgehead>
+    <para role="optional">
+      <ulink url="ftp://ftp.porcupine.org/pub/security/">TCP wrappers (deprecated)</ulink>
+    </para>
+
+    <para condition="html" role="usernotes">User Notes:
+    <ulink url="&blfs-wiki;/xinetd"/></para>
+
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of xinetd</title>
+
+    <para>Install <application>xinetd</application> by running the following
+    commands:</para>
+
+<screen><userinput>sed -i -e "s/exec_server/child_process/" xinetd/builtins.c       &amp;&amp;
+sed -i -e "/register unsigned count/s/register//" xinetd/itox.c  &amp;&amp;
+./configure --prefix=/usr --mandir=/usr/share/man --with-loadavg &amp;&amp;
+make</userinput></screen>
+
+    <para>This package does not come with a test suite.</para>
+
+    <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
+
+<screen role="root"><userinput>make install</userinput></screen>
+
+  </sect2>
+
+  <sect2 role="commands">
+     <title>Command Explanations</title>
+
+     <!-- CVE-2013-4342 https://bugzilla.redhat.com/show_bug.cgi?id=1006100 -->
+     <para><command>sed ... xinetd/builtins.c</command>: This command fixes
+     a security issue.</para>
+
+     <para><command>sed ... xinetd/itox.c</command>: This command fixes some
+     compiler warnings.</para>
+
+  </sect2>
+
+  <sect2 role="configuration">
+    <title>Configuring xinetd</title>
+
+    <sect3 id="xinetd-config">
+      <title>Config Files</title>
+
+      <para><filename>/etc/xinetd.conf</filename> and
+      <filename class="directory">/etc/xinetd.d/*</filename></para>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.conf">/etc/xinetd.conf</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d">/etc/xinetd.d/*</primary>
+      </indexterm>
+
+    </sect3>
+
+    <sect3>
+      <title>Configuration Information</title>
+
+      <para>Ensure the path to all daemons is
+      <filename class="directory">/usr/sbin</filename>, rather than the default
+      path of <filename class="directory">/usr/bin</filename>, and install the
+      <application>xinetd</application> configuration files by running the
+      following commands as the <systemitem class="username">root</systemitem>
+      user:</para>
+
+<screen role="root"><userinput>cat &gt; /etc/xinetd.conf &lt;&lt; "EOF"
+<literal># Begin /etc/xinetd
+# Configuration file for xinetd
+
+defaults
+{
+      instances       = 60
+      log_type        = SYSLOG daemon
+      log_on_success  = HOST PID USERID
+      log_on_failure  = HOST USERID
+      cps             = 25 30
+}
+
+# All service files are stored in the /etc/xinetd.d directory
+
+includedir /etc/xinetd.d
+
+# End /etc/xinetd</literal>
+EOF</userinput></screen>
+
+      <para>All of the following files have the statement, "disable = yes".
+      To activate any of the services, this statement will need to be changed
+      to "disable = no".</para>
+
+      <note>
+        <para>The following files are listed to demonstrate several
+        <application>xinetd</application> applications. In many cases, these
+        applications are not needed. Some classic applications are
+        considered security risks. For example, <command>telnet</command>,
+        <command>rlogin</command>, <command>rexec</command>, and
+        <command>rsh</command> transmit unencrypted usernames and passwords
+        over the network and can be easily replaced with a more secure
+        alternative: <command>ssh</command>.</para>
+      </note>
+
+<screen role="root"><?dbfo keep-together="auto"?><userinput>install -v -d -m755 /etc/xinetd.d &amp;&amp;
+
+cat &gt; /etc/xinetd.d/systat &lt;&lt; "EOF" &amp;&amp;
+<literal># Begin /etc/xinetd.d/systat
+
+service systat
+{
+   disable           = yes
+   socket_type       = stream
+   wait              = no
+   user              = nobody
+   server            = /bin/ps
+   server_args       = -auwwx
+   only_from         = 128.138.209.0
+   log_on_success    = HOST
+}
+
+# End /etc/xinetd.d/systat</literal>
+EOF
+
+cat &gt; /etc/xinetd.d/echo &lt;&lt; "EOF" &amp;&amp;
+<literal># Begin /etc/xinetd.d/echo
+
+service echo
+{
+   disable     = yes
+   type        = INTERNAL
+   id          = echo-stream
+   socket_type = stream
+   protocol    = tcp
+   user        = root
+   wait        = no
+}
+
+service echo
+{
+   disable     = yes
+   type        = INTERNAL
+   id          = echo-dgram
+   socket_type = dgram
+   protocol    = udp
+   user        = root
+   wait        = yes
+}
+
+# End /etc/xinetd.d/echo</literal>
+EOF
+
+cat &gt; /etc/xinetd.d/chargen &lt;&lt; "EOF" &amp;&amp;
+<literal># Begin /etc/xinetd.d/chargen
+
+service chargen
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = chargen-stream
+   socket_type    = stream
+   protocol       = tcp
+   user           = root
+   wait           = no
+}
+
+service chargen
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = chargen-dgram
+   socket_type    = dgram
+   protocol       = udp
+   user           = root
+   wait           = yes
+}
+
+# End /etc/xinetd.d/chargen</literal>
+EOF
+
+cat &gt; /etc/xinetd.d/daytime &lt;&lt; "EOF" &amp;&amp;
+<literal># Begin /etc/xinetd.d/daytime
+
+service daytime
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = daytime-stream
+   socket_type    = stream
+   protocol       = tcp
+   user           = root
+   wait           = no
+}
+
+service daytime
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = daytime-dgram
+   socket_type    = dgram
+   protocol       = udp
+   user           = root
+   wait           = yes
+}
+
+# End /etc/xinetd.d/daytime</literal>
+EOF
+<!-- The last one without && -->
+cat &gt; /etc/xinetd.d/time &lt;&lt; "EOF"
+<literal># Begin /etc/xinetd.d/time
+
+service time
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = time-stream
+   socket_type    = stream
+   protocol       = tcp
+   user           = root
+   wait           = no
+}
+
+service time
+{
+   disable        = yes
+   type           = INTERNAL
+   id             = time-dgram
+   socket_type    = dgram
+   protocol       = udp
+   user           = root
+   wait           = yes
+}
+
+# End /etc/xinetd.d/time</literal>
+EOF</userinput></screen>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-login">/etc/xinetd.d/login</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-shell">/etc/xinetd.d/shell</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-exec">/etc/xinetd.d/exec</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-comsat">/etc/xinetd.d/comsat</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-talk">/etc/xinetd.d/talk</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-ntalk">/etc/xinetd.d/ntalk</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-telnet">/etc/xinetd.d/telnet</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-ftp">/etc/xinetd.d/ftp</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-tftp">/etc/xinetd.d/tftp</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-systat">/etc/xinetd.d/systat</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-finger">/etc/xinetd.d/finger</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-netstat">/etc/xinetd.d/netstat</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-echo">/etc/xinetd.d/echo</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-chargen">/etc/xinetd.d/chargen</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-daytime">/etc/xinetd.d/daytime</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-time">/etc/xinetd.d/time</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-rstatd">/etc/xinetd.d/rstatd</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-rquotad">/etc/xinetd.d/rquotad</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-ruserd">/etc/xinetd.d/ruserd</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-sprayd">/etc/xinetd.d/sprayd</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-walld">/etc/xinetd.d/walld</primary>
+      </indexterm>
+
+      <indexterm zone="xinetd xinetd-config">
+        <primary sortas="e-etc-xinetd.d-irc">/etc/xinetd.d/irc</primary>
+      </indexterm>
+
+      <para>The format of the <filename>/etc/xinetd.conf</filename> is
+      documented in the <filename>xinetd.conf.5</filename> man page.
+      <!-- 13-12-12 the http://www.xinetd.org is broken 
+      Further
+      information can be found at <ulink url="http://www.xinetd.org"/>.
+      -->
+     </para>
+
+    </sect3>
+
+    <sect3  id="xinetd-init">
+      <title>Systemd Units</title>
+
+      <para>
+        To start the <command>xinetd</command> daemon at boot,
+        install the systemd unit from the <xref linkend="bootscripts"/>
+        package by running the following command as the
+        <systemitem class="username">root</systemitem> user:
+      </para>
+
+      <indexterm zone="xinetd xinetd-init">
+        <primary sortas="f-xinetd">xinetd</primary>
+      </indexterm>
+
+<screen role="root"><userinput>make install-xinetd</userinput></screen>
+
+      <para>As the <systemitem class="username">root</systemitem> user,
+      use the <command>systemctl</command> utility to start
+      <command>xinetd</command>:</para>
+
+<screen role="root"><userinput>systemctl start xinetd</userinput></screen>
+
+      <para>Check the <command>journalctl</command> output to ensure the
+      appropriate services are started. If no services are enabled, the program
+      will not start without the <option>-stayalive</option> option.</para>
+
+<!--
+<screen><literal>Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rlogind is not
+executable [line=29]
+Aug 22 21:40:21 dps10 xinetd[2696]: Error parsing attribute server -
+DISABLING SERVICE [line=29]
+Aug 22 21:40:21 dps10 xinetd[2696]: Server /usr/sbin/in.rshd is not
+executable [line=42]</literal></screen>
+
+      <para>These errors are because most of the servers
+      <command>xinetd</command> is trying to control are not
+      installed yet.</para>
+-->
+    </sect3>
+
+  </sect2>
+
+  <sect2 role="content">
+    <title>Contents</title>
+
+    <segmentedlist>
+      <segtitle>Installed Programs</segtitle>
+      <segtitle>Installed Libraries</segtitle>
+      <segtitle>Installed Directories</segtitle>
+
+      <seglistitem>
+        <seg>itox, xconv.pl, and xinetd</seg>
+        <seg>None</seg>
+        <seg>/etc/xinetd.d/</seg>
+      </seglistitem>
+    </segmentedlist>
+
+    <variablelist>
+      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?>
+
+      <varlistentry id="itox">
+        <term><command>itox</command></term>
+        <listitem>
+          <para>is a utility used for converting
+          <filename>inetd.conf</filename> files to
+          <filename>xinetd.conf</filename> format.</para>
+          <indexterm zone="xinetd itox">
+            <primary sortas="b-itox">itox</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="xconv.pl">
+        <term><command>xconv.pl</command></term>
+        <listitem>
+          <para>is a <application>Perl</application> script used for
+          converting <filename>inetd.conf</filename> files to
+          <filename>xinetd.conf</filename> format, similar to
+          <command>itox</command>.</para>
+          <indexterm zone="xinetd xconv.pl">
+            <primary sortas="b-xconv.pl">xconv.pl</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="xinetd-prog">
+        <term><command>xinetd</command></term>
+        <listitem>
+          <para>is the Internet services daemon.</para>
+          <indexterm zone="xinetd xinetd-prog">
+            <primary sortas="b-xinetd">xinetd</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+    </variablelist>
+
+  </sect2>
+
+</sect1>
