\FOT{2}\Seq%
{\def\HeadingLevel%
{0}\def\PageNumberFormat%
{1}\def\PageNumberRestart%
{0}\def\PageNColumns%
{1}\def\PageColumnSep%
{36\p@}\def\PageBalanceColumns%
{0}\def\WritingMode%
{lefttoright}\def\InputWhitespaceTreatment%
{collapse}\def\LeftMargin%
{72\p@}\def\RightMargin%
{72\p@}\def\PageWidth%
{612\p@}\def\PageHeight%
{792\p@}\def\MinLeading%
{2\p@}\def\MinLeadingFactor%
{0}\def\TopMargin%
{72\p@}\def\BottomMargin%
{96\p@}\def\HeaderMargin%
{48\p@}\def\FooterMargin%
{48\p@}}\Node%
{}\Node%
{\def\Element%
{0}}\Seq%
{}\SpS%
{\def\PageNColumns%
{1}\def\PageNumberRestart%
{0}\def\PageNumberFormat%
{1}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\InputWhitespaceTreatment%
{collapse}\def\Quadding%
{start}\def\fSize%
{10\p@}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\fFamName{Times-New-Roman}\def\LineSpacing%
{13\p@}\def\LineSpacingFactor%
{0}}
\SpSOtherBackLeftFooter%
{}
\SpSOtherBackLeftHeader%
{}
\SpSOtherBackCenterFooter%
{}
\SpSOtherBackCenterHeader%
{}
\SpSOtherBackRightFooter%
{\Seq%
{\def\fPosture%
{italic}}\insertPageNumber%
{}\endSeq{}}
\SpSOtherBackRightHeader%
{\Seq%
{\def\fPosture%
{italic}}\Node%
{\def\Element%
{2}\def\ProcessingMode%
{hf-mode}}\Seq%
{}PigeonDeliver and Postfix HOWTO\endSeq{}\endNode{}\endSeq{}}
\SpSFirstBackLeftFooter%
{}
\SpSFirstBackLeftHeader%
{}
\SpSFirstBackCenterFooter%
{}
\SpSFirstBackCenterHeader%
{}
\SpSFirstBackRightFooter%
{\Seq%
{\def\fPosture%
{italic}}\insertPageNumber%
{}\endSeq{}}
\SpSFirstBackRightHeader%
{}
\SpSOtherFrontLeftFooter%
{}
\SpSOtherFrontLeftHeader%
{}
\SpSOtherFrontCenterFooter%
{}
\SpSOtherFrontCenterHeader%
{}
\SpSOtherFrontRightFooter%
{\Seq%
{\def\fPosture%
{italic}}\insertPageNumber%
{}\endSeq{}}
\SpSOtherFrontRightHeader%
{\Seq%
{\def\fPosture%
{italic}}\Node%
{\def\Element%
{2}\def\ProcessingMode%
{hf-mode}}\Seq%
{}PigeonDeliver and Postfix HOWTO\endSeq{}\endNode{}\endSeq{}}
\SpSFirstFrontLeftFooter%
{}
\SpSFirstFrontLeftHeader%
{}
\SpSFirstFrontCenterFooter%
{}
\SpSFirstFrontCenterHeader%
{}
\SpSFirstFrontRightFooter%
{\Seq%
{\def\fPosture%
{italic}}\insertPageNumber%
{}\endSeq{}}
\SpSFirstFrontRightHeader%
{}\Seq%
{}\Seq%
{}\Seq%
{}\Node%
{\def\Element%
{2}\def\ProcessingMode%
{article-titlepage-recto-mode}}\Par%
{\def\fSize%
{24.883\p@}\def\LineSpacing%
{32.348\p@}\def\LineSpacingFactor%
{0}\def\Quadding%
{center}\def\fFamName{Arial}\def\fWeight%
{bold}\def\sbNom%
{18.662\p@}\def\sbMin%
{18.662\p@}\def\sbMax%
{18.662\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}PigeonDeliver and Postfix HOWTO\endPar{}\endNode{}\Seq%
{}\Node%
{\def\Element%
{3}\def\ProcessingMode%
{article-titlepage-recto-mode}}\Seq%
{}\Par%
{\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\Quadding%
{center}\def\fFamName{Arial}\def\fWeight%
{bold}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}Carlo Contavalli\endPar{}\Node%
{\def\Element%
{6}\def\ProcessingMode%
{article-titlepage-recto-mode}}\DisplayGroup%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fSize%
{12\p@}}\Node%
{\def\Element%
{7}\def\ProcessingMode%
{article-titlepage-recto-mode}}\DisplayGroup%
{\def\Quadding%
{center}\def\fFamName{Arial}\def\fWeight%
{bold}\def\fSize%
{12\p@}}\Par%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{8}\def\ProcessingMode%
{titlepage-address-mode}}ccontavalli@masobit.net\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}\endSeq{}\endNode{}\Seq%
{}\Node%
{\def\Element%
{9}\def\ProcessingMode%
{article-titlepage-recto-mode}}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fSize%
{12\p@}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{4.5\p@}\def\saMin%
{4.5\p@}\def\saMax%
{4.5\p@}\def\saConditional%
{1}}Revision History\endPar{}\Table%
{\def\TableWidth%
{full}}\TeXTable%
{420\p@}{3}{lll}%
\Node%
{\def\Element%
{10}\def\ProcessingMode%
{article-titlepage-recto-mode}}\TableRow%
{}\TableCell%
{\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\fSize%
{10\p@}\def\fWeight%
{medium}\def\fFamName{Arial}}Revision \Node%
{\def\Element%
{11}\def\ProcessingMode%
{article-titlepage-recto-mode}}1.0.0\endNode{}\endPar{}\endTableCell{}%
&\TableCell%
{\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\CellBeforeColumnMargin%
{0\p@}\def\ColumnIndex%
{1}}\Par%
{\def\fSize%
{10\p@}\def\fWeight%
{medium}\def\fFamName{Arial}}\Node%
{\def\Element%
{12}\def\ProcessingMode%
{article-titlepage-recto-mode}}2006/01/24\endNode{}\endPar{}\endTableCell{}%
&\TableCell%
{\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\CellBeforeColumnMargin%
{0\p@}\def\ColumnIndex%
{2}}\endTableCell{}%
\endTableRow{}%
\TableRow%
{}\multicolumn%
{3}{l}{\TableCell%
{\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\NColumnsSpanned%
{3}}\Par%
{\def\fSize%
{10\p@}\def\fWeight%
{medium}\def\fFamName{Arial}}\Node%
{\def\Element%
{13}\def\ProcessingMode%
{article-titlepage-recto-mode}}First document revision\endNode{}\endPar{}\endTableCell{}%
}%
\endTableRow{}\endNode{}%
\endTeXTable{}%
\endTable{}%
\endSeq{}\endNode{}\Seq%
{}\Node%
{\def\Element%
{14}\def\ProcessingMode%
{article-titlepage-recto-mode}}\DisplayGroup%
{\def\Quadding%
{start}\def\StartIndent%
{65.5\p@}\def\StartIndentFactor%
{0}\def\EndIndent%
{17.5\p@}\def\EndIndentFactor%
{0}\def\fFamName{Times-New-Roman}}\DisplayGroup%
{\def\StartIndent%
{65.5\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{15}\def\ProcessingMode%
{article-titlepage-recto-mode}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        This document describes how to install
	PigeonDeliver with Postfix, describing
	and detailing each and every step.
      \endPar{}\endNode{}\Node%
{\def\Element%
{16}\def\ProcessingMode%
{article-titlepage-recto-mode}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        For a complete reference about compilation
	options and how to install PigeonDeliver,
	please refer to \%\%TODO\%\%.  
      \endPar{}\endNode{}\endDisplayGroup{}\endDisplayGroup{}\endNode{}\endSeq{}\endSeq{}\endSeq{}\endSeq{}\endSeq{}\endSeq{}\Node%
{\def\Element%
{1}}\endNode{}\Node%
{\def\Label%
{bef}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}1. \Node%
{\def\Element%
{18}\def\ProcessingMode%
{title-sosofo-mode}}Before starting\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{18}}\endNode{}\Node%
{\def\Element%
{19}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      This document was written as part of the documentation
      of the PigeonAir Project to provide help and support to 
      users, system administrators or developers.
    \endPar{}\endNode{}\Node%
{\def\Element%
{20}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      While every effort has been made to ensure that the 
      information is accurate at the time of publication,
      this document may contain errors, omissions, incongruences 
      or wrong technical details. No liability for damages
      is accepted by the Author/Authors, the publishers or
      any other organization or person providing the information,
      arising from any errors or omissions that may appear,
      however caused.
    \endPar{}\endNode{}\Node%
{\def\Element%
{21}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      In case you find an error, you would like to propose better
      solutions than those discussed in this document or you
      would like to discuss an idea regarding this document
      or its content, we would be glad to hear from you and
      please contact us by writing directly to
      the author of this document or to the <\/pigeon-\/dev 
      at ml.pigeonair.net>\/ mailing list.
    \endPar{}\endNode{}\Node%
{\def\Element%
{22}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}1.1. \Node%
{\def\Element%
{23}\def\ProcessingMode%
{title-sosofo-mode}}Intended Audience\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{23}}\endNode{}\Node%
{\def\Element%
{24}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
       This document was meant to provide an easy to
       follow, step by step guide at installing and
       setting up PigeonDeliver with Postfix on any 
       linux system, even for non-\/professional users.
      \endPar{}\endNode{}\Node%
{\def\Element%
{25}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        For that purpose, many details and technical
	descriptions were made using an overway simplified
	model, and often by using improper terms and
	definitions. The hope was to make the document
	more intuitive and easyer to read and 
	understand, even for a non-\/technical reader.
      \endPar{}\endNode{}\Node%
{\def\Element%
{26}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	Hope that you, as a reader, will understand my
	good will and will not regret nor blame me 
	for the improper use of some terms and definitions,
	and for the simplified or even wrong models
	sometimes described or used just for the sake of 
	creating a more intuitive and simplified 
	environment. 
      \endPar{}\endNode{}\Node%
{\def\Element%
{27}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
       This document will not discuss details regarding
       configuration files, the structure of the
       mail system, or the integration with other mail
       servers or systems.
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{28}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}1.2. \Node%
{\def\Element%
{29}\def\ProcessingMode%
{title-sosofo-mode}}Copyright Notice\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{29}}\endNode{}\Node%
{\def\Element%
{30}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        This document was written by Carlo Contavalli <\/ccontavalli at masobit.net>\/ 
        and is thus Copyright (C) 2003,2004,2005,2006 Carlo Contavalli.
      \endPar{}\endNode{}\Node%
{\def\Element%
{31}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Permission is granted to copy, distribute and/or modify this document
        under the terms of the GNU Free Documentation License, Version 1.1 or
        any later version published by the Free Software Foundation; with no
        Invariant Sections, no Back-\/Cover Texts, and no Front-\/Cover Text.
      \endPar{}\endNode{}\Node%
{\def\Element%
{32}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Any example of program code available in this document should be
        considered Copyright (C) 2003,2004,2005,2006 Carlo Contavalli,
       protected by the terms of the GNU General Public License, version 2.00.
      \endPar{}\endNode{}\Node%
{\def\Element%
{33}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        You should have received a copy of the GNU General Public License
        along with this document; if not, write to the Free Software
        Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
      \endPar{}\endNode{}\Node%
{\def\Element%
{34}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Trademarks are owned by their respective owners. 
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Label%
{intro}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}2. \Node%
{\def\Element%
{36}\def\ProcessingMode%
{title-sosofo-mode}}Introduction\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{36}}\endNode{}\Node%
{\def\Element%
{37}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Ok, the procedure that will be described in the
      following sections has been used to compile and
      install PigeonDeliver and Postfix on a wide range
      of Linux distributions, including Slackware and Debian,
      using OpenLDAP and slapd as a backend database.
    \endPar{}\endNode{}\Node%
{\def\Element%
{38}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Trying to outline the installation process, this
      is what I did:
      \Node%
{\def\Element%
{39}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{40}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}1. \endLineField{}\endSeq{}\Node%
{\def\Element%
{41}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}installed OpenLDAP and slapd, and configured\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{42}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}2. \endLineField{}\endSeq{}\Node%
{\def\Element%
{43}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}downloaded, and configured Postfix\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{44}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}3. \endLineField{}\endSeq{}\Node%
{\def\Element%
{45}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}downloaded, configured and installed PigeonDeliver\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{46}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}4. \endLineField{}\endSeq{}\Node%
{\def\Element%
{47}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}installed and configured postfix\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{48}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}5. \endLineField{}\endSeq{}\Node%
{\def\Element%
{49}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}a few tests :)\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{50}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Anyway, before starting, you should download the latest
      version of PigeonDeliver from \Node%
{\def\Element%
{51}}\Seq%
{}http://www.pigeonair.net\endSeq{}\endNode{}
      and unpack it, with something like:
\Node%
{\def\Element%
{52}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd /usr/src
\$ zcat pigeondeliver-\/x.y.z.tar.gz |tar xvf -\/
\endPar{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{53}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Note that in the course of the document, all examples containing
      commands to be run will have a \$ in front of every command you
      can run as a normal user, and a \# for every command you need
      to run as root (super user). Lines outputted by those commands
      will not have any prefix.
    \endPar{}\endNode{}\Node%
{\def\Element%
{54}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Note also that along this document, we will try to setup
      the mail server for the virtual provider called "foobar.org",
      which will serve domains and services for all its own customers.
    \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{55}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}3. \Node%
{\def\Element%
{56}\def\ProcessingMode%
{title-sosofo-mode}}Installing OpenLDAP\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{56}}\endNode{}\Node%
{\def\Element%
{57}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      To install OpenLDAP and slapd, I both tryed
      with the packages provided by my own linux 
      distribution, and by compiling and installing
      the OpenLDAP .tar.gz available on the internet
      site.
    \endPar{}\endNode{}\Node%
{\def\Element%
{58}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      There is nothing strange to do, any standard
      version of OpenLDAP should work out of the box
      with PigeonDeliver. I personally suggest using
      version >\/ 2.2.26, but not yet 2.3.x (Mon Jan 
      16 04:03:20 CET 2006), even if 2.3 is considered 
      the stable brench. If you plan to use PigeonAdmin,
      make also sure the version of OpenLDAP you are
      using has support for HDB (hdb, hierarchical database).
    \endPar{}\endNode{}\Node%
{\def\Element%
{59}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      To install OpenLDAP from the .tar.gz, I just
      downloaded the sources from
      \Node%
{\def\Element%
{60}}\Seq%
{}http://www.openldap.org\endSeq{}\endNode{} and compiled
      and installed them after carefully reading the instructions
      provided on the internet site. 
    \endPar{}\endNode{}\Node%
{\def\Element%
{61}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Before even attempting to compile OpenLDAP, make
      sure to have BDB, "Berkeley DB", installed on your
      system (libbdb). Since this library is a very important
      component of most linux distribution, it is
      almost always already installed.
    \endPar{}\endNode{}\Node%
{\def\Element%
{62}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      On Debian, and on many other distributions, you may
      need to install the packages "libbdb4.2" and 
      "libbdb4.2-\/dev".
    \endPar{}\endNode{}\Node%
{\def\Element%
{63}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      If you need/want to compile and install libbdb4.2
      by yourself, keep in mind that this is a very 
      important component of OpenLDAP, and probably the 
      trickiest to install: all your data will be stored in 
      a BDB database, which means that the reliability, speed 
      and storage limits of your LDAP directory will be 
      completely based on this 
      library. Currently (Thu Jan 26 12:09:38 CET 2006),
      OpenLDAP gurus suggest to use BDB 4.2.52 with a couple
      patches to increase reliability and performance. Without
      some of those patches, OpenLDAP will sometimes hang and
      not work properly, so, make sure to install them.
    \endPar{}\endNode{}\Node%
{\def\Element%
{64}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Since libbdb4.2 was already installed on my Linux
      system, to compile and install OpenLDAP 2.2.30 I just had
      to run:
\Node%
{\def\Element%
{65}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ zcat openldap-\/2.2.30.tgz |tar xvf -\/
\$ cd openldap-\/2.2.30
\$ mkdir compile
\$ cd compile
\$ ../configure -\/-\/prefix=/usr/local/openldap/ -\/-\/with-\/cyrus-\/sasl=no \char92{}
  -\/-\/enable-\/hdb -\/-\/enable-\/slurpd
\$ make depend
\$ make
\$ make install
\endPar{}\endNode{}
      With, 2.3.x, I used:
\Node%
{\def\Element%
{66}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ zcat openldap-\/2.3.x.tgz |tar xvf -\/
\$ cd openldap-\/2.3.x
\$ mkdir compile
\$ cd compile
\$ ../configure -\/-\/prefix=/usr/local/ldap-\/2.3.x/ \char92{}
  -\/-\/with-\/cyrus-\/sasl=no 
\$ make depend
\$ make
\$ make install
\endPar{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{67}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      \Node%
{\def\Element%
{68}}\Seq%
{\def\fPosture%
{italic}}IMPORTANT:\endSeq{}\endNode{} if you install from the
      .tar.gz, remember to add the bin and sbin directory of
      the newly installed OpenLDAP database to your path,
      with something like:
\Node%
{\def\Element%
{69}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
export PATH="/usr/local/openldap/bin:/usr/local/openldap/sbin:\$PATH"
\endPar{}\endNode{}
      In all the examples in the document, I will assume
      that running commands like "slapcat" or "slapadd" will
      run the binaries you just compiled and installed. 
      If you do not change the PATH, you may end up running
      the "slapadd" and "slapcat" commands made available
      by your linux distribution, possibly screwing up any
      database already installed on your system, and loosing
      all your data! Watch out, you have been warned! 
    \endPar{}\endNode{}\Node%
{\def\Element%
{70}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Make also sure the above line is in your .profile, .bash\char95{}profile
      or whatever in your home directory. For root, I would
      open the file /root/.profile and add the line:
\Node%
{\def\Element%
{71}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
export PATH="/usr/local/openldap/bin:/usr/local/openldap/sbin:\$PATH"
\endPar{}\endNode{}
      right at the end of your file. Otherwise, you will have to
      export the path every time you log in or every time you
      leave the current shell.
    \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{72}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}4. \Node%
{\def\Element%
{73}\def\ProcessingMode%
{title-sosofo-mode}}Notes about linux distributions\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{73}}\endNode{}\Node%
{\def\Element%
{74}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        The configuration described in this document
	will assume you compiled and installed OpenLDAP 
	2.2.30 manually like shown above. 
      \endPar{}\endNode{}\Node%
{\def\Element%
{75}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        If you specified a different -\/-\/prefix option,
	or if you used the packages of your distribution,
	in all the following examples always remember that:
	\Node%
{\def\Element%
{76}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{77}}\Node%
{\def\Element%
{78}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}/usr/local/openldap/etc/openldap\endPar{}\endNode{}\Node%
{\def\Element%
{79}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{80}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}is the directory where all configurations
	      are kept. In this directory, you can find
	      the configuration files (slapd.conf, ldap.conf, ...),
	      the schema files (directory schema/) and
	      a couple other interesting files. On
	      most linux distributions, if you used
	      the provided packages, it corresponds
	      to /etc/ldap/.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{81}}\Node%
{\def\Element%
{82}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}/usr/local/openldap/libexec/\endPar{}\endNode{}\Node%
{\def\Element%
{83}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{84}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}is the directory where the slapd and slurpd
	      daemons have been installed. Usually,
	      it corresponds to /usr/sbin.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{85}}\Node%
{\def\Element%
{86}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}/usr/local/openldap/bin/\endPar{}\endNode{}\Node%
{\def\Element%
{87}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{88}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}is the directory where all command
	      line tools to access a LDAP directory
	      have been installed (ldapadd, ldapsearch, ...).
	      Usually, it corresponds to /usr/bin.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{89}}\Node%
{\def\Element%
{90}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}/usr/local/openldap/sbin/\endPar{}\endNode{}\Node%
{\def\Element%
{91}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{92}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}is the directory where all the administrative
	      tools have been installed (slapcat, slapadd, ...).
	      Usually, it corresponds to /usr/sbin.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{93}}\Node%
{\def\Element%
{94}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}/usr/local/openldap/var/openldap-\/data/\endPar{}\endNode{}\Node%
{\def\Element%
{95}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{96}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}is the directory where your database files
	      are kept. On most linux distributions, it
	      corresponds to /var/lib/ldap/, but you can
	      guess it by looking to your slapd.conf configuration
	      file and to the "directory" parameter.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\endDisplayGroup{}\endNode{}
	So, make sure to change the examples as required
	by the parameters you provided to the configure scripts
	or to the default setup of you linux distribution.
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{97}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5. \Node%
{\def\Element%
{98}\def\ProcessingMode%
{title-sosofo-mode}}Configuring OpenLDAP\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{98}}\endNode{}\Node%
{\def\Element%
{99}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        To configure OpenLDAP, open the slapd.conf configuration
	file. Either /etc/ldap/slapd.conf or /usr/local/openldap/etc/openldap/slapd.conf
	or /usr/local/openldap/etc/ldap-\/2.3.x/slapd.conf, depending
	on how you opened it. You now need to:
	\Node%
{\def\Element%
{100}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{101}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}1. \endLineField{}\endSeq{}\Node%
{\def\Element%
{102}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}configure the hdb backend. OpenLDAP can store data on
	    the hard drive in different "formats". The default "format"
	    is bdb. PigeonDeliver can use both bdb or hdb. If you
	    plan to use PigeonAdmin, however, we strongly suggest
	    you to use HDB.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{103}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}2. \endLineField{}\endSeq{}\Node%
{\def\Element%
{104}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}add PigeonDeliver and PigeonAdmin schema files. The
	    LDAP protocol uses  "schema" files to understand the
	    "structure" of a database. In order to use PigeonDeliver
	    and PigeonAdmin, you must let OpenLDAP know the structure
	    of the PigeonDeliver database.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{105}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}3. \endLineField{}\endSeq{}\Node%
{\def\Element%
{106}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}initialize the OpenLDAP database, in order to
	    insert the basic data needed for PigeonDeliver to
	    start.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{107}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}4. \endLineField{}\endSeq{}\Node%
{\def\Element%
{108}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}finally, start slapd.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
      \endPar{}\endNode{}\Node%
{\def\Element%
{109}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Before going on with the following steps, \Node%
{\def\Element%
{110}}\Seq%
{\def\fPosture%
{italic}}make sure\endSeq{}\endNode{}
	slapd, the OpenLDAP daemon, is not active and not answering 
	queries, especially if you are using linux distributions that
	automatically start slapd after installation.
      \endPar{}\endNode{}\Node%
{\def\Element%
{111}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        To stop it, try something like:
\Node%
{\def\Element%
{112}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# /etc/init.d/slapd stop
\endPar{}\endNode{}
	or, in alternative, something like:
\Node%
{\def\Element%
{113}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# killall slapd
\endPar{}\endNode{}
	(watch out that the above command will terminate all the 
	slapd instances running on your machine).
      \endPar{}\endNode{}\Node%
{\def\Element%
{114}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.1. \Node%
{\def\Element%
{115}\def\ProcessingMode%
{title-sosofo-mode}}Enabling the HDB Backend\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{115}}\endNode{}\Node%
{\def\Element%
{116}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        You now need to configure the OpenLDAP backend
	and database. On my system, I had to add:
\Node%
{\def\Element%
{117}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
backend		hdb
checkpoint  	1024	10	

database 	"hdb"
suffix 		"dc=foobar,dc=org"
rootdn 		"cn=admin,dc=foobar,dc=org"
\endPar{}\endNode{}
 	to slapd.conf. Instead of "dc=foobar,dc=org", write
	your own domain name. If your domain name is
	foo.bar.org, you need to write "dc=foo,dc=bar,dc=org",
	which is your \Node%
{\def\Element%
{118}}\Seq%
{\def\fPosture%
{italic}}basedn\endSeq{}\endNode{} (that
	will be necessary later on in this document).
	If you don't have a domain name, you can use something
	like "o=Your organization name". However, it is much
	better if you have a domain name. This name is just
	a "label" used to identify your system. You can write
	almost anything you like, it has no effect on your
	emails or PigeonDeliver usage. Make also sure:
	\Node%
{\def\Element%
{119}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{120}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{121}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}there are no other "database" sections. In
	    case there are, just remove all the corresponding
	    lines.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{122}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{123}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}if you have compiled openldap with support for
	    dso modules, make sure there two lines like:
\Node%
{\def\Element%
{124}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
modulepath    /usr/local/openldap/libexec/openldap
moduleload    back\char95{}hdb.la
\endPar{}\endNode{}
	    where the directory /usr/local/openldap/libexec/openldap
	    is the directory where the file back\char95{}hdb.la can be found.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
      \endPar{}\endNode{}\Node%
{\def\Element%
{125}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        After the above steps, my slapd.conf file looked something
	like (note that lines starting with \# are just comments):
\Node%
{\def\Element%
{126}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
include         /usr/local/openldap/etc/openldap/schema/core.schema

pidfile         /usr/local/openldap/var/run/slapd.pid
argsfile        /usr/local/openldap/var/run/slapd.args

\# here, before my changes, I add something like:
\#   database bdb
\#   suffix "dc=my-\/domain,dc=com"
\#   rootdn "cn=Manager,dc=my-\/domain,dc=com"
\# Instead of the above lines, I put the following:
backend 	hdb
checkpoint	1024 10

database        hdb
suffix          "dc=foobar,dc=org"
rootdn          "cn=admin,dc=foobar,dc=org"
  
  \# Those lines where already in the configuration file
rootpw          secret
directory       /usr/local/openldap/var/openldap-\/data
index   objectClass     eq
\endPar{}\endNode{}
      \endPar{}\endNode{}\Node%
{\def\Element%
{127}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        \%\%TODO\%\% if you are going to run a big email service
	or you are going to have a lot of users, you may want
	to optimize the database parameters. Please consider
	adding a "cachesize" parameter and a couple more "indexes".
	Also remember that, if you have valuable data in your
	database, every time you change the indexing parameters
	you should run the "slapindex" command.
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{128}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.2. \Node%
{\def\Element%
{129}\def\ProcessingMode%
{title-sosofo-mode}}Adding PigeonDeliver schema files\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{129}}\endNode{}\Node%
{\def\Element%
{130}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  To add the PigeonDeliver schema files:
	  \Node%
{\def\Element%
{131}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{132}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}1. \endLineField{}\endSeq{}\Node%
{\def\Element%
{133}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}create a directory named "pigeonair", in
	      /usr/local/openldap/etc/openldap/,
	      the directory containing your configuration
	      files.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{134}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}2. \endLineField{}\endSeq{}\Node%
{\def\Element%
{135}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}put the pigeondeliver schema in the right place:
	      copy the files in /usr/src/pigeondeliver-\/x.y.z/examples/schema/
	      in /usr/local/openldap/etc/openldap/pigeonair/, with
	      something like:
\Node%
{\def\Element%
{136}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
\# cp -\/a /usr/src/pigeondeliver-\/x.y.z/examples/schema \char92{}
  /usr/local/openldap/etc/openldap/pigeonair
\endPar{}\endNode{}\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{137}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}3. \endLineField{}\endSeq{}\Node%
{\def\Element%
{138}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}tell slapd about the new schema files, by
	      adding the following lines in your slapd.conf
	      configuration, right after the line "include .../core.schema",
	      file:
\Node%
{\def\Element%
{139}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
\#\# pigeonair required schemes
include         /usr/local/openldap/etc/openldap/pigeonair/generic.schema
include         /usr/local/openldap/etc/openldap/pigeonair/domains.schema

\#\# modules schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailStore.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailForward.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailHidden.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailAlias.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailAntivirus.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailNewsletter.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailSanitizer.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailVacation.schema
include         /usr/local/openldap/etc/openldap/pigeonair/mailAntispam.schema
\endPar{}\endNode{}\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
	  Ok, after adding the schema files, you are now ready to
	  initialize the OpenLDAP database.
	\endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{140}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.3. \Node%
{\def\Element%
{141}\def\ProcessingMode%
{title-sosofo-mode}}Initializing OpenLDAP database\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{141}}\endNode{}\Node%
{\def\Element%
{142}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  To initialize the OpenLDAP database, there are two 
	  steps to be performed:
	  \Node%
{\def\Element%
{143}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{144}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}1. \endLineField{}\endSeq{}\Node%
{\def\Element%
{145}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}remove any file that may already be there. If you
	      installed OpenLDAP from the .tar.gz, there will
	      be an "example" database, almost useless. If you
	      installed from your distribution packages, you
	      may already have a "good" database. However, most
	      linux distributions use bdb as the default backend,
	      so you must recreate it anyway to switch to the
	      new format.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{146}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}2. \endLineField{}\endSeq{}\Node%
{\def\Element%
{147}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}create a DB\char95{}CONFIG file.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{148}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}3. \endLineField{}\endSeq{}\Node%
{\def\Element%
{149}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}create the standard OpenLDAP root of the database.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{150}}\DisplayGroup%
{\def\StartIndent%
{66\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-18\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{18\p@}\def\FieldWidthFactor%
{0}\def\FieldAlign%
{end}}4. \endLineField{}\endSeq{}\Node%
{\def\Element%
{151}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}create the PigeonDeliver entires, as needed.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
	\endPar{}\endNode{}\Node%
{\def\Element%
{152}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.3.1. \Node%
{\def\Element%
{153}\def\ProcessingMode%
{title-sosofo-mode}}Removing the current database\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{153}}\endNode{}\Node%
{\def\Element%
{154}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    To remove the current database:
	    \Node%
{\def\Element%
{155}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{156}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{157}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}make sure your slapd daemon is stopped,
		and no other processes are using it. You
		can either:
\Node%
{\def\Element%
{158}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
/etc/init.d/slapd stop
\endPar{}\endNode{}
		or 
\Node%
{\def\Element%
{159}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
killall slapd
\endPar{}\endNode{}\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{160}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{161}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}make a backup of the current database,
		"just in case...". To backup your DB,
		run something like:
\Node%
{\def\Element%
{162}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
\# slapcat >\/ file.backup.ldiff
\endPar{}\endNode{}
		If you get an error like "Command not found",
		you didn't read the section \%\%TODO\%\% carefully.
		Please read it one more time, and make sure
		to run the command:
\Node%
{\def\Element%
{163}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
export PATH="/usr/local/openldap/bin:/usr/local/openldap/sbin:\$PATH"
\endPar{}\endNode{}\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{164}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{165}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}remove all the files in /var/lib/ldap/, with something
		like:
\Node%
{\def\Element%
{166}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
\# cd /var/lib/ldap
\# rm -\/f *
\endPar{}\endNode{}\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
	  \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{167}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.3.2. \Node%
{\def\Element%
{168}\def\ProcessingMode%
{title-sosofo-mode}}Creating a DB\char95{}CONFIG file\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{168}}\endNode{}\Node%
{\def\Element%
{169}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    The DB\char95{}CONFIG file is extremely important to OpenLDAP.
	    It is not just a matter of performance: without a 
	    properly configured DB\char95{}CONFIG file, some versions of
	    slapd and BDB would just hang, crash, or not work
	    properly.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{170}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    For a good DB\char95{}CONFIG file, I suggest you to start with
	    the file /usr/src/pigeondeliver-\/x.y.z/examples/slapd/DB\char95{}CONFIG.
	    Just copy it with something like:
\Node%
{\def\Element%
{171}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# cp /usr/src/pigeondeliver-\/x.y.z/examples/slapd/DB\char95{}CONFIG \char92{}
     /usr/local/openldap/var/openldap-\/data/
\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{172}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    The only change I made to the provided DB\char95{}CONFIG file was
	    to add the DB\char95{}LOG\char95{}AUTOREMOVE option, with something like:
\Node%
{\def\Element%
{173}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
set\char95{}flags DB\char95{}LOG\char95{}AUTOREMOVE
\endPar{}\endNode{}
	    You can write the option wherever you like in the file.
	    I just uncommented the corresponding option.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{174}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    This option tells
	    BDB and OpenLDAP to automatically remove log files as soon
	    as they are no longer needed. By default, BDB leaves those
	    files so you can back them up from a cron job, and in case 
	    your hard drive explodes, you can replay them saving all
	    your data. However, there are many different ways to back
	    your OpenLDAP data up, so, you probably do not need to
	    use BDB infrastructures for catastrophic recovery.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{175}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    In case you do not enable this flag, make sure you sometime
	    either remove or backup all log.* files as indicated by the
	    db4.2\char95{}archive or db\char95{}archive utility, which you must run
	    with something like:
\Node%
{\def\Element%
{176}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# cd /usr/local/openldap/var/openldap-\/data/
\# db\char95{}archive
log.0000000
log.0000001
[...]
\endPar{}\endNode{}
	    as shown above, this utility will return the list of log files
	    no longer needed, that can safely be removed.
	  \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{177}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.3.3. \Node%
{\def\Element%
{178}\def\ProcessingMode%
{title-sosofo-mode}}Creating the LDAP Root\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{178}}\endNode{}\Node%
{\def\Element%
{179}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    Now that you have your OpenLDAP ready to have a
	    database and to answer queries, you need to start
	    to populate the database.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{180}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    You have two choices here: 
	    \Node%
{\def\Element%
{181}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{182}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{183}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}use the script provided with PigeonDeliver\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{184}}\DisplayGroup%
{\def\StartIndent%
{58\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-10\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\fSize%
{8\p@}\def\PositionPointShift%
{0\p@}\def\PositionPointShiftFactor%
{0}\def\FieldWidth%
{10\p@}\def\FieldWidthFactor%
{0}}\Character{8226}\endLineField{}\endSeq{}\Node%
{\def\Element%
{185}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}perform the steps manually\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endDisplayGroup{}\endNode{}
	    In this document, we will describe both procedures.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{186}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    With the script provided with PigeonDeliver, you
	    just need to run pd-\/ldap-\/init-\/root, which can be
	    found in pigeondeliver-\/x.y.z/examples/slapd, with something
	    like:
\Node%
{\def\Element%
{187}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# cd /usr/src/pigeondeliver-\/x.y.z/examples/slapd
\# ./pd-\/ldap-\/init-\/root dc=foobar,dc=org
\endPar{}\endNode{}
	    The script will then prompt you for a password to be
	    inserted into the database. Insert the password twice,
	    and wait for it to complete. Note that while you type
	    the password, nothing will be displayed on the screen.
	    Note also that dc=foobar,dc=org is the basedn, as we
	    wrote it in the slapd.conf configuration file (look 
	    to \%\%TODO\%\%).
	  \endPar{}\endNode{}\Node%
{\def\Element%
{188}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    If the script is succesful, you will see something like:
\Node%
{\def\Element%
{189}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
-\/-\/-\/-\/-\/-\/ inserted root of OpenLDAP database.
created -\/ basedn: dc=pippo,dc=it, rootdn: 
  cn=admin,dc=pippo,dc=it, password: [youknowit]
\endPar{}\endNode{}
	    on the screen (line has been split into multiple lines for
	    readability purposes).
	  \endPar{}\endNode{}\Node%
{\def\Element%
{190}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    If you don't trust the script to add your data, or
	    if the script fails for some reason, you can run the 
	    command:
\Node%
{\def\Element%
{191}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# cd /usr/src/pigeondeliver-\/x.y.z/examples/slapd
\# ./pd-\/ldap-\/init-\/root -\/d dc=foobar,dc=org >\/ /tmp/template.ldif
\endPar{}\endNode{}
	    this command will save, in the file template.ldif, the
	    data that would otherwise be added to your database (the
	    -\/d parameter makes the difference).
	  \endPar{}\endNode{}\Node%
{\def\Element%
{192}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    If you then want to add that data by yourself, run the
	    command:
\Node%
{\def\Element%
{193}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# slapadd <\/ /tmp/template.ldif
\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{194}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    The most common error to encounter is due to the script
	    not being able to find the needed commands. If you get
	    an error like:
\Node%
{\def\Element%
{195}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
couldn't find an usable 'xxxxxx'
\endPar{}\endNode{}
	   first export and setup the PATH correctly, as indicated
	   in the previous sections:
\Node%
{\def\Element%
{196}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
export PATH="/usr/local/openldap/bin:/usr/local/openldap/sbin:\$PATH"
\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{197}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    If you have troubles or you really want to do everything
	    by hand, you can open the file pippo.it-\/base.ldiff in
	    the directory /usr/src/pigeondeliver-\/x.y.z/examples/ldiff.
	    In this file, you need to change all occurrences of
	    dc=pippo,dc=it with your own base dn, watching out to
	    change also 'dc: pippo' with 'dc: foobar'.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{198}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    The final result should look something like:
\Node%
{\def\Element%
{199}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
dn: dc=foobar,dc=org
objectClass: top
objectClass: dcObject
objectClass: organization
o: nodomain
dc: foobar
structuralObjectClass: organization
entryUUID: 49e67d38-\/c9c2-\/1029-\/908c-\/82c0a376e204
creatorsName: cn=anonymous
modifiersName: cn=anonymous
createTimestamp: 20051005080342Z
modifyTimestamp: 20051005080342Z
entryCSN: 20051005080342Z\#000001\#00\#000000

dn: cn=domains,dc=foobar,dc=org
objectClass: organizationalRole
cn: domains
structuralObjectClass: organizationalRole
entryUUID: a4bffcb2-\/c9d0-\/1029-\/9a63-\/cb91ce934d26
creatorsName: cn=admin,dc=foobar,dc=org
createTimestamp: 20051005094627Z
entryCSN: 20051005094627Z\#000001\#00\#000000
modifiersName: cn=admin,dc=foobar,dc=org

\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{200}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    Once you changed that file, you can load the data into
	    the database, with something like:
\Node%
{\def\Element%
{201}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# slapadd <\/ pippo.it-\/base.ldiff
\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{202}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    After adding this file, you also need to create an
	    administrator, by also adding the file: cn=admin,dc=pippo,dc=it-\/base.ldiff
	    in this same directory.
	    Before adding this file, however you need to open it
	    with an editor and make some changes.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{203}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    As before, you need to change every occurrence of 
	    dc=pippo,dc=it with dc=foobar,dc=org. After changing
	    the dn, you also need to change the password of the 
	    administrator, unless you want to leave the default of 
	    'pippo'. To change the password, run the command:
\Node%
{\def\Element%
{204}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# slappasswd
\endPar{}\endNode{}
	   and type your password twice. slappasswd will encrypt
	   your password and print it on the screen:
\Node%
{\def\Element%
{205}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\{SSHA\}AfBntJxBBqCvH2rbYQ2UDDuE+JiS6lzI
\endPar{}\endNode{}
	   copy this string and put it in the file, in
	   the userPassword field. The final result should
	   look something like:
\Node%
{\def\Element%
{206}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
dn: cn=admin,dc=foobar,dc=org
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: \{SSHA\}AfBntJxBBqCvH2rbYQ2UDDuE+JiS6lzI
structuralObjectClass: organizationalRole
entryUUID: 49e77bb6-\/c9c2-\/1029-\/908d-\/82c0a376e204
creatorsName: cn=anonymous
modifiersName: cn=anonymous
createTimestamp: 20051005080342Z
modifyTimestamp: 20051005080342Z
entryCSN: 20051005080342Z\#000002\#00\#000000

\endPar{}\endNode{}
	   note that the double colon (::) near userPassword
	   has been also replaced by a single colon.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{207}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    To add this file, simply run the command:
\Node%
{\def\Element%
{208}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# slapadd <\/ cn=admin,dc=pippo,dc=it-\/base.ldiff
\endPar{}\endNode{}
	  \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{209}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}5.3.4. \Node%
{\def\Element%
{210}\def\ProcessingMode%
{title-sosofo-mode}}Starting slapd\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{210}}\endNode{}\Node%
{\def\Element%
{211}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    Well, if you got up here, now it should be
	    quite easy. Just run something like:
\Node%
{\def\Element%
{212}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# cd /usr/local/openldap/libexec
\# ./slapd
\#
\endPar{}\endNode{}
 	    If we did everything right, we shouldn't have
	    any message at all, anything else but our prompt back. 
	    In the log file, /var/log/daemon.log or /var/log/syslog, 
	    there should be something like:
\Node%
{\def\Element%
{213}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
Jan 14 12:45:00 localhost slapd[4639]: @(\#) \$OpenLDAP: slapd 2.3.18 
  (Jan 13 2006 22:21:14) \$ \char94{}Iroot@joshua:/usr/src/openldap/servers/slapd
\endPar{}\endNode{}
	  \endPar{}\endNode{}\Node%
{\def\Element%
{214}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    Depending on your linux distribution, you may want
	    to start slapd automatically at boot, adding something
	    like:
\Node%
{\def\Element%
{215}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
/usr/local/openldap/libexec/slapd
\endPar{}\endNode{}
	   to the script executed at boot, and something like:
\Node%
{\def\Element%
{216}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
kill `cat /usr/local/openldap/run/slapd.pid`
\endPar{}\endNode{}
	   to your shoutdown scripts, in order to properly stop
	   slapd before turning off your computer. This is especially
	   important since \Node%
{\def\Element%
{217}}\Seq%
{\def\fPosture%
{italic}}every time slapd is not properly
	   stopped\endSeq{}\endNode{}, you need to recover your database.
	  \endPar{}\endNode{}\Node%
{\def\Element%
{218}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	    To verify that the database is properly working, you 
	    can run a command like:
\Node%
{\def\Element%
{219}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ ldapsearch -\/b "dc=foobar,dc=org" -\/x \char92{}
  -\/W -\/D cn=admin,dc=foobar,dc=org
\endPar{}\endNode{}
	    which means: "please, search all records (ldapsearch) inserted
	    in dc=foobar,dc=org (-\/b), since I am the administrator whose
	    record in the database is cn=admin,dc=foobar,dc=org (-\/D) who
	    will authenitcate using simple authentication (-\/x) and providing
	    a password (-\/W) as soon as I will be asked to do so". If everything
	    is working, you should now see all the records we just inserted.
	  \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{220}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}6. \Node%
{\def\Element%
{221}\def\ProcessingMode%
{title-sosofo-mode}}Installing PigeonDeliver with Postfix\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{221}}\endNode{}\Node%
{\def\Element%
{222}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Some Linux distributions, usually Debian based, compile 
      postfix package with a smart patch from La Mont Jones 
      that separates postfix from its own libraries. 
    \endPar{}\endNode{}\Node%
{\def\Element%
{223}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      If this patch has been used on your system, you can
      use a simplified procedure to install PigeonDeliver
      with Postfix. Otherwise, you will need to recompile
      postfix and compile PigeonDeliver to use the Postfix
      libraries you just recompiled.
    \endPar{}\endNode{}\Node%
{\def\Element%
{224}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Ok, so, if you find the files libpostfix-\/master.so,
      libpostfix-\/global.so and libpostfix-\/users.so in
      /usr/lib or in /lib, you can follow the procedure
      indicated to install PigeonDeliver on "Debian systems" \%\%TODO\%\%.
      Otherwise, or if you are unusure, follow the instructions
      provided to compile PigeonDeliver on non-\/Debian systems.
    \endPar{}\endNode{}\Node%
{\def\Element%
{225}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}6.1. \Node%
{\def\Element%
{226}\def\ProcessingMode%
{title-sosofo-mode}}Non Debian systems\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{226}}\endNode{}\Node%
{\def\Element%
{227}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Well, now that the OpenLDAP database is working, we can
      move on and configure PigeonDeliver with Postfix. Note 
      that at time of writing there is no way to compile PigeonDeliver
      with postfix without having Postfix sources at hand. First
      of all, download the latest sources of Postfix from
      \Node%
{\def\Element%
{228}}\Seq%
{}http://www.postfix.org/\endSeq{}\endNode{}, and unpack
      them, with:
\Node%
{\def\Element%
{229}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd /usr/src
\$ zcat postfix-\/x.y.z.tar.gz |tar xvf -\/
\endPar{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{230}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Now, follow the installation instructions provided
      with Postfix and PigeonDeliver to prepare
      the postfix compilation. Something like:
\Node%
{\def\Element%
{231}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd postfix-\/x.y.z
\$ make -\/f Makefile.init makefiles CCARGS="-\/fpic -\/DPIC"
\$ make update DIRS='src/util src/global src/master src/postconf'
\endPar{}\endNode{}
      worked for me. Don't forget to add all the other needed
      options, as indicated by the various README files. As
      an example, if you want PCRE support, don't forget to
      compile the Postfix sources with something like:
\Node%
{\def\Element%
{232}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd postfix-\/x.y.z
\$ make makefiles \char92{}
  CCARGS="-\/fpic -\/DPIC -\/DHAS\char95{}PCRE -\/I/usr/local/include"
  AUXLIBS="-\/L/usr/local/lib -\/lpcre"
\$ make update DIRS='src/util src/global src/master src/postconf'
\endPar{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{233}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Now that postfix is almost completely compiled,
      you can go on configuring, compiling and installing 
      PigeonDeliver. I run something like:
\Node%
{\def\Element%
{234}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd /usr/src/pigeondeliver-\/x.y.z
\$ mkdir build
\$ cd build
\$ sources="/usr/src/postfix-\/x.y.z" \char92{}
  sh ../examples/configure/configure.linux.postfix.src
\$ make
\$ su
\# make install
\endPar{}\endNode{}
    \endPar{}\endNode{}\Node%
{\def\Element%
{235}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Note that if you want to change some configuration
      parameters you can edit and modify the file
      pigeondeliver-\/x.y.z/examples/configure/configure.linux.postfix.src.
      To complete the Postfix installation, with support
      for PigeonDeliver, run:
\Node%
{\def\Element%
{236}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\$ cd /usr/src/postfix-\/x.y.z
\$ make 
\$ su
\# make install
\endPar{}\endNode{}
      as usual. You should now have a working installation
      of Postfix and PigeonDeliver.
    \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{237}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}6.2. \Node%
{\def\Element%
{238}\def\ProcessingMode%
{title-sosofo-mode}}Debian based systems\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{238}}\endNode{}\Node%
{\def\Element%
{239}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      On debian systems, you can follow a simpler procedure, and
      you don't need to compile and install Postfix by yourself.
    \endPar{}\endNode{}\Node%
{\def\Element%
{240}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      In order to configure and install PigeonDeliver with postfix,
      you just need to:
\Node%
{\def\Element%
{241}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# apt-\/get install postfix postfix-\/dev
\$ cd /usr/src/pigeondeliver-\/x.y.z
\$ mkdir build
\$ cd build
\$ sh ../examples/configure/configure.linux.postfix.lib
\$ make
\$ su
\# make install
\endPar{}\endNode{}
      without worries. The above may have been used on other
      distributions as well (like ubuntu, or even non debian
      based ones). To know if your distribution has separated
      postfix from its own libraries and if you can use
      this simplified procedure, you just need to search
      for libpostfix-\/utils.so, libpostfix-\/global.so and libpostfix-\/master.so.
      If you have those files on your system, you can probably
      use this procedure.
    \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{242}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7. \Node%
{\def\Element%
{243}\def\ProcessingMode%
{title-sosofo-mode}}Configuring Postfix to use PigeonDeliver\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{243}}\endNode{}\Node%
{\def\Element%
{244}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Now that Postfix is well installed on your system,
      you just need to configure it to use PigeonDeliver. 
    \endPar{}\endNode{}\Node%
{\def\Element%
{245}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Usually, it is convenient to first configure Postfix
      to work correctly for local users only, which means, 
      to handle emails for one single domain and to deliver
      mails to the users in the passwd file, "local users"
      of the machine. Once it works for local users, we
      can add the PigeonDeliver parameters.
    \endPar{}\endNode{}\Node%
{\def\Element%
{246}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.1. \Node%
{\def\Element%
{247}\def\ProcessingMode%
{title-sosofo-mode}}Configuring Postfix for local users\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{247}}\endNode{}\Node%
{\def\Element%
{248}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        You can start configuring Postfix for local users
	only from the file in /usr/src/pigeondeliver-\/x.y.z/examples/postfix/,
	main.cf.local-\/users-\/only.
      \endPar{}\endNode{}\Node%
{\def\Element%
{249}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Copy this file in place of the main.cf installed
	by postfix, and open it with your editor of choice.
      \endPar{}\endNode{}\Node%
{\def\Element%
{250}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	To our purpose, the most important parameters to 
	change are:
	\Node%
{\def\Element%
{251}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{252}}\Node%
{\def\Element%
{253}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}myhostname\endPar{}\endNode{}\Node%
{\def\Element%
{254}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{255}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}if you are a provider, you probably have
	      a domain name. Usually, your server will
	      have both an IP address and an hostname.
	      You must specify the hostname of your
	      server here. In our example, it could 
	      be something like "mail.foobar.org".\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{256}}\Node%
{\def\Element%
{257}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}mydomain\endPar{}\endNode{}\Node%
{\def\Element%
{258}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{259}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}well, if the hostname is mail.foobar.org,
	      the doamin name is "foobar.org". This parameter
	      is mainly used as a default value for other
	      parameters.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{260}}\Node%
{\def\Element%
{261}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}mydestination\endPar{}\endNode{}\Node%
{\def\Element%
{262}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{263}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}the mydestination parameter specifies for which
	      domains this server should accept mails for. In our
	      case, we want to configure one single domain,
	      and deliver mails to local users. mydestination
	      should then set to "foobar.org".\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{264}}\Node%
{\def\Element%
{265}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}local\char95{}recipient\char95{}maps\endPar{}\endNode{}\Node%
{\def\Element%
{266}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{267}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}we should set this parameter to "unix:passwd.byname",
	      to tell Postfix to lookup the final users, final
	      recipient of the mails, into the passwd file.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\endDisplayGroup{}\endNode{}
      \endPar{}\endNode{}\Node%
{\def\Element%
{268}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        The final result could look something like:
\Node%
{\def\Element%
{269}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
myhostname = mail.foobar.org
mydomain = foobar.org
myorigin = \$mydomain
inet\char95{}interfaces = all
mydestination = foobar.org
local\char95{}recipient\char95{}maps = unix:passwd.byname
unknown\char95{}local\char95{}recipient\char95{}reject\char95{}code = 550
mynetworks\char95{}style = host
mynetworks = 127.0.0.0/8
relay\char95{}domains =
  
smtpd\char95{}banner = \$myhostname ESMTP \$mail\char95{}name 
\endPar{}\endNode{}
      \endPar{}\endNode{}\Node%
{\def\Element%
{270}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        I also suggest to configure relay access
	restrictions and parameters like smtp\char95{}.*restrictions
	right now, in order to simplify configuration.
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{271}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.2. \Node%
{\def\Element%
{272}\def\ProcessingMode%
{title-sosofo-mode}}Configuring Postfix to deliver with PigeonDeliver\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{272}}\endNode{}\Node%
{\def\Element%
{273}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        In order to configure Postfix to deliver mails with PigeonDeliver
	and to accept mails for all PigeonDeliver users, you need to
	modify the master.cf configuration file, add a couple parameters
	in the main.cf file, and add a new line in the dynamicmaps.cf
	file, only on Debian based systems.
      \endPar{}\endNode{}\Node%
{\def\Element%
{274}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.2.1. \Node%
{\def\Element%
{275}\def\ProcessingMode%
{title-sosofo-mode}}Configuring the master.cf file\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{275}}\endNode{}\Node%
{\def\Element%
{276}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  Add the following lines in your master.cf file:
\Node%
{\def\Element%
{277}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
mailForward unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailVacation unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix
mailAntivirus unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailMaster unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailStore unix  -\/	n	n	-\/	-\/	pd-\/postfix
\endPar{}\endNode{}
 	  Remember that there must be a line for each and
	  every PigeonDeliver service you will want to use.
	\endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{278}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.2.2. \Node%
{\def\Element%
{279}\def\ProcessingMode%
{title-sosofo-mode}}Configuring the main.cf file\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{279}}\endNode{}\Node%
{\def\Element%
{280}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  Add the following lines in the main.cf file:
\Node%
{\def\Element%
{281}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
dscm\char95{}datatree\char95{}ldap\char95{}method = simple
dscm\char95{}datatree\char95{}ldap\char95{}binddn = cn=admin,dc=foobar,dc=org
dscm\char95{}datatree\char95{}ldap\char95{}password = pippo
dscm\char95{}datatree\char95{}ldap\char95{}dnbase = cn=domains,dc=foobar,dc=org
dscm\char95{}datatree\char95{}ldap\char95{}maxsize = 200
dscm\char95{}datatree\char95{}ldap\char95{}server = ldap://127.0.0.1/

virtual\char95{}mailbox\char95{}domains = dscm:domain
virtual\char95{}mailbox\char95{}maps = dscm:user
virtual\char95{}transport = mailMaster
\endPar{}\endNode{}
 	  Make sure to specify the password you inserted
	  when creating the database.
	\endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{282}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.2.3. \Node%
{\def\Element%
{283}\def\ProcessingMode%
{title-sosofo-mode}}Configuring the dynamicmaps.cf file\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{283}}\endNode{}\Node%
{\def\Element%
{284}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  If your version of postfix uses a dynamicmaps.cf file,
	  just add the following line:
\Node%
{\def\Element%
{285}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
dscm	/usr/lib/postfix/dict\char95{}dscm.so		dict\char95{}dscm\char95{}open
\endPar{}\endNode{}
	\endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{286}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{12\p@}\def\LineSpacing%
{15.6\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{4}\def\sbNom%
{9\p@}\def\sbMin%
{9\p@}\def\sbMax%
{9\p@}\def\sbConditional%
{1}\def\saNom%
{2.4\p@}\def\saMin%
{2.4\p@}\def\saMax%
{2.4\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}7.2.4. \Node%
{\def\Element%
{287}\def\ProcessingMode%
{title-sosofo-mode}}The final result\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{287}}\endNode{}\Node%
{\def\Element%
{288}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  The final result should look something like below.
	\endPar{}\endNode{}\Node%
{\def\Element%
{289}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  main.cf:
\Node%
{\def\Element%
{290}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
myhostname = mail.foobar.org
mydomain = foobar.org

dscm\char95{}datatree\char95{}ldap\char95{}method = simple
dscm\char95{}datatree\char95{}ldap\char95{}binddn = cn=admin,dc=foobar,dc=org
dscm\char95{}datatree\char95{}ldap\char95{}password = pippo
dscm\char95{}datatree\char95{}ldap\char95{}dnbase = cn=domains,dc=foobar,dc=org
dscm\char95{}datatree\char95{}ldap\char95{}maxsize = 200
dscm\char95{}datatree\char95{}ldap\char95{}server = ldap://127.0.0.1/

mailAntivirus\char95{}policy = drop
myorigin = \$mydomain
inet\char95{}interfaces = all
mydestination = foobar.org

virtual\char95{}mailbox\char95{}domains = dscm:domain
virtual\char95{}mailbox\char95{}maps = dscm:user
virtual\char95{}transport = mailMaster

local\char95{}recipient\char95{}maps = unix:passwd.byname
unknown\char95{}local\char95{}recipient\char95{}reject\char95{}code = 550
mynetworks\char95{}style = host
mynetworks = 127.0.0.0/8
relay\char95{}domains =
smtpd\char95{}banner = \$myhostname ESMTP \$mail\char95{}name
\endPar{}\endNode{}
	\endPar{}\endNode{}\Node%
{\def\Element%
{291}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  master.cf:
\Node%
{\def\Element%
{292}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
smtp      inet  n       -\/       -\/       -\/       -\/       smtpd
pickup    fifo  n       -\/       -\/       60      1       pickup
cleanup   unix  n       -\/       -\/       -\/       0       cleanup
qmgr      fifo  n       -\/       -\/       300     1       qmgr
tlsmgr    unix  -\/       -\/       -\/       1000?   1       tlsmgr
rewrite   unix  -\/       -\/       -\/       -\/       -\/       trivial-\/rewrite 
bounce    unix  -\/       -\/       -\/       -\/       0       bounce
defer     unix  -\/       -\/       -\/       -\/       0       bounce
trace     unix  -\/       -\/       -\/       -\/       0       bounce
verify    unix  -\/       -\/       -\/       -\/       1       verify
flush     unix  n       -\/       -\/       1000?   0       flush
proxymap  unix  -\/       -\/       n       -\/       -\/       proxymap
relay     unix  -\/       -\/       -\/       -\/       -\/       smtp
	-\/o fallback\char95{}relay=
showq     unix  n       -\/       -\/       -\/       -\/       showq
error     unix  -\/       -\/       -\/       -\/       -\/       error
discard   unix  -\/       -\/       -\/       -\/       -\/       discard
local     unix  -\/       n       n       -\/       -\/       local
virtual   unix  -\/       n       n       -\/       -\/       virtual
lmtp      unix  -\/       -\/       -\/       -\/       -\/       lmtp
anvil     unix  -\/       -\/       -\/       -\/       1       anvil
scache	  unix	-\/	-\/	-\/	-\/	1	scache

mailForward unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailVacation unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix
mailAntivirus unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailMaster unix  -\/	-\/	-\/	-\/	-\/	pd-\/postfix 
mailStore unix  -\/	n	n	-\/	-\/	pd-\/postfix
\endPar{}\endNode{}
	\endPar{}\endNode{}\Node%
{\def\Element%
{293}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	  dynamicmaps.cf:
\Node%
{\def\Element%
{294}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
tcp	/usr/lib/postfix/dict\char95{}tcp.so		dict\char95{}tcp\char95{}open	
dscm	/usr/lib/postfix/dict\char95{}dscm.so		dict\char95{}dscm\char95{}open
\endPar{}\endNode{}
	\endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{295}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}8. \Node%
{\def\Element%
{296}\def\ProcessingMode%
{title-sosofo-mode}}Configuring PigeonDeliver and PigeonDeliver modules\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{296}}\endNode{}\Node%
{\def\Element%
{297}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Depending on the modules that will be used by your users,
      you may need to do some tweaking on PigeonDeliver configuration
      variables.
    \endPar{}\endNode{}\Node%
{\def\Element%
{298}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}8.1. \Node%
{\def\Element%
{299}\def\ProcessingMode%
{title-sosofo-mode}}Configuring the mailStore module\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{299}}\endNode{}\Node%
{\def\Element%
{300}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        By default, the mailStore module will save your
	users mails in /dscm/data. Just create that
	folder, with something like:
\Node%
{\def\Element%
{301}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
\# mkdir /dscm
\# mkdir /dscm/data
\endPar{}\endNode{}
	and you should be ok. If you want to change
	the location of this directory, you can add:
\Node%
{\def\Element%
{302}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
mailStore\char95{}base = /home/dscm
\endPar{}\endNode{}
	to your main.cf file to set the home directory to
	/home/dscm.
      \endPar{}\endNode{}\Node%
{\def\Element%
{303}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        By default, the mailStore module uses the dscmtree
	delivery agent with maildir support. This means
	that under /dscm/data/hostname/ will be created
	256 folders, from 00 to FF, where each folder will
	hold some of you users maildirectories, and each
	user will be assigned a random uid in the range 
	1000 -\/ 500000.  You must make sure in the passwd
	file there are no users using any of those uid,
	otherwise they will be granted the same privileges.
      \endPar{}\endNode{}\Node%
{\def\Element%
{304}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        To change this range, you must use the:
\Node%
{\def\Element%
{305}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
mailStore\char95{}minuid = 10000
mailStore\char95{}maxuid = 20000
\endPar{}\endNode{}
 	parameters in your main.cf. With the example above,
	we have the ability to handle up to 10000 users. However,
	keep in mind that since hashing technices as used by 
	dscmtree to assign uids, when the range is almost full 
	the efficiency in adding new users will be much lower,
	and in case the range completely fills, you won't be
	able to add new users at all.
      \endPar{}\endNode{}\Node%
{\def\Element%
{306}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	So, your range should be about twice the number of
	users you expect to have, and no less than 1000.
      \endPar{}\endNode{}\Node%
{\def\Element%
{307}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        By default, user emails will be stored using the
	maildir format.
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{308}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{14.4\p@}\def\LineSpacing%
{18.72\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{3}\def\sbNom%
{10.8\p@}\def\sbMin%
{10.8\p@}\def\sbMax%
{10.8\p@}\def\sbConditional%
{1}\def\saNom%
{2.88\p@}\def\saMin%
{2.88\p@}\def\saMax%
{2.88\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}8.2. \Node%
{\def\Element%
{309}\def\ProcessingMode%
{title-sosofo-mode}}Configuring the mailAntivirus module\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{309}}\endNode{}\Node%
{\def\Element%
{310}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        The mailAntivirus module requires clamav or
	some other antivirus to be installed. At time
	of writing, the only free antivirus supported
	is "clamav".
      \endPar{}\endNode{}\Node%
{\def\Element%
{311}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        By default, the mailAntivirus module will thus
	look for a clamd to be available. To allow
	the mailAntivirus module to find it, you must
	make the clamd socket available to this module.
	Just open your clamd.conf file, usually in /etc/clamav/,
	and change the LocalSocket line into something like:
\Node%
{\def\Element%
{312}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
LocalSocket /var/spool/postfix/clamd.ctl
\endPar{}\endNode{}
	and make sure to have the parameters:
\Node%
{\def\Element%
{313}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}
ScanMail
ScanArchive
\endPar{}\endNode{}
	in your configuration file. You can find a complete
	configuration file examples in /usr/src/pigeondeliver-\/x.y.z/examples/clamav/.
      \endPar{}\endNode{}\Node%
{\def\Element%
{314}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        Obviously, you can also configure the mailAntivirus
	module not to look for the clamd socket in /var/spool/postfix/clamd.ctl. 
	However, if you run postfix chrooted, this is quite important,
	since postfix daemons will not be able to look for files outside
	that directory.
      \endPar{}\endNode{}\Node%
{\def\Element%
{315}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
        The most interesting parameters of the mailAntivirus module 
	you could be changing in the main.cf file are:
	\Node%
{\def\Element%
{316}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}\def\saNom%
{5\p@}\def\saMin%
{5\p@}\def\saMax%
{5\p@}\def\saConditional%
{1}}\Node%
{\def\Element%
{317}}\Node%
{\def\Element%
{318}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}mailAntivirus\char95{}socket\endPar{}\endNode{}\Node%
{\def\Element%
{319}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{320}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}to use a different path than /var/run/clamav/clamd.ctl
	      or /clamd.ctl. With this parameter, you can specify a
	      list of paths that will be tryed, until one succedes,
	      in order to connect clamd. Something like:
\Node%
{\def\Element%
{321}\def\ProcessingMode%
{listitem-content-mode}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
mailAntivirus\char95{}socket = /var/spool/postfix/clamd.ctl 
   /clamd.ctl /var/run/clamav/clamd.ctl
\endPar{}\endNode{}
	      note that "/clamd.ctl" is extremely important if you
	      run postfix chrooted.\endSeq{}\endNode{}\endPar{}\endDisplayGroup{}\endNode{}\endNode{}\Node%
{\def\Element%
{322}}\Node%
{\def\Element%
{323}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\KeepWithNext%
{1}}mailAntivirus\char95{}session, mailAntivirus\char95{}workaround\endPar{}\endNode{}\Node%
{\def\Element%
{324}}\DisplayGroup%
{\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}}\Par%
{\def\FirstLineStartIndent%
{-20\p@}\def\FirstLineStartIndentFactor%
{0}\def\fFamName{Times-New-Roman}\def\fWeight%
{medium}\def\fSize%
{10\p@}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}\Seq%
{}\LineField%
{\def\FieldWidth%
{20\p@}\def\FieldWidthFactor%
{0}} \endLineField{}\endSeq{}\Node%
{\def\Element%
{325}\def\ProcessingMode%
{listitem-content-mode}}\Seq%
{}if mailAntivirus\char95{}session is enabled, the mailAntivirus 
	      module will strongly reduce the number of connections opened
	      with clamd. However, every connection opened will cost
	      about 1 second, unless mailAntivirus\char95{}workaround is disabled.\endSeq{}\endNode{}\endPar{}\Node%
{\def\Element%
{326}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	      So, the question is, is it better to avoid the overload
	      of opening and closing connections, and having to wait 1
	      second every time we need to do it, or is it better to
	      open lot of connections without having to pay the 1 second
	      penalty? I still don't know... 
	    \endPar{}\endNode{}\Node%
{\def\Element%
{327}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	      You can disable the 1 second penalty by disabling mailAntivirus\char95{}workaround.
	      However, even recent versions of clamd, have a wierd bug that
	      will make the connection hang forever under some conditions if this
	      option is not enabled.
	    \endPar{}\endNode{}\Node%
{\def\Element%
{328}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
	      By default, mailAntivirus\char95{}session is enabled as much as
	      mailAntivirus\char95{}workaround. However, to avoid the 1 second
	      penalty, you can increase the IdleTimeout parameter in
	      your clamd.conf file. That way, clamd will not close connections
	      forcing the mailAntivirus module to open new ones. To
	      do so, set something like:
\Node%
{\def\Element%
{329}}\Par%
{\def\fSize%
{9\p@}\def\LineSpacing%
{11.7\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{68\p@}\def\StartIndentFactor%
{0}\def\fFamName{Courier-New}\def\fWeight%
{medium}\def\fPosture%
{upright}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Lines%
{asis}\def\InputWhitespaceTreatment%
{preserve}\def\sbNom%
{5\p@}\def\sbMin%
{5\p@}\def\sbMax%
{5\p@}\def\sbConditional%
{1}}
IdleTimeout 180
\endPar{}\endNode{}
	      in your clamd configuration file.
	    \endPar{}\endNode{}\endDisplayGroup{}\endNode{}\endNode{}\endDisplayGroup{}\endNode{}
      \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\Node%
{\def\Element%
{330}}\DisplayGroup%
{\def\StartIndent%
{48\p@}\def\StartIndentFactor%
{0}\def\sbNom%
{10\p@}\def\sbMin%
{10\p@}\def\sbMax%
{10\p@}\def\sbConditional%
{1}\def\saNom%
{10\p@}\def\saMin%
{10\p@}\def\saMax%
{10\p@}\def\saConditional%
{1}}\Seq%
{}\Seq%
{}\Par%
{\def\fFamName{Arial}\def\fWeight%
{bold}\def\fPosture%
{upright}\def\fSize%
{17.28\p@}\def\LineSpacing%
{22.464\p@}\def\LineSpacingFactor%
{0}\def\StartIndent%
{0\p@}\def\StartIndentFactor%
{0}\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\HeadingLevel%
{2}\def\sbNom%
{12.96\p@}\def\sbMin%
{12.96\p@}\def\sbMax%
{12.96\p@}\def\sbConditional%
{1}\def\saNom%
{3.456\p@}\def\saMin%
{3.456\p@}\def\saMax%
{3.456\p@}\def\saConditional%
{1}\def\KeepWithNext%
{1}}9. \Node%
{\def\Element%
{331}\def\ProcessingMode%
{title-sosofo-mode}}Conclusions\endNode{}\endPar{}\endSeq{}\Node%
{\def\Element%
{331}}\endNode{}\Node%
{\def\Element%
{332}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      You should now be ready to run and test postfix and
      PigeonDeliver. Just start postfix as usual, and see 
      what happens...  take a look to your mail.log files,
      and make sure there are no dangerous messages in
      there.
    \endPar{}\endNode{}\Node%
{\def\Element%
{333}}\Par%
{\def\FirstLineStartIndent%
{0\p@}\def\FirstLineStartIndentFactor%
{0}\def\Quadding%
{start}\def\Hyphenate%
{0}\def\Language%
{EN}\def\sbNom%
{20\p@}\def\sbMin%
{20\p@}\def\sbMax%
{20\p@}\def\sbConditional%
{1}\def\saNom%
{1.25\p@}\def\saMin%
{1.25\p@}\def\saMax%
{1.25\p@}\def\saConditional%
{1}}
      Right after configuring PigeonDeliver, you shouldn't 
      see any visible difference in the deliver process
      for local users. However, as soon as you add a domain with
      PigeonAdmin or to the ldaptree, you will see that
      postfix will accept their mails without troubles,
      and pass them over to the PigeonDeliver delivery agent.
      At first, you will see PigeonDeliver complaining for
      some problems. Follow the instructions provided and
      read the manual to know how to solve the various 
      problems.
    \endPar{}\endNode{}\endSeq{}\endDisplayGroup{}\endNode{}\endSpS{}\endSeq{}\endNode{}\endNode{}\endSeq{}\endFOT{}
