slurpd is strongly deprecated

This commit is contained in:
Howard Chu 2007-04-05 23:41:35 +00:00
parent 819cf670f3
commit 66eba3ba9c
10 changed files with 25 additions and 559 deletions

View File

@ -170,10 +170,8 @@ LDAP_LIBLUTIL_A = $(LDAP_LIBDIR)/liblutil/liblutil.a
LDAP_L = $(LDAP_LIBLUTIL_A) \
$(LDAP_LIBLDAP_LA) $(LDAP_LIBLBER_LA)
SLURPD_L = $(LDAP_LIBLUTIL_A) \
$(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
SLAPD_L = $(LDAP_LIBLUNICODE_A) $(LDAP_LIBREWRITE_A) \
$(SLURPD_L)
$(LDAP_LIBLUTIL_A) $(LDAP_LIBLDAP_R_LA) $(LDAP_LIBLBER_LA)
WRAP_LIBS = @WRAP_LIBS@
# AutoConfig generated
@ -202,7 +200,6 @@ SLAPD_SQL_INCLUDES = @SLAPD_SQL_INCLUDES@
SLAPD_SQL_LIBS = @SLAPD_SQL_LIBS@
SLAPD_LIBS = @SLAPD_LIBS@ @SLAPD_PERL_LDFLAGS@ @SLAPD_SQL_LDFLAGS@ @SLAPD_SQL_LIBS@ @SLAPD_SLP_LIBS@ @SLAPD_GMP_LIBS@ $(ICU_LIBS)
SLURPD_LIBS = @SLURPD_LIBS@
# Our Defaults
CC = $(AC_CC)

View File

@ -377,12 +377,6 @@ OL_ARG_ENABLE(unique,[ --enable-unique Attribute Uniqueness overlay],
OL_ARG_ENABLE(valsort,[ --enable-valsort Value Sorting overlay],
no, [no yes mod], ol_enable_overlays)
dnl ----------------------------------------------------------------
dnl SLURPD OPTIONS
AC_ARG_ENABLE(xxslurpdoptions,[
SLURPD (Replication Daemon) Options:])
OL_ARG_ENABLE(slurpd,[ --enable-slurpd enable building slurpd], auto)dnl
dnl ----------------------------------------------------------------
AC_ARG_ENABLE(xxliboptions,[
Library Generation & Linking Options])
@ -422,9 +416,6 @@ if test $ol_enable_slapd = no ; then
if test $ol_enable_aci != no ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
fi
if test $ol_enable_slurpd = yes ; then
AC_MSG_ERROR([slurpd requires slapd])
fi
if test $ol_enable_rewrite = yes ; then
AC_MSG_WARN([slapd disabled, ignoring --enable-rewrite argument])
fi
@ -451,8 +442,6 @@ if test $ol_enable_slapd = no ; then
ol_enable_aci=no
ol_enable_wrappers=no
ol_enable_slurpd=no
ol_enable_rewrite=no
elif test $ol_enable_modules != yes &&
@ -482,13 +471,6 @@ if test $ol_enable_meta/$ol_enable_ldap = yes/no ; then
AC_MSG_ERROR([--enable-meta requires --enable-ldap])
fi
if test $ol_enable_slurpd = yes ; then
dnl SLURPD was specifically enabled
if test $ol_with_threads = no ; then
AC_MSG_ERROR([slurpd requires threads])
fi
fi
if test $ol_enable_lmpasswd = yes ; then
if test $ol_with_tls = no ; then
AC_MSG_ERROR([LAN Manager passwords require OpenSSL])
@ -512,10 +494,8 @@ LTHREAD_LIBS=
LUTIL_LIBS=
SLAPD_LIBS=
SLURPD_LIBS=
BUILD_SLAPD=no
BUILD_SLURPD=no
BUILD_THREAD=no
@ -813,9 +793,11 @@ AC_CHECK_HEADERS( \
sysexits.h \
sys/file.h \
sys/filio.h \
sys/fstyp.h \
sys/errno.h \
sys/ioctl.h \
sys/param.h \
sys/privgrp.h \
sys/resource.h \
sys/select.h \
sys/socket.h \
@ -824,6 +806,7 @@ AC_CHECK_HEADERS( \
sys/time.h \
sys/types.h \
sys/uio.h \
sys/vmount.h \
syslog.h \
termios.h \
unistd.h \
@ -2338,6 +2321,12 @@ if test "$ac_cv_func_getpeereid" != yes; then
#include <sys/socket.h>
#endif])
fi
AC_CHECK_MEMBERS([struct stat.st_fstype, struct stat.st_vfstype])
if test "$ac_cv_member_struct_stat_st_fstype" = yes; then
AC_COMPILE_IFELSE([struct stat st; char *ptr=st.st_fstype;],
AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_CHAR]),
AC_DEFINE([HAVE_STRUCT_STAT_ST_FSTYPE_INT]))
fi
fi
LIBSRCS="$LIBSRCS getpeereid.c"
fi
@ -2795,12 +2784,6 @@ if test "$ol_enable_valsort" != no ; then
AC_DEFINE_UNQUOTED(SLAPD_OVER_VALSORT,$MFLAG,[define for Value Sorting overlay])
fi
if test "$ol_enable_slurpd" != no &&
test "$ol_link_threads" != no &&
test $BUILD_SLAPD = yes ; then
BUILD_SLURPD=yes
fi
if test "$ol_enable_rewrite" != no ; then
AC_DEFINE(ENABLE_REWRITE,1,[define to enable rewriting in back-ldap and back-meta])
BUILD_REWRITE=yes
@ -2871,11 +2854,9 @@ dnl overlays
AC_SUBST(BUILD_TRANSLUCENT)
AC_SUBST(BUILD_UNIQUE)
AC_SUBST(BUILD_VALSORT)
AC_SUBST(BUILD_SLURPD)
AC_SUBST(LDAP_LIBS)
AC_SUBST(SLAPD_LIBS)
AC_SUBST(SLURPD_LIBS)
AC_SUBST(BDB_LIBS)
AC_SUBST(LTHREAD_LIBS)
AC_SUBST(LUTIL_LIBS)
@ -2956,7 +2937,6 @@ AC_CONFIG_FILES([Makefile:build/top.mk:Makefile.in:build/dir.mk]
[servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk]
[servers/slapd/slapi/Makefile:build/top.mk:servers/slapd/slapi/Makefile.in:build/lib.mk:build/lib-shared.mk]
[servers/slapd/overlays/Makefile:build/top.mk:servers/slapd/overlays/Makefile.in:build/lib.mk]
[servers/slurpd/Makefile:build/top.mk:servers/slurpd/Makefile.in:build/srv.mk]
[tests/Makefile:build/top.mk:tests/Makefile.in:build/dir.mk]
[tests/run]
[tests/progs/Makefile:build/top.mk:tests/progs/Makefile.in:build/rules.mk])

View File

@ -672,40 +672,6 @@ Specify the referral to pass back when
.BR slapd (8)
cannot find a local database to handle a request.
If multiple values are specified, each url is provided.
.\" slurpd-related keywords are all deprecated
.\".TP
.\".B replica-argsfile
.\"The ( absolute ) name of a file that will hold the
.\".B slurpd
.\"server's command line options
.\"if started without the debugging command line option.
.\"If it appears after a
.\".B replogfile
.\"directive, the args file is specific to the
.\".BR slurpd (8)
.\"instance that handles that replication log.
.\".TP
.\".B replica-pidfile
.\"The ( absolute ) name of a file that will hold the
.\".B slurpd
.\"server's process ID ( see
.\".BR getpid (2)
.\") if started without the debugging command line option.
.\"If it appears after a
.\".B replogfile
.\"directive, the pid file is specific to the
.\".BR slurpd (8)
.\"instance that handles that replication log.
.\".TP
.\".B replicationinterval
.\"The number of seconds
.\".B slurpd
.\"waits before checking the replogfile for changes.
.\"If it appears after a
.\".B replogfile
.\"directive, the replication interval is specific to the
.\".BR slurpd (8)
.\"instance that handles that replication log.
.TP
.B olcReverseLookup: TRUE | FALSE
Enable/disable client name unverified reverse lookup (default is
@ -1471,79 +1437,6 @@ By default, this setting is FALSE.
Configure a SLAPI plugin. See the
.BR slapd.plugin (5)
manpage for more details.
.\".HP
.\".hy 0
.\".B replica uri=ldap[s]://<hostname>[:port]|host=<hostname>[:port]
.\".B [starttls=yes|critical]
.\".B [suffix=<suffix> [...]]
.\".B bindmethod=simple|sasl [binddn=<simple DN>] [credentials=<simple password>]
.\".B [saslmech=<SASL mech>] [secprops=<properties>] [realm=<realm>]
.\".B [authcId=<authentication ID>] [authzId=<authorization ID>]
.\".B [attrs[!]=<attr list>]
.\".RS
.\"Specify a replication site for this database. Refer to the "OpenLDAP
.\"Administrator's Guide" for detailed information on setting up a replicated
.\".B slapd
.\"directory service. Zero or more
.\".B suffix
.\"instances can be used to select the subtrees that will be replicated
.\"(defaults to all the database).
.\".B host
.\"is deprecated in favor of the
.\".B uri
.\"option.
.\".B uri
.\"allows the replica LDAP server to be specified as an LDAP URI.
.\"A
.\".B bindmethod
.\"of
.\".B simple
.\"requires the options
.\".B binddn
.\"and
.\".B credentials
.\"and should only be used when adequate security services
.\"(e.g TLS or IPSEC) are in place. A
.\".B bindmethod
.\"of
.\".B sasl
.\"requires the option
.\".B saslmech.
.\"Specific security properties (as with the
.\".B sasl-secprops
.\"keyword above) for a SASL bind can be set with the
.\".B secprops
.\"option. A non-default SASL realm can be set with the
.\".B realm
.\"option.
.\"If the
.\".B mechanism
.\"will use Kerberos, a kerberos instance should be given in
.\".B authcId.
.\"An
.\".B attr list
.\"can be given after the
.\".B attrs
.\"keyword to allow the selective replication of the listed attributes only;
.\"if the optional
.\".B !
.\"mark is used, the list is considered exclusive, i.e. the listed attributes
.\"are not replicated.
.\"If an objectClass is listed, all the related attributes
.\"are (are not) replicated.
.\".RE
.\".TP
.\".B replogfile <filename>
.\"Specify the name of the replication log file to log changes to.
.\"The replication log is typically written by
.\".BR slapd (8)
.\"and read by
.\".BR slurpd (8).
.\"See
.\".BR slapd.replog (5)
.\"for more information. The specified file should be located
.\"in a directory with limited read/write/execute access as the replication
.\"logs may contain sensitive information.
.TP
.B olcRootDN: <dn>
Specify the distinguished name that is not subject to access control
@ -1816,9 +1709,8 @@ ignored.
This option is only applicable in a slave
database.
It specifies the DN permitted to update (subject to access controls)
the replica (typically, this is the DN
.BR slurpd (8)
binds to update the replica). Generally, this DN
the replica. It is only needed in certain push-mode
replication scenarios. Generally, this DN
.I should not
be the same as the
.B rootdn
@ -1963,8 +1855,7 @@ default slapd configuration directory
.BR slapdn (8),
.BR slapindex (8),
.BR slappasswd (8),
.BR slaptest (8),
.BR slurpd (8).
.BR slaptest (8).
.LP
"OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
.SH ACKNOWLEDGEMENTS

View File

@ -10,9 +10,7 @@ The
.BR slapd.conf (5)
file contains configuration information for the
.BR slapd (8)
daemon. This configuration file is also used by the
.BR slurpd (8)
replication daemon and by the SLAPD tools
daemon. This configuration file is also used by the SLAPD tools
.BR slapacl (8),
.BR slapadd (8),
.BR slapauth (8),

View File

@ -11,9 +11,7 @@ The file
.B ETCDIR/slapd.conf
contains configuration information for the
.BR slapd (8)
daemon. This configuration file is also used by the
.BR slurpd (8)
replication daemon and by the SLAPD tools
daemon. This configuration file is also used by the SLAPD tools
.BR slapacl (8),
.BR slapadd (8),
.BR slapauth (8),
@ -720,39 +718,6 @@ Specify the referral to pass back when
cannot find a local database to handle a request.
If specified multiple times, each url is provided.
.TP
.B replica-argsfile
The ( absolute ) name of a file that will hold the
.B slurpd
server's command line options
if started without the debugging command line option.
If it appears after a
.B replogfile
directive, the args file is specific to the
.BR slurpd (8)
instance that handles that replication log.
.TP
.B replica-pidfile
The ( absolute ) name of a file that will hold the
.B slurpd
server's process ID ( see
.BR getpid (2)
) if started without the debugging command line option.
If it appears after a
.B replogfile
directive, the pid file is specific to the
.BR slurpd (8)
instance that handles that replication log.
.TP
.B replicationinterval
The number of seconds
.B slurpd
waits before checking the replogfile for changes.
If it appears after a
.B replogfile
directive, the replication interval is specific to the
.BR slurpd (8)
instance that handles that replication log.
.TP
.B require <conditions>
Specify a set of conditions (separated by white space) to
require (default none).
@ -1346,7 +1311,7 @@ resolve an entry, used to avoid infinite alias loops. The default is 1.
.B mirrormode on | off
This option puts a replica database into "mirror" mode. Update
operations will be accepted from any user, not just the updatedn. The
database must already be configured as a slurpd or syncrepl consumer
database must already be configured as a syncrepl consumer
before this keyword may be set. This mode also requires a
.B serverID
(see above) to be configured.
@ -1430,18 +1395,6 @@ If an objectClass is listed, all the related attributes
are (are not) replicated.
.RE
.TP
.B replogfile <filename>
Specify the name of the replication log file to log changes to.
The replication log is typically written by
.BR slapd (8)
and read by
.BR slurpd (8).
See
.BR slapd.replog (5)
for more information. The specified file should be located
in a directory with limited read/write/execute access as the replication
logs may contain sensitive information.
.TP
.B restrict <oplist>
Specify a whitespace separated list of operations that are restricted.
If defined inside a database specification, restrictions apply only
@ -1731,12 +1684,10 @@ ignored.
.TP
.B updatedn <dn>
This option is only applicable in a slave
database updated using
.BR slurpd(8).
database.
It specifies the DN permitted to update (subject to access controls)
the replica (typically, this is the DN
.BR slurpd (8)
binds to update the replica). Generally, this DN
the replica. It is only needed in certain push-mode
replication scenarios. Generally, this DN
.I should not
be the same as the
.B rootdn
@ -1815,8 +1766,7 @@ default slapd configuration file
.BR slapdn (8),
.BR slapindex (8),
.BR slappasswd (8),
.BR slaptest (8),
.BR slurpd (8).
.BR slaptest (8).
.LP
"OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
.SH ACKNOWLEDGEMENTS

View File

@ -10,9 +10,7 @@ The
.BR slapd.conf (5)
file contains configuration information for the
.BR slapd (8)
daemon. This configuration file is also used by the
.BR slurpd (8)
replication daemon and by the SLAPD tools
daemon. This configuration file is also used by the SLAPD tools
.BR slapadd (8),
.BR slapcat (8),
and

View File

@ -1,167 +0,0 @@
.TH SLAPD.REPLOG 5 "RELEASEDATE" "OpenLDAP LDVERSION"
.\" $OpenLDAP$
.\" Copyright 1998-2007 The OpenLDAP Foundation All Rights Reserved.
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
.SH NAME
slapd.replog \- slapd replication log format
.SH SYNOPSIS
slapd.replog
slapd.replog.lock
.SH DESCRIPTION
.LP
The file slapd.replog is produced by the stand-alone LDAP daemon,
.BR slapd (8),
when changes are made to its local database that are to be
propagated to one or more replica
.IR slapd s.
The file consists of
zero or more records, each one corresponding to a change, addition,
or deletion from the
.I slapd
database. The file is meant to be read
and processed by
.BR slurpd (8),
the stand-alone LDAP update replication daemon. The records are
separated by a blank line. Each record has the following format.
.LP
The record begins with one or more lines indicating the replicas
to which the change is to be propagated:
.LP
.nf
replica: <hostname[:portnumber]>
.fi
.LP
Next, the time the change took place given, as the number of seconds since
00:00:00 GMT, Jan. 1, 1970, with an optional decimal extension, in order
to make times unique. Note that slapd does not make times unique, but
slurpd makes all times unique in its copies of the replog files.
.LP
.nf
time: <integer[.integer]>
.fi
.LP
Next, the distinguished name of the entry being changed is given:
.LP
.nf
dn: <distinguishedname>
.fi
.LP
Next, the type of change being made is given:
.LP
.nf
changetype: <[modify|add|delete|modrdn]>
.fi
.LP
Finally, the change information itself is given, the format of which
depends on what kind of change was specified above. For a \fIchangetype\fP
of \fImodify\fP, the format is one or more of the following:
.LP
.nf
add: <attributetype>
<attributetype>: <value1>
<attributetype>: <value2>
...
-
.fi
.LP
Or, for a replace modification:
.LP
.nf
replace: <attributetype>
<attributetype>: <value1>
<attributetype>: <value2>
...
-
.fi
.LP
Or, for a delete modification:
.LP
.nf
delete: <attributetype>
<attributetype>: <value1>
<attributetype>: <value2>
...
-
.fi
.LP
If no \fIattributetype\fP lines are given, the entire attribute is to be
deleted.
.LP
For a \fIchangetype\fP of \fIadd\fP, the format is:
.LP
.nf
<attributetype1>: <value1>
<attributetype1>: <value2>
...
<attributetypeN>: <value1>
<attributetypeN>: <value2>
.fi
.LP
For a \fIchangetype\fP of \fImodrdn\fP, the format is:
.LP
.nf
newrdn: <newrdn>
deleteoldrdn: 0 | 1
.fi
.LP
where a value of 1 for deleteoldrdn means to delete the values
forming the old rdn from the entry, and a value of 0 means to
leave the values as non-distinguished attributes in the entry.
.LP
For a \fIchangetype\fP of \fIdelete\fP, no additional information
is needed in the record.
.LP
The format of the values is the LDAP Directory Interchange Format
described in
.BR ldif (5).
.LP
Access to the \fIslapd.replog\fP file is synchronized through the
use of
.BR flock (3)
on the file \fIslapd.replog.lock\fP. Any process
reading or writing this file should obey this locking convention.
.SH EXAMPLE
The following sample \fIslapd.replog\fP file contains information
on one of each type of change.
.LP
.nf
replica: truelies.rs.itd.umich.edu
replica: judgmentday.rs.itd.umich.edu
time: 797612941
dn: cn=Babs Jensen,dc=example,dc=com
changetype: add
objectclass: person
cn: babs
cn: babs jensen
sn: jensen
replica: truelies.rs.itd.umich.edu
replica: judgmentday.rs.itd.umich.edu
time: 797612973
dn: cn=Babs Jensen,dc=example,dc=com
changetype: modify
add: description
description: the fabulous babs
replica: truelies.rs.itd.umich.edu
replica: judgmentday.rs.itd.umich.edu
time: 797613020
dn: cn=Babs Jensen,dc=example,dc=com
changetype: modrdn
newrdn: cn=Barbara J Jensen
deleteoldrdn: 0
.fi
.SH FILES
.TP
slapd.replog
slapd replication log file
.TP
slapd.replog.lock
lockfile for slapd.replog
.SH SEE ALSO
.BR ldap (3),
.BR ldif (5),
.BR slapd (8),
.BR slurpd (8)
.SH ACKNOWLEDGEMENTS
.so ../Project

View File

@ -218,7 +218,7 @@ dynamic objects replicate. Only the master takes care of handling dynamic
object expiration, while replicas simply see the dynamic object as a plain
object.
When using slurpd replication, one needs to explicitly exclude the
When replicating these objects, one needs to explicitly exclude the
.B dynamicObject
class and the
.B entryTtl
@ -227,21 +227,10 @@ This implementation of RFC 2589 introduces a new operational attribute,
.BR entryExpireTimestamp ,
that contains the expiration timestamp. This must be excluded from
replication as well.
In
.BR slapd.conf (5),
add the following \fIexclusion list\fP to each
.B replica
statement:
.RS
.nf
replica ...
attrs!=@dynamicObject,entryTtl,entryExpireTimestamp
.fi
.RE
When using syncrepl, the quick and dirty solution is to set
The quick and dirty solution is to set
.B schemacheck=off
in the syncrepl configuration
and, optionally, exclude the operational attributes from replication, using
.RS

View File

@ -46,15 +46,6 @@ flag is given, even with a zero argument,
.B slapd
will not fork and disassociate from the invoking tty.
.LP
.B Slapd
can be configured to provide replicated service for a database with
the help of
.BR slurpd ,
the standalone LDAP update replication daemon.
See
.BR slurpd (8)
for details.
.LP
See the "OpenLDAP Administrator's Guide" for more details on
.BR slapd .
.SH OPTIONS
@ -306,8 +297,7 @@ To test whether the configuration file is correct or not, type:
.BR slapdn (8),
.BR slapindex (8),
.BR slappasswd (8),
.BR slaptest (8),
.BR slurpd (8)
.BR slaptest (8).
.LP
"OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
.SH BUGS

View File

@ -1,160 +0,0 @@
.TH SLURPD 8C "RELEASEDATE" "OpenLDAP LDVERSION"
.\" $OpenLDAP$
.\" Copyright 1998-2007 The OpenLDAP Foundation All Rights Reserved.
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
.SH NAME
slurpd \- Standalone LDAP Update Replication Daemon
.SH SYNOPSIS
.B LIBEXECDIR/slurpd [\-d debug\-level]
.B [\-f slapd\-config\-file] [\-r slapd\-replog\-file]
.B [\-t temp\-dir] [\-o]
.B
.SH DESCRIPTION
.LP
.B Slurpd
is used to propagate changes from one slapd database to another. If
slapd is configured to produce a replication log,
.B slurpd
reads that
replication log and sends the changes to the slave
.B slapd
instances
via the LDAP protocol.
.B slurpd
is typically invoked at boot time, usually out of
.BR /etc/rc.local .
.LP
Upon startup,
.B slurpd
normally forks and disassociates itself from the invoking tty,
then reads the replication log (given either by the
.I replogfile
directive in the
.B slapd
config file, or by the
.RB \- r
command-line option).
If the replication log file does not exist or is empty,
.B slurpd
goes to sleep. It periodically wakes up and checks to see if there
are any changes to be propagated.
.LP
When
.B slurpd
notices that there are changes to propagate to slave
.B slapd
instances, it locks the replication log, makes its own private copy,
releases the lock, and forks one copy of itself for each replica
.B slapd
to be updated. Each child process binds to the slave
.B slapd
as the
DN given by the
.I binddn
option to the
.I replica
directive in the
.B slapd
config file, and sends the changes.
.LP
See
.BR slapd (8)
for details on the standalone LDAP daemon.
.LP
Note that slurpd reads
.B replication
directive from
.BR slapd.conf (5),
but uses
.BR ldap.conf (5)
to obtain other configuration settings (such as TLS settings).
.SH OPTIONS
.TP
.BI \-d " debug\-level"
Turn on debugging as defined by
.I debug\-level.
If this option is specified, even with a zero argument,
.B slurpd
will not fork or disassociate from the invoking terminal. Some general
operation and status messages are printed for any value of \fIdebug\-level\fP.
\fIdebug\-level\fP is taken as a bit string, with each bit corresponding to a
different kind of debugging information. See <ldap.h> for details.
.TP
.BI \-f " slapd\-config\-file"
Specifies the slapd configuration file. The default is
.BR ETCDIR/slapd.conf .
.TP
.BI \-r " slapd\-replog\-file"
Specifies the name of the
.B slapd
replication logfile. Normally, the name
of the replication log file is read from the
.B slapd
configuration file. The file should be located in a directory
with limited read/write/execute access.
The
.B \-r
option allows you to override this. In conjunction with the
.B \-o
option, you can process a replication log file in a "one\-shot" mode. For
example, if
.B slurpd
has encountered errors in processing a replication log,
you can run it in one\-shot mode and give the rejection file name as
the argument to the \-r option, once you've resolved the problem which caused
the replication to fail.
.TP
.B \-o
Run in "one\-shot" mode. Normally,
.B slurpd
processes the replog file
and then watches for more replication entries to be appended. In
one\-shot mode,
.B slurpd
processes a replication log and exits.
.TP
.BI \-t " temp\-dir"
.B slurpd
copies the replication log to a working directory before processing it.
The directory permissions should limit read/write/execute access as
temporary files may contain sensitive information.
This option allows you to specify the location of these temporary files.
The default is
.BR LOCALSTATEDIR/openldap-slurp .
.SH EXAMPLES
To start
.I slurpd
and have it fork and detach from the terminal and process
the replication logs generated by
.I slapd,
just type:
.LP
.nf
.ft tt
LIBEXECDIR/slurpd
.ft
.fi
.LP
To start
.I slurpd
with an alternate
.I slapd
configuration file, and turn
on voluminous debugging which will be printed on standard error, type:
.LP
.nf
.ft tt
LIBEXECDIR/slurpd -f ETCDIR/slapd.conf -d 255
.ft
.fi
.LP
.SH "SEE ALSO"
.BR ldap (3),
.BR ldap.conf (5),
.BR slapd.conf (5),
.BR slapd.replog (5),
.BR slapd (8)
.LP
"OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
.SH ACKNOWLEDGEMENTS
.so ../Project