aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorkuriyama <kuriyama@FreeBSD.org>2003-07-02 22:49:57 +0800
committerkuriyama <kuriyama@FreeBSD.org>2003-07-02 22:49:57 +0800
commitc51797993d985322be3032571902901278c38bab (patch)
treefa4c1be7ced73f8a17f8e4dca3308e8af618eaec /net
parentd104a4602b6f504dc11d99d4c4a408b4f1faabdd (diff)
downloadfreebsd-ports-gnome-c51797993d985322be3032571902901278c38bab.tar.gz
freebsd-ports-gnome-c51797993d985322be3032571902901278c38bab.tar.zst
freebsd-ports-gnome-c51797993d985322be3032571902901278c38bab.zip
Add openldap22 port after repocopy from openldap21.
Submitted by: Oliver Eikemeier <eikemeier@fillmore-labs.com> PR: ports/53571
Diffstat (limited to 'net')
-rw-r--r--net/Makefile1
-rw-r--r--net/openldap22-server/Makefile550
-rw-r--r--net/openldap22-server/distinfo3
-rw-r--r--net/openldap22-server/files/manpages188
-rw-r--r--net/openldap22-server/files/patch-build::ltmain.sh15
-rw-r--r--net/openldap22-server/files/patch-libraries::liblutil::passwd.c14
-rw-r--r--net/openldap22-server/files/patch-servers::slapd::daemon.c11
-rw-r--r--net/openldap22-server/files/slapd.sh71
-rw-r--r--net/openldap22-server/files/slurpd.sh64
-rw-r--r--net/openldap22-server/pkg-descr19
-rw-r--r--net/openldap22-server/pkg-install53
-rw-r--r--net/openldap22-server/pkg-message32
-rw-r--r--net/openldap22-server/pkg-plist180
-rw-r--r--net/openldap22/Makefile550
-rw-r--r--net/openldap22/distinfo3
-rw-r--r--net/openldap22/files/manpages188
-rw-r--r--net/openldap22/files/patch-build::ltmain.sh15
-rw-r--r--net/openldap22/files/patch-libraries::liblutil::passwd.c14
-rw-r--r--net/openldap22/files/patch-servers::slapd::daemon.c11
-rw-r--r--net/openldap22/files/slapd.sh71
-rw-r--r--net/openldap22/files/slurpd.sh64
-rw-r--r--net/openldap22/pkg-descr19
-rw-r--r--net/openldap22/pkg-install53
-rw-r--r--net/openldap22/pkg-message32
-rw-r--r--net/openldap22/pkg-plist180
-rw-r--r--net/openldap23-server/Makefile550
-rw-r--r--net/openldap23-server/distinfo3
-rw-r--r--net/openldap23-server/files/manpages188
-rw-r--r--net/openldap23-server/files/patch-build::ltmain.sh15
-rw-r--r--net/openldap23-server/files/patch-libraries::liblutil::passwd.c14
-rw-r--r--net/openldap23-server/files/patch-servers::slapd::daemon.c11
-rw-r--r--net/openldap23-server/files/slapd.sh71
-rw-r--r--net/openldap23-server/files/slurpd.sh64
-rw-r--r--net/openldap23-server/pkg-descr19
-rw-r--r--net/openldap23-server/pkg-install53
-rw-r--r--net/openldap23-server/pkg-message32
-rw-r--r--net/openldap23-server/pkg-plist180
-rw-r--r--net/openldap24-server/Makefile550
-rw-r--r--net/openldap24-server/distinfo3
-rw-r--r--net/openldap24-server/files/manpages188
-rw-r--r--net/openldap24-server/files/patch-build::ltmain.sh15
-rw-r--r--net/openldap24-server/files/patch-libraries::liblutil::passwd.c14
-rw-r--r--net/openldap24-server/files/patch-servers::slapd::daemon.c11
-rw-r--r--net/openldap24-server/files/slapd.sh71
-rw-r--r--net/openldap24-server/files/slurpd.sh64
-rw-r--r--net/openldap24-server/pkg-descr19
-rw-r--r--net/openldap24-server/pkg-install53
-rw-r--r--net/openldap24-server/pkg-message32
-rw-r--r--net/openldap24-server/pkg-plist180
49 files changed, 2329 insertions, 2472 deletions
diff --git a/net/Makefile b/net/Makefile
index 3dac69916cef..7cbf962045c3 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -404,6 +404,7 @@
SUBDIR += openldap12
SUBDIR += openldap20
SUBDIR += openldap21
+ SUBDIR += openldap22
SUBDIR += openmcu
SUBDIR += openreg
SUBDIR += openslp
diff --git a/net/openldap22-server/Makefile b/net/openldap22-server/Makefile
index fa44a42c5fd8..5b6c9d83f226 100644
--- a/net/openldap22-server/Makefile
+++ b/net/openldap22-server/Makefile
@@ -1,26 +1,12 @@
-# New ports collection makefile for: OpenLDAP 2.1
-# Date created: 5 Dec 2002
-# Whom: Christian Kratzer <ck@cksoft.de>
-#
-# This port allows separation of the openldap client and servers
-# using following options
-#
-# default builds openldap21-PORTVERSION
-# CLIENT_ONLY builds openldap21-client-PORTVERSION (clients and libs)
-# SLAPD_ONLY builds openldap21-slapd-PORTVERSION (slapd and slapd tools)
-# SLURPD_ONLY builds openldap21-slurpd-PORTVERSION (slurpd only)
-# SERVERS_ONLY builds openldap21-servers-PORTVERSION (slapd and slurpd)
-# WITHOUT_SASL do not build against sasl2
-#
-# OPENLDAP_STABLE an attempt to track the openldap stable branch
-# It remains to be seen if this stays practical.
+# New ports collection makefile for: OpenLDAP 2.2
+# Date created: 20 Sep 1998
+# Whom: Lachlan O'Dea
#
# $FreeBSD$
#
-PORTNAME= openldap21
-PORTVERSION= 2.1.20
-PORTREVISION= 1
+PORTNAME= openldap
+PORTVERSION= ${OPENLDAP_VERSION}.a
CATEGORIES= net databases
MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
http://public.planetmirror.com/pub/openldap/%SUBDIR%/ \
@@ -34,427 +20,177 @@ MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
ftp://ftp.linux.pt/pub/mirrors/OpenLDAP/%SUBDIR%/ \
ftp://ftp.si.uniovi.es/mirror/OpenLDAP/%SUBDIR%/ \
ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/%SUBDIR%/ \
+ http://openldap.cdpa.nsysu.edu.tw/OpenLDAP/%SUBDIR%/ \
+ ftp://ftp.u-aizu.ac.jp/pub/net/openldap/%SUBDIR%/ \
ftp://ftp.plig.org/pub/OpenLDAP/%SUBDIR%/
-.if defined(OPENLDAP_STABLE)
-MASTER_SITE_SUBDIR= openldap-stable
-DISTNAME= openldap-stable-20030410
-PKGNAMESUFFIX= -stable
-WRKSRC= ${WRKDIR}/openldap-${PORTVERSION}
-.else
-MASTER_SITE_SUBDIR= openldap-release
-DISTNAME= openldap-${PORTVERSION}
-.endif
+MASTER_SITE_SUBDIR= openldap-test
+DISTNAME= openldap-${OPENLDAP_VERSION}alpha
EXTRACT_SUFX= .tgz
-MAINTAINER= ck@cksoft.de
-COMMENT= Open source LDAP client and server software
+MAINTAINER= eikemeier@fillmore-labs.com
+COMMENT= Open source LDAP client and server implementation
-LIB_DEPENDS+= db41:${PORTSDIR}/databases/db41
+OPENLDAP_VERSION= 2.2.0
-CXXFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+CONFLICTS= openldap*
-CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+LATEST_LINK= openldap2
-LDFLAGS+= -L${LOCALBASE}/lib
+USE_OPENSSL= yes
+USE_REINPLACE= yes
+USE_LIBTOOL_VER= 14
-USE_OPENSSL= yes
-HAS_CONFIGURE= yes
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGMESSAGE= ${WRKDIR}/pkg-message
-CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}"
+LOCALSTATEDIR?= /var/db
+LDAP_RUN_DIR?= /var/run/openldap
-CONFIGURE_ARGS+=--prefix=${PREFIX} \
- --enable-bdb \
- --enable-crypt
+WITH_BDB_VER?= 41
-.if defined(WITHOUT_SASL)
-CONFIGURE_ARGS+= \
- --without-cyrus-sasl
-.else
-LIB_DEPENDS+= sasl2:${PORTSDIR}/security/cyrus-sasl2
-CONFIGURE_ARGS+= \
- --with-cyrus-sasl \
- --enable-spasswd
-.endif
+CONFIGURE_ARGS= --with-threads \
+ --with-tls=openssl
-# ------------------------------------------------------------------------------
-# common configure
-#
-CONFIGURE_ARGS+= \
- --with-tls \
- --localstatedir=/var/db
+SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
+ -e 's,%%LDAP_RUN_DIR%%,${LDAP_RUN_DIR},g' \
+ -e 's,%%LOCALSTATEDIR%%,${LOCALSTATEDIR},g'
-# Include tcp-wrapper support
-.if exists(/usr/include/tcpd.h)
-CONFIGURE_ARGS+= --enable-wrappers
+.if defined(CLIENT_ONLY)
+PKGNAMESUFFIX= -client
+CONFIGURE_ARGS+= --disable-slapd
+PLIST_SUB+= SERVER="@comment " \
+ SLAPI="@comment "
+SED_SCRIPT+= -e '/^%%SERVER%%/d'
+.else
+CONFIGURE_ARGS+= --localstatedir=${LOCALSTATEDIR} \
+ --enable-lmpasswd \
+ --enable-ldbm \
+ --with-ldbm-api=berkeley \
+ --enable-ldap \
+ --enable-meta \
+ --enable-rewrite \
+ --enable-null \
+ --enable-monitor
+
+.if ${WITH_BDB_VER} == 41
+LIB_DEPENDS= db41.1:${PORTSDIR}/databases/db41
+CONFIGURE_ARGS+= --enable-bdb
+.elif ${WITH_BDB_VER} == 4
+LIB_DEPENDS= db4.0:${PORTSDIR}/databases/db4
+CONFIGURE_ARGS+= --disable-bdb
+.elif ${WITH_BDB_VER} == 3
+LIB_DEPENDS= db3.3:${PORTSDIR}/databases/db3
+CONFIGURE_ARGS+= --disable-bdb
+.else
+.error WITH_BDB_VER must be 3, 4 or 41
.endif
+LIBS+= -ldb${WITH_BDB_VER}
+CPPFLAGS+= -I${LOCALBASE}/include/db${WITH_BDB_VER}
-.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 400014
-CONFIGURE_ARGS+= --enable-ipv6
+.if defined(WITH_SHELL)
+CONFIGURE_ARGS+= --enable-shell
.endif
-.if defined(CLIENT_ONLY)
-# ------------------------------------------------------------------------------
-# libraries and client applications only
-#
-BUILD_CLIENTS= yes
-INSTALLS_SHLIB= yes
-PKGNAMESUFFIX= -client
-COMMENT= Open source LDAP client software
-CONFIGURE_ARGS+= \
- --disable-slapd \
- --disable-slurpd \
- --enable-shared \
- --enable-static
-
-.elif defined(SLAPD_ONLY)
-# ------------------------------------------------------------------------------
-# slapd only
-#
-BUILD_SLAPD= yes
-PKGNAMESUFFIX= -slapd
-COMMENT= Open source LDAP server software (slapd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --disable-slurpd \
- --disable-shared \
- --disable-static \
- --without-threads \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell
-
-.elif defined(SLURPD_ONLY)
-# ------------------------------------------------------------------------------
-# slurpd only
-# NOTE: to build slurpd only package we have to build slapd
-# and some backend we just don't install them later on
-#
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -slurpd
-COMMENT= Open source LDAP server software (slurpd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-RUN_DEPENDS+= ${LOCALBASE}/libexec/slapd:${PORTSDIR}/net/openldap-slapd2.1
-CONFIGURE_ARGS+= \
- --enable-slurpd \
- --enable-slapd \
- --disable-shared \
- --disable-static \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell \
- --with-threads
-
-.elif defined(SERVERS_ONLY)
-# ------------------------------------------------------------------------------
-# slapd and slurpd
-#
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -server
-COMMENT= Open source LDAP server software (slapd and slurpd)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --enable-slurpd \
- --disable-shared \
- --disable-static \
- --with-threads \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell
+.if defined(WITH_PERL)
+.error build with Perl backend broken: <http://www.openldap.org/its/index.cgi/Development?id=2513>
+USE_PERL5= yes
+CONFIGURE_ARGS+= --enable-perl
+.endif
+.if defined(WITH_SASL)
+LIB_DEPENDS+= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
+CONFIGURE_ARGS+= --with-cyrus-sasl \
+ --enable-spasswd
.else
-# ------------------------------------------------------------------------------
-#
-# full package
-#
-INSTALLS_SHLIB= yes
-BUILD_CLIENTS= yes
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-CONFIGURE_ARGS+= \
- --with-threads \
- --enable-slapd \
- --enable-slurpd \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell \
- --enable-shared \
- --enable-static
+CONFIGURE_ARGS+= --without-cyrus-sasl
+.endif
+.if defined(WITH_ODBC)
+LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
+CONFIGURE_ARGS+= --enable-sql
.endif
-# ------------------------------------------------------------------------------
-# PLIST subs and MAN?/MLINKS
-#
-.if defined(BUILD_CLIENTS)
-PLIST_SUB+= NO_CLIENTS=
-MAN1+= ldapcompare.1
-MAN1+= ldapdelete.1
-MAN1+= ldapmodify.1
-MLINKS+= ldapmodify.1 ldapadd.1
-MAN1+= ldapmodrdn.1
-MAN1+= ldappasswd.1
-MAN1+= ldapsearch.1
-MAN1+= ldapwhoami.1
-MAN3+= lber-decode.3
-MLINKS+= lber-decode.3 ber_get_next.3
-MLINKS+= lber-decode.3 ber_skip_tag.3
-MLINKS+= lber-decode.3 ber_peek_tag.3
-MLINKS+= lber-decode.3 ber_scanf.3
-MLINKS+= lber-decode.3 ber_get_int.3
-MLINKS+= lber-decode.3 ber_get_enum.3
-MLINKS+= lber-decode.3 ber_get_stringb.3
-MLINKS+= lber-decode.3 ber_get_stringa.3
-MLINKS+= lber-decode.3 ber_get_stringal.3
-MLINKS+= lber-decode.3 ber_get_stringbv.3
-MLINKS+= lber-decode.3 ber_get_null.3
-MLINKS+= lber-decode.3 ber_get_boolean.3
-MLINKS+= lber-decode.3 ber_get_bitstring.3
-MLINKS+= lber-decode.3 ber_first_element.3
-MLINKS+= lber-decode.3 ber_next_element.3
-MAN3+= lber-encode.3
-MLINKS+= lber-encode.3 ber_alloc_t.3
-MLINKS+= lber-encode.3 ber_flush.3
-MLINKS+= lber-encode.3 ber_printf.3
-MLINKS+= lber-encode.3 ber_put_int.3
-MLINKS+= lber-encode.3 ber_put_enum.3
-MLINKS+= lber-encode.3 ber_put_ostring.3
-MLINKS+= lber-encode.3 ber_put_string.3
-MLINKS+= lber-encode.3 ber_put_null.3
-MLINKS+= lber-encode.3 ber_put_boolean.3
-MLINKS+= lber-encode.3 ber_put_bitstring.3
-MLINKS+= lber-encode.3 ber_start_seq.3
-MLINKS+= lber-encode.3 ber_start_set.3
-MLINKS+= lber-encode.3 ber_put_seq.3
-MLINKS+= lber-encode.3 ber_put_set.3
-MAN3+= lber-memory.3
-MLINKS+= lber-memory.3 ber_memalloc.3
-MLINKS+= lber-memory.3 ber_memcalloc.3
-MLINKS+= lber-memory.3 ber_memrealloc.3
-MLINKS+= lber-memory.3 ber_memfree.3
-MLINKS+= lber-memory.3 ber_memvfree.3
-MAN3+= lber-types.3
-MLINKS+= lber-types.3 ber_int_t.3
-MLINKS+= lber-types.3 ber_uint_t.3
-MLINKS+= lber-types.3 ber_len_t.3
-MLINKS+= lber-types.3 ber_slen_t.3
-MLINKS+= lber-types.3 ber_tag_t.3
-MAN3+= ldap.3
-MAN3+= ldap_abandon.3
-MLINKS+= ldap_abandon.3 ldap_abandon_ext.3
-MAN3+= ldap_add.3
-MLINKS+= ldap_add.3 ldap_add_s.3
-MLINKS+= ldap_add.3 ldap_add_ext.3
-MLINKS+= ldap_add.3 ldap_add_ext_s.3
-MAN3+= ldap_bind.3
-MLINKS+= ldap_bind.3 ldap_bind_s.3
-MLINKS+= ldap_bind.3 ldap_simple_bind.3
-MLINKS+= ldap_bind.3 ldap_simple_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_interactive_bind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind.3
-MLINKS+= ldap_bind.3 ldap_unbind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext_s.3
-MLINKS+= ldap_bind.3 ldap_set_rebind_proc.3
-MAN3+= ldap_compare.3
-MLINKS+= ldap_compare.3 ldap_compare_s.3
-MLINKS+= ldap_compare.3 ldap_compare_ext.3
-MLINKS+= ldap_compare.3 ldap_compare_ext_s.3
-MAN3+= ldap_delete.3
-MLINKS+= ldap_delete.3 ldap_delete_s.3
-MLINKS+= ldap_delete.3 ldap_delete_ext.3
-MLINKS+= ldap_delete.3 ldap_delete_ext_s.3
-MAN3+= ldap_error.3
-MLINKS+= ldap_error.3 ldap_perror.3
-MLINKS+= ldap_error.3 ld_errno.3
-MLINKS+= ldap_error.3 ldap_result2error.3
-MLINKS+= ldap_error.3 ldap_errlist.3
-MLINKS+= ldap_error.3 ldap_err2string.3
-MAN3+= ldap_first_attribute.3
-MLINKS+= ldap_first_attribute.3 ldap_next_attribute.3
-MAN3+= ldap_first_entry.3
-MLINKS+= ldap_first_entry.3 ldap_next_entry.3
-MLINKS+= ldap_first_entry.3 ldap_count_entries.3
-MAN3+= ldap_first_message.3
-MLINKS+= ldap_first_message.3 ldap_next_message.3
-MLINKS+= ldap_first_message.3 ldap_count_messages.3
-MAN3+= ldap_first_reference.3
-MLINKS+= ldap_first_reference.3 ldap_next_reference.3
-MLINKS+= ldap_first_reference.3 ldap_count_references.3
-MAN3+= ldap_get_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_rdn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ufn.3
-MLINKS+= ldap_get_dn.3 ldap_str2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2str.3
-MLINKS+= ldap_get_dn.3 ldap_dn2dcedn.3
-MLINKS+= ldap_get_dn.3 ldap_dcedn2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ad_canonical.3
-MAN3+= ldap_get_values.3
-MLINKS+= ldap_get_values.3 ldap_get_values_len.3
-MLINKS+= ldap_get_values.3 ldap_count_values.3
-MLINKS+= ldap_get_values.3 ldap_count_values_len.3
-MLINKS+= ldap_get_values.3 ldap_value_free.3
-MLINKS+= ldap_get_values.3 ldap_value_free_len.3
-MAN3+= ldap_modify.3
-MLINKS+= ldap_modify.3 ldap_modify_s.3
-MLINKS+= ldap_modify.3 ldap_modify_ext.3
-MLINKS+= ldap_modify.3 ldap_modify_ext_s.3
-MLINKS+= ldap_modify.3 ldap_mods_free.3
-MAN3+= ldap_open.3
-MLINKS+= ldap_open.3 ldap_init.3
-MAN3+= ldap_modrdn.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn_s.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2_s.3
-MAN3+= ldap_parse_reference.3
-MAN3+= ldap_parse_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_sasl_bind_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_extended_result.3
-MAN3+= ldap_result.3
-MLINKS+= ldap_result.3 ldap_msgfree.3
-MLINKS+= ldap_result.3 ldap_msgtype.3
-MLINKS+= ldap_result.3 ldap_msgid.3
-MAN3+= ldap_schema.3
-MLINKS+= ldap_schema.3 ldap_str2syntax.3
-MLINKS+= ldap_schema.3 ldap_syntax2str.3
-MLINKS+= ldap_schema.3 ldap_syntax2name.3
-MLINKS+= ldap_schema.3 ldap_syntax_free.3
-MLINKS+= ldap_schema.3 ldap_str2matchingrule.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2str.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2name.3
-MLINKS+= ldap_schema.3 ldap_matchingrule_free.3
-MLINKS+= ldap_schema.3 ldap_str2attributetype.3
-MLINKS+= ldap_schema.3 ldap_attributetype2str.3
-MLINKS+= ldap_schema.3 ldap_attributetype2name.3
-MLINKS+= ldap_schema.3 ldap_attributetype_free.3
-MLINKS+= ldap_schema.3 ldap_str2objectclass.3
-MLINKS+= ldap_schema.3 ldap_objectclass2str.3
-MLINKS+= ldap_schema.3 ldap_objectclass2name.3
-MLINKS+= ldap_schema.3 ldap_objectclass_free.3
-MLINKS+= ldap_schema.3 ldap_scherr2str.3
-MAN3+= ldap_search.3
-MLINKS+= ldap_search.3 ldap_search_s.3
-MLINKS+= ldap_search.3 ldap_search_st.3
-MLINKS+= ldap_search.3 ldap_search_ext.3
-MLINKS+= ldap_search.3 ldap_search_ext_s.3
-MAN3+= ldap_sort.3
-MLINKS+= ldap_sort.3 ldap_sort_entries.3
-MLINKS+= ldap_sort.3 ldap_sort_values.3
-MLINKS+= ldap_sort.3 ldap_sort_strcasecmp.3
-MAN3+= ldap_url.3
-MLINKS+= ldap_url.3 ldap_is_ldap_url.3
-MLINKS+= ldap_url.3 ldap_url_parse.3
-MLINKS+= ldap_url.3 ldap_free_urldesc.3
+.if defined(WITH_SLAPI)
+LIB_DEPENDS+= ltdl.4:${PORTSDIR}/devel/libltdl
+CONFIGURE_ARGS+= --enable-slapi
+LIBS+= -lltdl
+PLIST_SUB+= SLAPI=""
.else
-PLIST_SUB+= NO_CLIENTS="@comment "
+PLIST_SUB+= SLAPI="@comment "
.endif
-.if defined(BUILD_SLAPD)
-PLIST_SUB+= NO_SLAPD=
-MAN5+= ldap.conf.5
-MAN5+= ldif.5
-MAN5+= slapd-bdb.5
-MAN5+= slapd-dnssrv.5
-MAN5+= slapd-ldap.5
-MAN5+= slapd-ldbm.5
-MAN5+= slapd-meta.5
-MAN5+= slapd-null.5
-MAN5+= slapd-passwd.5
-MAN5+= slapd-perl.5
-MAN5+= slapd-shell.5
-MAN5+= slapd-sql.5
-MAN5+= slapd-tcl.5
-MAN5+= slapd.access.5
-MAN5+= slapd.conf.5
-MAN5+= slapd.replog.5
-MAN8+= slapadd.8
-MAN8+= slapcat.8
-MAN8+= slapd.8
-MAN8+= slapindex.8
-MAN8+= slappasswd.8
-.else
-PLIST_SUB+= NO_SLAPD="@comment "
+
+# Include tcp-wrapper support
+.if !defined(WITHOUT_TCP_WRAPPERS) && exists(/usr/include/tcpd.h)
+CONFIGURE_ARGS+= --enable-wrappers
.endif
-.if defined(BUILD_SLURPD)
-PLIST_SUB+= NO_SLUPRD=""
-MAN8+= slurpd.8
-.else
-PLIST_SUB+= NO_SLUPRD="@comment "
+
+PLIST_SUB+= SERVER=""
+SED_SCRIPT+= -e '/^%%SERVER%%/s,,,'
.endif
+PLIST_SUB+= LOCALSTATEDIR=${LOCALSTATEDIR} \
+ LDAP_RUN_DIR=${LDAP_RUN_DIR}
+
+# math.h uses _REENTRANT and stdio.h uses _THREAD_SAFE, so define both.
+CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
+ -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+CONFIGURE_TARGET= --host=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBS="${LIBS}"
+
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.pre.mk>
+.include "${FILESDIR}/manpages"
+
+pre-everything::
+ @${ECHO} "============================================================="
+ @${ECHO}
+ @${ECHO} "You can build ${PKGNAME} with the following options:"
+ @${ECHO}
+ @${ECHO} "WITH_BDB_VER select BerkeleyDB version (default 4.1)"
+ @${ECHO} "WITH_SASL with SASL2 authorization"
+ @${ECHO} "WITH_PERL with Perl backend"
+ @${ECHO} "WITH_SHELL with Shell backend"
+ @${ECHO} "WITH_ODBC with SQL backend"
+ @${ECHO} "WITH_SLAPI with Netscape SLAPI plugin API
+ @${ECHO} "WITHOUT_TCP_WRAPPERS without tcp wrapper support"
+ @${ECHO}
+ @${ECHO} "============================================================="
+ @${ECHO}
+
post-patch:
- @${CP} ${WRKSRC}/servers/slapd/slapd.conf \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist
- @${SED} -e '/^pidfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- -e '/^argsfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist > \
+ @${REINPLACE_CMD} -e 's,%LOCALSTATEDIR%/slapd\.,${LDAP_RUN_DIR}/slapd.,g' \
${WRKSRC}/servers/slapd/slapd.conf
post-build:
-.if defined(BUILD_SLAPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slapd.sh >${WRKDIR}/slapd.sh
-.endif
-.if defined(BUILD_SLURPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slurpd.sh >${WRKDIR}/slurpd.sh
-.endif
-
-do-install:
-.if defined(BUILD_CLIENTS) && defined (BUILD_SLAPD) && defined (BUILD_SLURPD)
- @cd ${WRKSRC} && ${MAKE} install
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.else
-.if defined(BUILD_CLIENTS)
- @cd ${WRKSRC}/include && ${MAKE} install
- @cd ${WRKSRC}/clients && ${MAKE} install
- @cd ${WRKSRC}/libraries && ${MAKE} install
-.for i in 1 3
- @cd ${WRKSRC}/doc/man/man$i && ${MAKE} install
+.for script in slapd.sh slurpd.sh
+ @${SED} ${SED_SCRIPT} ${FILESDIR}/${script} >${WRKDIR}/${script}
+.endfor
+.for text in pkg-install pkg-message
+ @${SED} ${SED_SCRIPT} ${.CURDIR}/${text} >${WRKDIR}/${text}
.endfor
-.endif
-.if defined(BUILD_SLAPD)
- @cd ${WRKSRC}/servers/slapd && ${MAKE} install
- @cd ${WRKSRC}/doc/man/man5 && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapadd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapcat.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapindex.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slappasswd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${MKDIR} /var/db
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
-.endif
-.if defined(BUILD_SLURPD)
- @cd ${WRKSRC}/servers/slurpd && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slurpd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${INSTALL_TARGET} -c -o root -g wheel -m 700 -d /var/db/openldap-slurp
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.endif
-.endif
post-install:
-.if defined(BUILD_SLAPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${PREFIX}/etc/rc.d/slapd.sh.sample
-.endif
-.if defined(BUILD_SLURPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d/slurpd.sh.sample
-.endif
+.if !defined(CLIENT_ONLY)
+ @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d
+ @${MKDIR} ${LDAP_RUN_DIR}
+.endif
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @for dir in rfc drafts; do \
+ ${MKDIR} ${DOCSDIR}/$${dir}; \
+ ${FIND} ${WRKSRC}/doc/$${dir} -maxdepth 1 -type f \
+ -exec ${INSTALL_DATA} {} ${DOCSDIR}/$${dir} \; -print \
+ | ${SED} -e "s,^${WRKSRC}/doc/,${DOCSDIR:S,^${PREFIX}/,,}/," \
+ >>${TMPPLIST}; \
+ ${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}/$${dir}" >>${TMPPLIST}; \
+ done
+ @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >>${TMPPLIST}
+.endif
+ @${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>
diff --git a/net/openldap22-server/distinfo b/net/openldap22-server/distinfo
index 341a1c1cc0ca..eef25e637b2e 100644
--- a/net/openldap22-server/distinfo
+++ b/net/openldap22-server/distinfo
@@ -1,2 +1 @@
-MD5 (openldap-stable-20030410.tgz) = 53fb6c157a7c54b988cf7555e56f11e6
-MD5 (openldap-2.1.20.tgz) = fe6d5f8571672e3107b42299a03e92ce
+MD5 (openldap-2.2.0alpha.tgz) = 72fe342067b717a37b9697898dacfa0a
diff --git a/net/openldap22-server/files/manpages b/net/openldap22-server/files/manpages
new file mode 100644
index 000000000000..d3830d3afa8b
--- /dev/null
+++ b/net/openldap22-server/files/manpages
@@ -0,0 +1,188 @@
+MAN1+= ldapcompare.1 \
+ ldapdelete.1 \
+ ldapmodify.1 \
+ ldapmodrdn.1 \
+ ldappasswd.1 \
+ ldapsearch.1 \
+ ldapwhoami.1
+MLINKS+= \
+ ldapmodify.1 ldapadd.1
+
+MAN3+= lber-decode.3 \
+ lber-encode.3 \
+ lber-memory.3 \
+ lber-types.3 \
+ ldap.3 \
+ ldap_abandon.3 \
+ ldap_add.3 \
+ ldap_bind.3 \
+ ldap_compare.3 \
+ ldap_delete.3 \
+ ldap_error.3 \
+ ldap_first_attribute.3 \
+ ldap_first_entry.3 \
+ ldap_first_message.3 \
+ ldap_first_reference.3 \
+ ldap_get_dn.3 \
+ ldap_get_values.3 \
+ ldap_modify.3 \
+ ldap_modrdn.3 \
+ ldap_open.3 \
+ ldap_parse_reference.3 \
+ ldap_parse_result.3 \
+ ldap_result.3 \
+ ldap_schema.3 \
+ ldap_search.3 \
+ ldap_sort.3 \
+ ldap_url.3
+MLINKS+= \
+ lber-decode.3 ber_first_element.3 \
+ lber-decode.3 ber_get_bitstring.3 \
+ lber-decode.3 ber_get_boolean.3 \
+ lber-decode.3 ber_get_enum.3 \
+ lber-decode.3 ber_get_int.3 \
+ lber-decode.3 ber_get_next.3 \
+ lber-decode.3 ber_get_null.3 \
+ lber-decode.3 ber_get_stringa.3 \
+ lber-decode.3 ber_get_stringb.3 \
+ lber-decode.3 ber_next_element.3 \
+ lber-decode.3 ber_peek_tag.3 \
+ lber-decode.3 ber_scanf.3 \
+ lber-decode.3 ber_skip_tag.3 \
+ lber-encode.3 ber_alloc_t.3 \
+ lber-encode.3 ber_flush.3 \
+ lber-encode.3 ber_printf.3 \
+ lber-encode.3 ber_put_enum.3 \
+ lber-encode.3 ber_put_int.3 \
+ lber-encode.3 ber_put_null.3 \
+ lber-encode.3 ber_put_ostring.3 \
+ lber-encode.3 ber_put_seq.3 \
+ lber-encode.3 ber_put_set.3 \
+ lber-encode.3 ber_put_string.3 \
+ lber-encode.3 ber_start_set.3 \
+ lber-types.3 ber_bvarray_add.3 \
+ lber-types.3 ber_bvarray_free.3 \
+ lber-types.3 ber_bvdup.3 \
+ lber-types.3 ber_bvecadd.3 \
+ lber-types.3 ber_bvecfree.3 \
+ lber-types.3 ber_bvfree.3 \
+ lber-types.3 ber_bvstr.3 \
+ lber-types.3 ber_bvstrdup.3 \
+ lber-types.3 ber_dupbv.3 \
+ lber-types.3 ber_free.3 \
+ lber-types.3 ber_str2bv.3 \
+ ldap_abandon.3 ldap_abandon_ext.3 \
+ ldap_add.3 ldap_add_ext.3 \
+ ldap_add.3 ldap_add_ext_s.3 \
+ ldap_add.3 ldap_add_s.3 \
+ ldap_bind.3 ldap_bind_s.3 \
+ ldap_bind.3 ldap_kerberos_bind1.3 \
+ ldap_bind.3 ldap_kerberos_bind1_s.3 \
+ ldap_bind.3 ldap_kerberos_bind2.3 \
+ ldap_bind.3 ldap_kerberos_bind2_s.3 \
+ ldap_bind.3 ldap_kerberos_bind_s.3 \
+ ldap_bind.3 ldap_sasl_bind.3 \
+ ldap_bind.3 ldap_sasl_bind_s.3 \
+ ldap_bind.3 ldap_simple_bind.3 \
+ ldap_bind.3 ldap_simple_bind_s.3 \
+ ldap_bind.3 ldap_unbind.3 \
+ ldap_bind.3 ldap_unbind_ext.3 \
+ ldap_bind.3 ldap_unbind_ext_s.3 \
+ ldap_bind.3 ldap_unbind_s.3 \
+ ldap_compare.3 ldap_compare_ext.3 \
+ ldap_compare.3 ldap_compare_ext_s.3 \
+ ldap_compare.3 ldap_compare_s.3 \
+ ldap_delete.3 ldap_delete_ext.3 \
+ ldap_delete.3 ldap_delete_ext_s.3 \
+ ldap_delete.3 ldap_delete_s.3 \
+ ldap_error.3 ld_errno.3 \
+ ldap_error.3 ldap_err2string.3 \
+ ldap_error.3 ldap_errlist.3 \
+ ldap_error.3 ldap_perror.3 \
+ ldap_error.3 ldap_result2error.3 \
+ ldap_first_attribute.3 ldap_next_attribute.3 \
+ ldap_first_entry.3 ldap_count_entries.3 \
+ ldap_first_entry.3 ldap_next_entry.3 \
+ ldap_first_message.3 ldap_count_messages.3 \
+ ldap_first_message.3 ldap_next_message.3 \
+ ldap_first_reference.3 ldap_count_references.3 \
+ ldap_first_reference.3 ldap_next_reference.3 \
+ ldap_get_dn.3 ldap_dcedn2dn.3 \
+ ldap_get_dn.3 ldap_dn2ad_canonical.3 \
+ ldap_get_dn.3 ldap_dn2dcedn.3 \
+ ldap_get_dn.3 ldap_dn2str.3 \
+ ldap_get_dn.3 ldap_dn2ufn.3 \
+ ldap_get_dn.3 ldap_explode_dn.3 \
+ ldap_get_dn.3 ldap_explode_rdn.3 \
+ ldap_get_dn.3 ldap_str2dn.3 \
+ ldap_get_values.3 ldap_count_values.3 \
+ ldap_get_values.3 ldap_count_values_len.3 \
+ ldap_get_values.3 ldap_get_values_len.3 \
+ ldap_get_values.3 ldap_value_free.3 \
+ ldap_get_values.3 ldap_value_free_len.3 \
+ ldap_modify.3 ldap_modify_ext.3 \
+ ldap_modify.3 ldap_modify_ext_s.3 \
+ ldap_modify.3 ldap_modify_s.3 \
+ ldap_modify.3 ldap_mods_free.3 \
+ ldap_modrdn.3 ldap_modrdn2.3 \
+ ldap_modrdn.3 ldap_modrdn2_s.3 \
+ ldap_modrdn.3 ldap_modrdn_s.3 \
+ ldap_open.3 ldap_init.3 \
+ ldap_parse_result.3 ldap_parse_extended_result.3 \
+ ldap_parse_result.3 ldap_parse_sasl_bind_result.3 \
+ ldap_result.3 ldap_msgfree.3 \
+ ldap_result.3 ldap_msgid.3 \
+ ldap_result.3 ldap_msgtype.3 \
+ ldap_schema.3 ldap_attributetype2name.3 \
+ ldap_schema.3 ldap_attributetype2str.3 \
+ ldap_schema.3 ldap_attributetype_free.3 \
+ ldap_schema.3 ldap_matchingrule2name.3 \
+ ldap_schema.3 ldap_matchingrule2str.3 \
+ ldap_schema.3 ldap_matchingrule_free.3 \
+ ldap_schema.3 ldap_objectclass2name.3 \
+ ldap_schema.3 ldap_objectclass2str.3 \
+ ldap_schema.3 ldap_objectclass_free.3 \
+ ldap_schema.3 ldap_scherr2str.3 \
+ ldap_schema.3 ldap_str2attributetype.3 \
+ ldap_schema.3 ldap_str2matchingrule.3 \
+ ldap_schema.3 ldap_str2objectclass.3 \
+ ldap_schema.3 ldap_str2syntax.3 \
+ ldap_schema.3 ldap_syntax2name.3 \
+ ldap_schema.3 ldap_syntax2str.3 \
+ ldap_schema.3 ldap_syntax_free.3 \
+ ldap_search.3 ldap_search_ext.3 \
+ ldap_search.3 ldap_search_ext_s.3 \
+ ldap_search.3 ldap_search_s.3 \
+ ldap_search.3 ldap_search_st.3 \
+ ldap_sort.3 ldap_sort_entries.3 \
+ ldap_sort.3 ldap_sort_strcasecmp.3 \
+ ldap_sort.3 ldap_sort_values.3 \
+ ldap_url.3 ldap_free_urldesc.3 \
+ ldap_url.3 ldap_is_ldap_url.3 \
+ ldap_url.3 ldap_url_parse.3
+
+MAN5+= ldap.conf.5 \
+ ldif.5 \
+ slapd-bdb.5 \
+ slapd-dnssrv.5 \
+ slapd-ldap.5 \
+ slapd-ldbm.5 \
+ slapd-meta.5 \
+ slapd-monitor.5 \
+ slapd-null.5 \
+ slapd-passwd.5 \
+ slapd-perl.5 \
+ slapd-shell.5 \
+ slapd-sql.5 \
+ slapd-tcl.5 \
+ slapd.access.5 \
+ slapd.conf.5 \
+ slapd.plugin.5 \
+ slapd.replog.5
+
+MAN8+= slapadd.8 \
+ slapcat.8 \
+ slapd.8 \
+ slapindex.8 \
+ slappasswd.8 \
+ slurpd.8
diff --git a/net/openldap22-server/files/patch-build::ltmain.sh b/net/openldap22-server/files/patch-build::ltmain.sh
new file mode 100644
index 000000000000..502d6b5db739
--- /dev/null
+++ b/net/openldap22-server/files/patch-build::ltmain.sh
@@ -0,0 +1,15 @@
+--- build/ltmain.sh.orig Sun Feb 9 23:24:29 2003
++++ build/ltmain.sh Fri Jun 20 21:37:02 2003
+@@ -4285,12 +4285,6 @@
+ IFS="$save_ifs"
+ fi
+
+- # Install the pseudo-library for information purposes.
+- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+- instname="$dir/$name"i
+- $show "$install_prog $instname $destdir/$name"
+- $run eval "$install_prog $instname $destdir/$name" || exit $?
+-
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
diff --git a/net/openldap22-server/files/patch-libraries::liblutil::passwd.c b/net/openldap22-server/files/patch-libraries::liblutil::passwd.c
new file mode 100644
index 000000000000..32de74e9ee11
--- /dev/null
+++ b/net/openldap22-server/files/patch-libraries::liblutil::passwd.c
@@ -0,0 +1,14 @@
+#
+# ITS#2562: add missing arg to hash_lanman
+#
+--- libraries/liblutil/passwd.c.orig Fri May 2 13:29:29 2003
++++ libraries/liblutil/passwd.c Sun Jun 22 03:08:18 2003
+@@ -632,7 +632,7 @@
+ {
+ struct berval *hash;
+
+- hash = hash_lanman( scheme, cred );
++ hash = hash_lanman( scheme, cred, text );
+ return memcmp( &hash->bv_val[scheme->bv_len], passwd->bv_val, 32);
+ }
+ #endif /* SLAPD_LMHASH */
diff --git a/net/openldap22-server/files/patch-servers::slapd::daemon.c b/net/openldap22-server/files/patch-servers::slapd::daemon.c
new file mode 100644
index 000000000000..96afa46ebd8a
--- /dev/null
+++ b/net/openldap22-server/files/patch-servers::slapd::daemon.c
@@ -0,0 +1,11 @@
+--- servers/slapd/daemon.c.orig Sat May 24 21:12:20 2003
++++ servers/slapd/daemon.c Sun Jun 22 19:26:22 2003
+@@ -858,7 +858,7 @@
+ #ifdef LDAP_PF_LOCAL
+ case AF_LOCAL: {
+ char *addr = ((struct sockaddr_un *)*sal)->sun_path;
+-#if 0 /* don't muck with socket perms */
++#if 1
+ if ( chmod( addr, l.sl_perms ) < 0 && crit ) {
+ int err = sock_errno();
+ #ifdef NEW_LOGGING
diff --git a/net/openldap22-server/files/slapd.sh b/net/openldap22-server/files/slapd.sh
index e8f6ed6b018d..21bdf775a0b1 100644
--- a/net/openldap22-server/files/slapd.sh
+++ b/net/openldap22-server/files/slapd.sh
@@ -2,44 +2,57 @@
#
# $FreeBSD$
-slapd_program=@@PREFIX@@/libexec/slapd
+slapd_program=%%PREFIX%%/libexec/slapd
-# Uncomment one of the following:
-#
-# IPv4 Only
-#slapd_args='-u ldap -g ldap -h ldap://0.0.0.0'
+slapd_pidfile=%%LDAP_RUN_DIR%%/slapd.pid
+
+slapd_enable="NO"
+
+slapd_args=
+
+# Add the following lines to /etc/rc.conf to enable slapd:
#
-# IPv6 and IPv4
-#slapd_ags='-u ldap -g ldap -h "ldap://[::] ldap://0.0.0.0"'
+#slapd_enable="YES"
+#slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
#
-# IPv6 Only
-#slapd_args='-u ldap -g ldap -h ldap://[::]'
+# See sldap(8) for details
#
+# Create a user 'ldap' and add '-u ldap -g ldap' to slapd_args
+# if you want to run slapd as a non-privileged user (recommended)
#
-slapd_args="-u ldap -g ldap"
-
-pidfile=/var/run/ldap/slapd.pid
-case "$1" in
-start)
- if [ -x $slapd ]; then
- echo -n ' slapd'
- eval ${slapd_program} ${slapd_args}
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
- fi
- ;;
-stop)
- if [ -f $pidfile ]; then
- kill `cat $pidfile`
- echo -n ' slapd'
- rm $pidfile
- else
- echo ' slapd: not running'
- fi
+case "$slapd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slapd_program} ]; then
+ echo -n ' slapd'
+ eval ${slapd_program} ${slapd_args}
+ fi
+ ;;
+ stop)
+ if [ -f $slapd_pidfile ]; then
+ kill `cat $slapd_pidfile`
+ echo -n ' slapd'
+ else
+ echo ' slapd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
;;
esac
diff --git a/net/openldap22-server/files/slurpd.sh b/net/openldap22-server/files/slurpd.sh
index 9f347253a5d6..fc9f88f21cd6 100644
--- a/net/openldap22-server/files/slurpd.sh
+++ b/net/openldap22-server/files/slurpd.sh
@@ -1,34 +1,50 @@
#!/bin/sh
#
# $FreeBSD$
+
+slurpd_program=%%PREFIX%%/libexec/slurpd
+
+slurpd_enable="NO"
+
+slurpd_args=
+
+# Add the following line to /etc/rc.conf to enable slurpd:
+#
+#slurpd_enable="YES"
+#
+# See slurpd(8) for details
#
-slurpd=@@PREFIX@@/libexec/slurpd
-pidfile=/var/run/ldap/slurpd.pid
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
-case "$1" in
-start)
- if [ -x $slurpd ]; then
- echo -n ' slurpd'
- $slurpd &
- echo $! > $pidfile
- fi
- ;;
-stop)
- pids=`ps xa | awk '/slurpd/{ print $1 }'`
- for pid in $pids; do
- kill $pid
- echo -n " slurpd($pid)"
- done
- ;;
-restart)
- $0 stop
- $0 start
- ;;
+case "$slurpd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slurpd_program} ]; then
+ echo -n ' slurpd'
+ ${slurpd_program} ${slurpd_args}
+ fi
+ ;;
+ stop)
+ if ! killall `basename ${slurpd_program}`; then
+ echo ' slurpd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
+ ;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
- ;;
+ ;;
esac
exit 0
diff --git a/net/openldap22-server/pkg-descr b/net/openldap22-server/pkg-descr
index d582b6305fad..432cb85b0400 100644
--- a/net/openldap22-server/pkg-descr
+++ b/net/openldap22-server/pkg-descr
@@ -1,10 +1,15 @@
-OpenLDAP is a suite of Lightweight Directory Access Protocol(LDAP)
-servers, clients, utilities and development tools.
+OpenLDAP is a suite of Lightweight Directory Access Protocol (v3) servers,
+clients, utilities and development tools.
-OpenLDAP is derived from the University of Michigan LDAP release 3.3
-and is distributed under an open source license.
+This release includes the following major components:
-WWW: http://www.openldap.org/
+ * slapd - a stand-alone LDAP directory server
+ * slurpd - a stand-alone LDAP replication server
+ * -lldap - a LDAP client library
+ * -llber - a lightweight BER/DER encoding/decoding library
+ * LDIF tools - data conversion tools for use with slapd
+ * LDAP tools - A collection of command line LDAP utilities
-Bjoern A. Zeeb
-bzeeb+freebsdports@zabbadoz.net
+WWW: http://www.OpenLDAP.org/
+
+Lachlan O'Dea, Oliver Eikemeier
diff --git a/net/openldap22-server/pkg-install b/net/openldap22-server/pkg-install
index 76c6c8ff1b31..86dae2ce74da 100644
--- a/net/openldap22-server/pkg-install
+++ b/net/openldap22-server/pkg-install
@@ -1,52 +1,11 @@
#!/bin/sh
#
-# $FreeBSD$
+# $FreeBSD$
#
-
-PKG_PREFIX=${PKG_PREFIX:=/usr/local}
-BATCH=${BATCH:=no}
-
-USER=ldap
-USER_UID=389
-
-GROUP=ldap
-GROUP_GID=389
-
-if [ x"$2" = xPRE-INSTALL ]; then
- if /usr/sbin/pw groupshow "${GROUP}" 2>/dev/null; then
- echo "You already have a group \"${GROUP}\", so I will use it."
- else
- if /usr/sbin/pw groupadd ${GROUP} -g ${GROUP_GID} -h -
- then
- echo "Added group \"${GROUP}\"."
- else
- echo "Adding group \"${GROUP}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-
- if /usr/sbin/pw user show "${USER}" 2>/dev/null; then
- echo "You already have a user \"${USER}\", so I will use it."
- else
- if /usr/sbin/pw useradd ${USER} -u ${USER_UID} -g ${GROUP} -h - \
- -d /nonexistent \
- -s /sbin/nologin \
- -c "OpenLDAP Server"
- then
- echo "Added user \"${USER}\"."
- else
- echo "Adding user \"${USER}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-fi
-
-if [ x"$2" = xPOST-INSTALL ]; then
- chown -R $USER:$GROUP /var/db/openldap-data
- chown -R $USER:$GROUP /var/run/ldap
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf.default
+if [ X"$2" != X"POST-INSTALL" ]; then
+ exit 0;
fi
+%%SERVER%%mkdir -p "%%LDAP_RUN_DIR%%"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-data"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-slurp"
diff --git a/net/openldap22-server/pkg-message b/net/openldap22-server/pkg-message
index dce1c78534b1..fa99c9a88dd8 100644
--- a/net/openldap22-server/pkg-message
+++ b/net/openldap22-server/pkg-message
@@ -1,8 +1,30 @@
-The openldap21 port now creates a ldap user an a ldap group.
+************************************************************
-If you use slapadd as root to populate your ldap Database please
-remember to chown the database directories and containing files
-to user ldap and group ldap.
+The OpenLDAP package has been successfully installed.
- chown -R ldap:ldap /var/db/openldap-data
+Edit
+ %%PREFIX%%/etc/openldap/ldap.conf
+to change the system-wide client defaults.
+%%SERVER%%In order to run the OpenLDAP server, you need to edit
+%%SERVER%% %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%to suit your needs and add the next lines to /etc/rc.conf:
+%%SERVER%% slapd_enable="YES"
+%%SERVER%% slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
+%%SERVER%%
+%%SERVER%%Then start the server with
+%%SERVER%% %%PREFIX%%/etc/rc.d/slapd.sh start
+%%SERVER%%or reboot.
+%%SERVER%%
+%%SERVER%%NOTE: There is no real reason to run slapd as root. Add
+%%SERVER%% '-u ldap -g ldap'
+%%SERVER%%to slapd_args, create a user "ldap" with
+%%SERVER%% pw add group ldap -g 389
+%%SERVER%% pw add user ldap -u 389 -g 389 -d /nonexistent \
+%%SERVER%% -c "OpenLDAP Server" -s /sbin/nologin -p "*"
+%%SERVER%%and do
+%%SERVER%% chown -R ldap:ldap %%LDAP_RUN_DIR%% \
+%%SERVER%% %%LOCALSTATEDIR%%/openldap-data %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%and your server runs with a non-privileged user id.
+%%SERVER%%
+************************************************************
diff --git a/net/openldap22-server/pkg-plist b/net/openldap22-server/pkg-plist
index 6be84f593b88..ff9ec200b978 100644
--- a/net/openldap22-server/pkg-plist
+++ b/net/openldap22-server/pkg-plist
@@ -1,97 +1,83 @@
-@comment -----------------------------------------
-@comment BUILD_CLIENTS
-@comment -----------------------------------------
-%%NO_CLIENTS%%bin/ldapadd
-%%NO_CLIENTS%%bin/ldapcompare
-%%NO_CLIENTS%%bin/ldapdelete
-%%NO_CLIENTS%%bin/ldapmodify
-%%NO_CLIENTS%%bin/ldapmodrdn
-%%NO_CLIENTS%%bin/ldappasswd
-%%NO_CLIENTS%%bin/ldapsearch
-%%NO_CLIENTS%%bin/ldapwhoami
-%%NO_CLIENTS%%@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
-%%NO_CLIENTS%%etc/openldap/ldap.conf.default
-%%NO_CLIENTS%%@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
-@comment
-%%NO_CLIENTS%%include/lber.h
-%%NO_CLIENTS%%include/lber_types.h
-%%NO_CLIENTS%%include/ldap.h
-%%NO_CLIENTS%%include/ldap_cdefs.h
-%%NO_CLIENTS%%include/ldap_features.h
-%%NO_CLIENTS%%include/ldap_schema.h
-%%NO_CLIENTS%%include/ldap_utf8.h
-@comment
-%%NO_CLIENTS%%lib/liblber.a
-%%NO_CLIENTS%%lib/liblber.so
-%%NO_CLIENTS%%lib/liblber.so.2
-%%NO_CLIENTS%%lib/libldap.a
-%%NO_CLIENTS%%lib/libldap.so
-%%NO_CLIENTS%%lib/libldap.so.2
-%%NO_CLIENTS%%lib/libldap_r.a
-%%NO_CLIENTS%%lib/libldap_r.so
-%%NO_CLIENTS%%lib/libldap_r.so.2
-@comment using USE_LIBTOOL make openldap to no longer to compile, so intall these 3 :(
-%%NO_CLIENTS%%lib/liblber.la
-%%NO_CLIENTS%%lib/libldap.la
-%%NO_CLIENTS%%lib/libldap_r.la
-@comment
-%%NO_CLIENTS%%share/openldap/ucdata/case.dat
-%%NO_CLIENTS%%share/openldap/ucdata/cmbcl.dat
-%%NO_CLIENTS%%share/openldap/ucdata/comp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/ctype.dat
-%%NO_CLIENTS%%share/openldap/ucdata/decomp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/num.dat
-%%NO_CLIENTS%%share/openldap/ucdata/kdecomp.dat
-%%NO_CLIENTS%%@dirrm share/openldap/ucdata
-%%NO_CLIENTS%%@dirrm share/openldap
-@comment -----------------------------------------
-@comment BUILD_SLURPD
-@comment -----------------------------------------
-%%NO_SLUPRD%%etc/rc.d/slurpd.sh.sample
-%%NO_SLUPRD%%libexec/slurpd
-%%NO_SLUPRD%%@exec [ -d /var/db/openldap-slurp ] || /bin/mkdir /var/db/openldap-slurp
-%%NO_SLUPRD%%@unexec /bin/rmdir /var/db/openldap-slurp 2>/dev/null || true
-@comment
-@comment -----------------------------------------
-@comment BUILD_SLAPD
-@comment -----------------------------------------
-%%NO_SLAPD%%etc/rc.d/slapd.sh.sample
-%%NO_SLAPD%%libexec/slapd
-%%NO_SLAPD%%sbin/slapadd
-%%NO_SLAPD%%sbin/slapcat
-%%NO_SLAPD%%sbin/slapindex
-%%NO_SLAPD%%sbin/slappasswd
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
-%%NO_SLAPD%%etc/openldap/slapd.conf.default
-%%NO_SLAPD%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/README
-%%NO_SLAPD%%etc/openldap/schema/corba.schema.default
-%%NO_SLAPD%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/core.schema.default
-%%NO_SLAPD%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/cosine.schema.default
-%%NO_SLAPD%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/inetorgperson.schema.default
-%%NO_SLAPD%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/java.schema.default
-%%NO_SLAPD%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/misc.schema.default
-%%NO_SLAPD%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/nis.schema.default
-%%NO_SLAPD%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/openldap.schema.default
-%%NO_SLAPD%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/db/openldap-data ] || /bin/mkdir /var/db/openldap-data
-%%NO_SLAPD%%@unexec /bin/rmdir /var/db/openldap-data 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/run/ldap ] || /bin/mkdir /var/run/ldap
-%%NO_SLAPD%%@unexec /bin/rmdir /var/run/ldap 2>/dev/null || true
+bin/ldapadd
+bin/ldapcompare
+bin/ldapdelete
+bin/ldapmodify
+bin/ldapmodrdn
+bin/ldappasswd
+bin/ldapsearch
+bin/ldapwhoami
+%%SERVER%%@unexec %D/etc/rc.d/slapd.sh stop 2>/dev/null || true
+%%SERVER%%@unexec %D/etc/rc.d/slurpd.sh stop 2>/dev/null || true
+@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
+etc/openldap/ldap.conf.default
+@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
+%%SERVER%%etc/openldap/schema/README
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
+%%SERVER%%etc/openldap/schema/corba.schema.default
+%%SERVER%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
+%%SERVER%%etc/openldap/schema/core.schema.default
+%%SERVER%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
+%%SERVER%%etc/openldap/schema/cosine.schema.default
+%%SERVER%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
+%%SERVER%%etc/openldap/schema/inetorgperson.schema.default
+%%SERVER%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
+%%SERVER%%etc/openldap/schema/java.schema.default
+%%SERVER%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
+%%SERVER%%etc/openldap/schema/misc.schema.default
+%%SERVER%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
+%%SERVER%%etc/openldap/schema/nis.schema.default
+%%SERVER%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
+%%SERVER%%etc/openldap/schema/openldap.schema.default
+%%SERVER%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
+%%SERVER%%etc/openldap/slapd.conf.default
+%%SERVER%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
+%%SERVER%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
+@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
+%%SERVER%%etc/rc.d/slapd.sh
+%%SERVER%%etc/rc.d/slurpd.sh
+include/lber.h
+include/lber_types.h
+include/ldap.h
+include/ldap_cdefs.h
+include/ldap_features.h
+include/ldap_schema.h
+include/ldap_utf8.h
+include/slapi-plugin.h
+lib/liblber.a
+lib/liblber.so
+lib/liblber.so.2
+lib/libldap.a
+lib/libldap.so
+lib/libldap.so.2
+lib/libldap_r.a
+lib/libldap_r.so
+lib/libldap_r.so.2
+%%SLAPI%%lib/libslapi.a
+%%SLAPI%%lib/libslapi.so
+%%SLAPI%%lib/libslapi.so.2
+%%SERVER%%libexec/slapd
+%%SERVER%%libexec/slurpd
+%%SERVER%%sbin/slapadd
+%%SERVER%%sbin/slapcat
+%%SERVER%%sbin/slapindex
+%%SERVER%%sbin/slappasswd
+share/openldap/ucdata/case.dat
+share/openldap/ucdata/cmbcl.dat
+share/openldap/ucdata/comp.dat
+share/openldap/ucdata/ctype.dat
+share/openldap/ucdata/decomp.dat
+share/openldap/ucdata/kdecomp.dat
+share/openldap/ucdata/num.dat
+@dirrm share/openldap/ucdata
+@dirrm share/openldap
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-slurp 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-data 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LDAP_RUN_DIR%% 2>/dev/null || true
diff --git a/net/openldap22/Makefile b/net/openldap22/Makefile
index fa44a42c5fd8..5b6c9d83f226 100644
--- a/net/openldap22/Makefile
+++ b/net/openldap22/Makefile
@@ -1,26 +1,12 @@
-# New ports collection makefile for: OpenLDAP 2.1
-# Date created: 5 Dec 2002
-# Whom: Christian Kratzer <ck@cksoft.de>
-#
-# This port allows separation of the openldap client and servers
-# using following options
-#
-# default builds openldap21-PORTVERSION
-# CLIENT_ONLY builds openldap21-client-PORTVERSION (clients and libs)
-# SLAPD_ONLY builds openldap21-slapd-PORTVERSION (slapd and slapd tools)
-# SLURPD_ONLY builds openldap21-slurpd-PORTVERSION (slurpd only)
-# SERVERS_ONLY builds openldap21-servers-PORTVERSION (slapd and slurpd)
-# WITHOUT_SASL do not build against sasl2
-#
-# OPENLDAP_STABLE an attempt to track the openldap stable branch
-# It remains to be seen if this stays practical.
+# New ports collection makefile for: OpenLDAP 2.2
+# Date created: 20 Sep 1998
+# Whom: Lachlan O'Dea
#
# $FreeBSD$
#
-PORTNAME= openldap21
-PORTVERSION= 2.1.20
-PORTREVISION= 1
+PORTNAME= openldap
+PORTVERSION= ${OPENLDAP_VERSION}.a
CATEGORIES= net databases
MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
http://public.planetmirror.com/pub/openldap/%SUBDIR%/ \
@@ -34,427 +20,177 @@ MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
ftp://ftp.linux.pt/pub/mirrors/OpenLDAP/%SUBDIR%/ \
ftp://ftp.si.uniovi.es/mirror/OpenLDAP/%SUBDIR%/ \
ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/%SUBDIR%/ \
+ http://openldap.cdpa.nsysu.edu.tw/OpenLDAP/%SUBDIR%/ \
+ ftp://ftp.u-aizu.ac.jp/pub/net/openldap/%SUBDIR%/ \
ftp://ftp.plig.org/pub/OpenLDAP/%SUBDIR%/
-.if defined(OPENLDAP_STABLE)
-MASTER_SITE_SUBDIR= openldap-stable
-DISTNAME= openldap-stable-20030410
-PKGNAMESUFFIX= -stable
-WRKSRC= ${WRKDIR}/openldap-${PORTVERSION}
-.else
-MASTER_SITE_SUBDIR= openldap-release
-DISTNAME= openldap-${PORTVERSION}
-.endif
+MASTER_SITE_SUBDIR= openldap-test
+DISTNAME= openldap-${OPENLDAP_VERSION}alpha
EXTRACT_SUFX= .tgz
-MAINTAINER= ck@cksoft.de
-COMMENT= Open source LDAP client and server software
+MAINTAINER= eikemeier@fillmore-labs.com
+COMMENT= Open source LDAP client and server implementation
-LIB_DEPENDS+= db41:${PORTSDIR}/databases/db41
+OPENLDAP_VERSION= 2.2.0
-CXXFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+CONFLICTS= openldap*
-CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+LATEST_LINK= openldap2
-LDFLAGS+= -L${LOCALBASE}/lib
+USE_OPENSSL= yes
+USE_REINPLACE= yes
+USE_LIBTOOL_VER= 14
-USE_OPENSSL= yes
-HAS_CONFIGURE= yes
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGMESSAGE= ${WRKDIR}/pkg-message
-CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}"
+LOCALSTATEDIR?= /var/db
+LDAP_RUN_DIR?= /var/run/openldap
-CONFIGURE_ARGS+=--prefix=${PREFIX} \
- --enable-bdb \
- --enable-crypt
+WITH_BDB_VER?= 41
-.if defined(WITHOUT_SASL)
-CONFIGURE_ARGS+= \
- --without-cyrus-sasl
-.else
-LIB_DEPENDS+= sasl2:${PORTSDIR}/security/cyrus-sasl2
-CONFIGURE_ARGS+= \
- --with-cyrus-sasl \
- --enable-spasswd
-.endif
+CONFIGURE_ARGS= --with-threads \
+ --with-tls=openssl
-# ------------------------------------------------------------------------------
-# common configure
-#
-CONFIGURE_ARGS+= \
- --with-tls \
- --localstatedir=/var/db
+SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
+ -e 's,%%LDAP_RUN_DIR%%,${LDAP_RUN_DIR},g' \
+ -e 's,%%LOCALSTATEDIR%%,${LOCALSTATEDIR},g'
-# Include tcp-wrapper support
-.if exists(/usr/include/tcpd.h)
-CONFIGURE_ARGS+= --enable-wrappers
+.if defined(CLIENT_ONLY)
+PKGNAMESUFFIX= -client
+CONFIGURE_ARGS+= --disable-slapd
+PLIST_SUB+= SERVER="@comment " \
+ SLAPI="@comment "
+SED_SCRIPT+= -e '/^%%SERVER%%/d'
+.else
+CONFIGURE_ARGS+= --localstatedir=${LOCALSTATEDIR} \
+ --enable-lmpasswd \
+ --enable-ldbm \
+ --with-ldbm-api=berkeley \
+ --enable-ldap \
+ --enable-meta \
+ --enable-rewrite \
+ --enable-null \
+ --enable-monitor
+
+.if ${WITH_BDB_VER} == 41
+LIB_DEPENDS= db41.1:${PORTSDIR}/databases/db41
+CONFIGURE_ARGS+= --enable-bdb
+.elif ${WITH_BDB_VER} == 4
+LIB_DEPENDS= db4.0:${PORTSDIR}/databases/db4
+CONFIGURE_ARGS+= --disable-bdb
+.elif ${WITH_BDB_VER} == 3
+LIB_DEPENDS= db3.3:${PORTSDIR}/databases/db3
+CONFIGURE_ARGS+= --disable-bdb
+.else
+.error WITH_BDB_VER must be 3, 4 or 41
.endif
+LIBS+= -ldb${WITH_BDB_VER}
+CPPFLAGS+= -I${LOCALBASE}/include/db${WITH_BDB_VER}
-.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 400014
-CONFIGURE_ARGS+= --enable-ipv6
+.if defined(WITH_SHELL)
+CONFIGURE_ARGS+= --enable-shell
.endif
-.if defined(CLIENT_ONLY)
-# ------------------------------------------------------------------------------
-# libraries and client applications only
-#
-BUILD_CLIENTS= yes
-INSTALLS_SHLIB= yes
-PKGNAMESUFFIX= -client
-COMMENT= Open source LDAP client software
-CONFIGURE_ARGS+= \
- --disable-slapd \
- --disable-slurpd \
- --enable-shared \
- --enable-static
-
-.elif defined(SLAPD_ONLY)
-# ------------------------------------------------------------------------------
-# slapd only
-#
-BUILD_SLAPD= yes
-PKGNAMESUFFIX= -slapd
-COMMENT= Open source LDAP server software (slapd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --disable-slurpd \
- --disable-shared \
- --disable-static \
- --without-threads \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell
-
-.elif defined(SLURPD_ONLY)
-# ------------------------------------------------------------------------------
-# slurpd only
-# NOTE: to build slurpd only package we have to build slapd
-# and some backend we just don't install them later on
-#
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -slurpd
-COMMENT= Open source LDAP server software (slurpd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-RUN_DEPENDS+= ${LOCALBASE}/libexec/slapd:${PORTSDIR}/net/openldap-slapd2.1
-CONFIGURE_ARGS+= \
- --enable-slurpd \
- --enable-slapd \
- --disable-shared \
- --disable-static \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell \
- --with-threads
-
-.elif defined(SERVERS_ONLY)
-# ------------------------------------------------------------------------------
-# slapd and slurpd
-#
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -server
-COMMENT= Open source LDAP server software (slapd and slurpd)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --enable-slurpd \
- --disable-shared \
- --disable-static \
- --with-threads \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell
+.if defined(WITH_PERL)
+.error build with Perl backend broken: <http://www.openldap.org/its/index.cgi/Development?id=2513>
+USE_PERL5= yes
+CONFIGURE_ARGS+= --enable-perl
+.endif
+.if defined(WITH_SASL)
+LIB_DEPENDS+= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
+CONFIGURE_ARGS+= --with-cyrus-sasl \
+ --enable-spasswd
.else
-# ------------------------------------------------------------------------------
-#
-# full package
-#
-INSTALLS_SHLIB= yes
-BUILD_CLIENTS= yes
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-CONFIGURE_ARGS+= \
- --with-threads \
- --enable-slapd \
- --enable-slurpd \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell \
- --enable-shared \
- --enable-static
+CONFIGURE_ARGS+= --without-cyrus-sasl
+.endif
+.if defined(WITH_ODBC)
+LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
+CONFIGURE_ARGS+= --enable-sql
.endif
-# ------------------------------------------------------------------------------
-# PLIST subs and MAN?/MLINKS
-#
-.if defined(BUILD_CLIENTS)
-PLIST_SUB+= NO_CLIENTS=
-MAN1+= ldapcompare.1
-MAN1+= ldapdelete.1
-MAN1+= ldapmodify.1
-MLINKS+= ldapmodify.1 ldapadd.1
-MAN1+= ldapmodrdn.1
-MAN1+= ldappasswd.1
-MAN1+= ldapsearch.1
-MAN1+= ldapwhoami.1
-MAN3+= lber-decode.3
-MLINKS+= lber-decode.3 ber_get_next.3
-MLINKS+= lber-decode.3 ber_skip_tag.3
-MLINKS+= lber-decode.3 ber_peek_tag.3
-MLINKS+= lber-decode.3 ber_scanf.3
-MLINKS+= lber-decode.3 ber_get_int.3
-MLINKS+= lber-decode.3 ber_get_enum.3
-MLINKS+= lber-decode.3 ber_get_stringb.3
-MLINKS+= lber-decode.3 ber_get_stringa.3
-MLINKS+= lber-decode.3 ber_get_stringal.3
-MLINKS+= lber-decode.3 ber_get_stringbv.3
-MLINKS+= lber-decode.3 ber_get_null.3
-MLINKS+= lber-decode.3 ber_get_boolean.3
-MLINKS+= lber-decode.3 ber_get_bitstring.3
-MLINKS+= lber-decode.3 ber_first_element.3
-MLINKS+= lber-decode.3 ber_next_element.3
-MAN3+= lber-encode.3
-MLINKS+= lber-encode.3 ber_alloc_t.3
-MLINKS+= lber-encode.3 ber_flush.3
-MLINKS+= lber-encode.3 ber_printf.3
-MLINKS+= lber-encode.3 ber_put_int.3
-MLINKS+= lber-encode.3 ber_put_enum.3
-MLINKS+= lber-encode.3 ber_put_ostring.3
-MLINKS+= lber-encode.3 ber_put_string.3
-MLINKS+= lber-encode.3 ber_put_null.3
-MLINKS+= lber-encode.3 ber_put_boolean.3
-MLINKS+= lber-encode.3 ber_put_bitstring.3
-MLINKS+= lber-encode.3 ber_start_seq.3
-MLINKS+= lber-encode.3 ber_start_set.3
-MLINKS+= lber-encode.3 ber_put_seq.3
-MLINKS+= lber-encode.3 ber_put_set.3
-MAN3+= lber-memory.3
-MLINKS+= lber-memory.3 ber_memalloc.3
-MLINKS+= lber-memory.3 ber_memcalloc.3
-MLINKS+= lber-memory.3 ber_memrealloc.3
-MLINKS+= lber-memory.3 ber_memfree.3
-MLINKS+= lber-memory.3 ber_memvfree.3
-MAN3+= lber-types.3
-MLINKS+= lber-types.3 ber_int_t.3
-MLINKS+= lber-types.3 ber_uint_t.3
-MLINKS+= lber-types.3 ber_len_t.3
-MLINKS+= lber-types.3 ber_slen_t.3
-MLINKS+= lber-types.3 ber_tag_t.3
-MAN3+= ldap.3
-MAN3+= ldap_abandon.3
-MLINKS+= ldap_abandon.3 ldap_abandon_ext.3
-MAN3+= ldap_add.3
-MLINKS+= ldap_add.3 ldap_add_s.3
-MLINKS+= ldap_add.3 ldap_add_ext.3
-MLINKS+= ldap_add.3 ldap_add_ext_s.3
-MAN3+= ldap_bind.3
-MLINKS+= ldap_bind.3 ldap_bind_s.3
-MLINKS+= ldap_bind.3 ldap_simple_bind.3
-MLINKS+= ldap_bind.3 ldap_simple_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_interactive_bind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind.3
-MLINKS+= ldap_bind.3 ldap_unbind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext_s.3
-MLINKS+= ldap_bind.3 ldap_set_rebind_proc.3
-MAN3+= ldap_compare.3
-MLINKS+= ldap_compare.3 ldap_compare_s.3
-MLINKS+= ldap_compare.3 ldap_compare_ext.3
-MLINKS+= ldap_compare.3 ldap_compare_ext_s.3
-MAN3+= ldap_delete.3
-MLINKS+= ldap_delete.3 ldap_delete_s.3
-MLINKS+= ldap_delete.3 ldap_delete_ext.3
-MLINKS+= ldap_delete.3 ldap_delete_ext_s.3
-MAN3+= ldap_error.3
-MLINKS+= ldap_error.3 ldap_perror.3
-MLINKS+= ldap_error.3 ld_errno.3
-MLINKS+= ldap_error.3 ldap_result2error.3
-MLINKS+= ldap_error.3 ldap_errlist.3
-MLINKS+= ldap_error.3 ldap_err2string.3
-MAN3+= ldap_first_attribute.3
-MLINKS+= ldap_first_attribute.3 ldap_next_attribute.3
-MAN3+= ldap_first_entry.3
-MLINKS+= ldap_first_entry.3 ldap_next_entry.3
-MLINKS+= ldap_first_entry.3 ldap_count_entries.3
-MAN3+= ldap_first_message.3
-MLINKS+= ldap_first_message.3 ldap_next_message.3
-MLINKS+= ldap_first_message.3 ldap_count_messages.3
-MAN3+= ldap_first_reference.3
-MLINKS+= ldap_first_reference.3 ldap_next_reference.3
-MLINKS+= ldap_first_reference.3 ldap_count_references.3
-MAN3+= ldap_get_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_rdn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ufn.3
-MLINKS+= ldap_get_dn.3 ldap_str2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2str.3
-MLINKS+= ldap_get_dn.3 ldap_dn2dcedn.3
-MLINKS+= ldap_get_dn.3 ldap_dcedn2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ad_canonical.3
-MAN3+= ldap_get_values.3
-MLINKS+= ldap_get_values.3 ldap_get_values_len.3
-MLINKS+= ldap_get_values.3 ldap_count_values.3
-MLINKS+= ldap_get_values.3 ldap_count_values_len.3
-MLINKS+= ldap_get_values.3 ldap_value_free.3
-MLINKS+= ldap_get_values.3 ldap_value_free_len.3
-MAN3+= ldap_modify.3
-MLINKS+= ldap_modify.3 ldap_modify_s.3
-MLINKS+= ldap_modify.3 ldap_modify_ext.3
-MLINKS+= ldap_modify.3 ldap_modify_ext_s.3
-MLINKS+= ldap_modify.3 ldap_mods_free.3
-MAN3+= ldap_open.3
-MLINKS+= ldap_open.3 ldap_init.3
-MAN3+= ldap_modrdn.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn_s.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2_s.3
-MAN3+= ldap_parse_reference.3
-MAN3+= ldap_parse_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_sasl_bind_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_extended_result.3
-MAN3+= ldap_result.3
-MLINKS+= ldap_result.3 ldap_msgfree.3
-MLINKS+= ldap_result.3 ldap_msgtype.3
-MLINKS+= ldap_result.3 ldap_msgid.3
-MAN3+= ldap_schema.3
-MLINKS+= ldap_schema.3 ldap_str2syntax.3
-MLINKS+= ldap_schema.3 ldap_syntax2str.3
-MLINKS+= ldap_schema.3 ldap_syntax2name.3
-MLINKS+= ldap_schema.3 ldap_syntax_free.3
-MLINKS+= ldap_schema.3 ldap_str2matchingrule.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2str.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2name.3
-MLINKS+= ldap_schema.3 ldap_matchingrule_free.3
-MLINKS+= ldap_schema.3 ldap_str2attributetype.3
-MLINKS+= ldap_schema.3 ldap_attributetype2str.3
-MLINKS+= ldap_schema.3 ldap_attributetype2name.3
-MLINKS+= ldap_schema.3 ldap_attributetype_free.3
-MLINKS+= ldap_schema.3 ldap_str2objectclass.3
-MLINKS+= ldap_schema.3 ldap_objectclass2str.3
-MLINKS+= ldap_schema.3 ldap_objectclass2name.3
-MLINKS+= ldap_schema.3 ldap_objectclass_free.3
-MLINKS+= ldap_schema.3 ldap_scherr2str.3
-MAN3+= ldap_search.3
-MLINKS+= ldap_search.3 ldap_search_s.3
-MLINKS+= ldap_search.3 ldap_search_st.3
-MLINKS+= ldap_search.3 ldap_search_ext.3
-MLINKS+= ldap_search.3 ldap_search_ext_s.3
-MAN3+= ldap_sort.3
-MLINKS+= ldap_sort.3 ldap_sort_entries.3
-MLINKS+= ldap_sort.3 ldap_sort_values.3
-MLINKS+= ldap_sort.3 ldap_sort_strcasecmp.3
-MAN3+= ldap_url.3
-MLINKS+= ldap_url.3 ldap_is_ldap_url.3
-MLINKS+= ldap_url.3 ldap_url_parse.3
-MLINKS+= ldap_url.3 ldap_free_urldesc.3
+.if defined(WITH_SLAPI)
+LIB_DEPENDS+= ltdl.4:${PORTSDIR}/devel/libltdl
+CONFIGURE_ARGS+= --enable-slapi
+LIBS+= -lltdl
+PLIST_SUB+= SLAPI=""
.else
-PLIST_SUB+= NO_CLIENTS="@comment "
+PLIST_SUB+= SLAPI="@comment "
.endif
-.if defined(BUILD_SLAPD)
-PLIST_SUB+= NO_SLAPD=
-MAN5+= ldap.conf.5
-MAN5+= ldif.5
-MAN5+= slapd-bdb.5
-MAN5+= slapd-dnssrv.5
-MAN5+= slapd-ldap.5
-MAN5+= slapd-ldbm.5
-MAN5+= slapd-meta.5
-MAN5+= slapd-null.5
-MAN5+= slapd-passwd.5
-MAN5+= slapd-perl.5
-MAN5+= slapd-shell.5
-MAN5+= slapd-sql.5
-MAN5+= slapd-tcl.5
-MAN5+= slapd.access.5
-MAN5+= slapd.conf.5
-MAN5+= slapd.replog.5
-MAN8+= slapadd.8
-MAN8+= slapcat.8
-MAN8+= slapd.8
-MAN8+= slapindex.8
-MAN8+= slappasswd.8
-.else
-PLIST_SUB+= NO_SLAPD="@comment "
+
+# Include tcp-wrapper support
+.if !defined(WITHOUT_TCP_WRAPPERS) && exists(/usr/include/tcpd.h)
+CONFIGURE_ARGS+= --enable-wrappers
.endif
-.if defined(BUILD_SLURPD)
-PLIST_SUB+= NO_SLUPRD=""
-MAN8+= slurpd.8
-.else
-PLIST_SUB+= NO_SLUPRD="@comment "
+
+PLIST_SUB+= SERVER=""
+SED_SCRIPT+= -e '/^%%SERVER%%/s,,,'
.endif
+PLIST_SUB+= LOCALSTATEDIR=${LOCALSTATEDIR} \
+ LDAP_RUN_DIR=${LDAP_RUN_DIR}
+
+# math.h uses _REENTRANT and stdio.h uses _THREAD_SAFE, so define both.
+CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
+ -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+CONFIGURE_TARGET= --host=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBS="${LIBS}"
+
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.pre.mk>
+.include "${FILESDIR}/manpages"
+
+pre-everything::
+ @${ECHO} "============================================================="
+ @${ECHO}
+ @${ECHO} "You can build ${PKGNAME} with the following options:"
+ @${ECHO}
+ @${ECHO} "WITH_BDB_VER select BerkeleyDB version (default 4.1)"
+ @${ECHO} "WITH_SASL with SASL2 authorization"
+ @${ECHO} "WITH_PERL with Perl backend"
+ @${ECHO} "WITH_SHELL with Shell backend"
+ @${ECHO} "WITH_ODBC with SQL backend"
+ @${ECHO} "WITH_SLAPI with Netscape SLAPI plugin API
+ @${ECHO} "WITHOUT_TCP_WRAPPERS without tcp wrapper support"
+ @${ECHO}
+ @${ECHO} "============================================================="
+ @${ECHO}
+
post-patch:
- @${CP} ${WRKSRC}/servers/slapd/slapd.conf \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist
- @${SED} -e '/^pidfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- -e '/^argsfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist > \
+ @${REINPLACE_CMD} -e 's,%LOCALSTATEDIR%/slapd\.,${LDAP_RUN_DIR}/slapd.,g' \
${WRKSRC}/servers/slapd/slapd.conf
post-build:
-.if defined(BUILD_SLAPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slapd.sh >${WRKDIR}/slapd.sh
-.endif
-.if defined(BUILD_SLURPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slurpd.sh >${WRKDIR}/slurpd.sh
-.endif
-
-do-install:
-.if defined(BUILD_CLIENTS) && defined (BUILD_SLAPD) && defined (BUILD_SLURPD)
- @cd ${WRKSRC} && ${MAKE} install
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.else
-.if defined(BUILD_CLIENTS)
- @cd ${WRKSRC}/include && ${MAKE} install
- @cd ${WRKSRC}/clients && ${MAKE} install
- @cd ${WRKSRC}/libraries && ${MAKE} install
-.for i in 1 3
- @cd ${WRKSRC}/doc/man/man$i && ${MAKE} install
+.for script in slapd.sh slurpd.sh
+ @${SED} ${SED_SCRIPT} ${FILESDIR}/${script} >${WRKDIR}/${script}
+.endfor
+.for text in pkg-install pkg-message
+ @${SED} ${SED_SCRIPT} ${.CURDIR}/${text} >${WRKDIR}/${text}
.endfor
-.endif
-.if defined(BUILD_SLAPD)
- @cd ${WRKSRC}/servers/slapd && ${MAKE} install
- @cd ${WRKSRC}/doc/man/man5 && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapadd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapcat.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapindex.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slappasswd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${MKDIR} /var/db
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
-.endif
-.if defined(BUILD_SLURPD)
- @cd ${WRKSRC}/servers/slurpd && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slurpd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${INSTALL_TARGET} -c -o root -g wheel -m 700 -d /var/db/openldap-slurp
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.endif
-.endif
post-install:
-.if defined(BUILD_SLAPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${PREFIX}/etc/rc.d/slapd.sh.sample
-.endif
-.if defined(BUILD_SLURPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d/slurpd.sh.sample
-.endif
+.if !defined(CLIENT_ONLY)
+ @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d
+ @${MKDIR} ${LDAP_RUN_DIR}
+.endif
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @for dir in rfc drafts; do \
+ ${MKDIR} ${DOCSDIR}/$${dir}; \
+ ${FIND} ${WRKSRC}/doc/$${dir} -maxdepth 1 -type f \
+ -exec ${INSTALL_DATA} {} ${DOCSDIR}/$${dir} \; -print \
+ | ${SED} -e "s,^${WRKSRC}/doc/,${DOCSDIR:S,^${PREFIX}/,,}/," \
+ >>${TMPPLIST}; \
+ ${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}/$${dir}" >>${TMPPLIST}; \
+ done
+ @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >>${TMPPLIST}
+.endif
+ @${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>
diff --git a/net/openldap22/distinfo b/net/openldap22/distinfo
index 341a1c1cc0ca..eef25e637b2e 100644
--- a/net/openldap22/distinfo
+++ b/net/openldap22/distinfo
@@ -1,2 +1 @@
-MD5 (openldap-stable-20030410.tgz) = 53fb6c157a7c54b988cf7555e56f11e6
-MD5 (openldap-2.1.20.tgz) = fe6d5f8571672e3107b42299a03e92ce
+MD5 (openldap-2.2.0alpha.tgz) = 72fe342067b717a37b9697898dacfa0a
diff --git a/net/openldap22/files/manpages b/net/openldap22/files/manpages
new file mode 100644
index 000000000000..d3830d3afa8b
--- /dev/null
+++ b/net/openldap22/files/manpages
@@ -0,0 +1,188 @@
+MAN1+= ldapcompare.1 \
+ ldapdelete.1 \
+ ldapmodify.1 \
+ ldapmodrdn.1 \
+ ldappasswd.1 \
+ ldapsearch.1 \
+ ldapwhoami.1
+MLINKS+= \
+ ldapmodify.1 ldapadd.1
+
+MAN3+= lber-decode.3 \
+ lber-encode.3 \
+ lber-memory.3 \
+ lber-types.3 \
+ ldap.3 \
+ ldap_abandon.3 \
+ ldap_add.3 \
+ ldap_bind.3 \
+ ldap_compare.3 \
+ ldap_delete.3 \
+ ldap_error.3 \
+ ldap_first_attribute.3 \
+ ldap_first_entry.3 \
+ ldap_first_message.3 \
+ ldap_first_reference.3 \
+ ldap_get_dn.3 \
+ ldap_get_values.3 \
+ ldap_modify.3 \
+ ldap_modrdn.3 \
+ ldap_open.3 \
+ ldap_parse_reference.3 \
+ ldap_parse_result.3 \
+ ldap_result.3 \
+ ldap_schema.3 \
+ ldap_search.3 \
+ ldap_sort.3 \
+ ldap_url.3
+MLINKS+= \
+ lber-decode.3 ber_first_element.3 \
+ lber-decode.3 ber_get_bitstring.3 \
+ lber-decode.3 ber_get_boolean.3 \
+ lber-decode.3 ber_get_enum.3 \
+ lber-decode.3 ber_get_int.3 \
+ lber-decode.3 ber_get_next.3 \
+ lber-decode.3 ber_get_null.3 \
+ lber-decode.3 ber_get_stringa.3 \
+ lber-decode.3 ber_get_stringb.3 \
+ lber-decode.3 ber_next_element.3 \
+ lber-decode.3 ber_peek_tag.3 \
+ lber-decode.3 ber_scanf.3 \
+ lber-decode.3 ber_skip_tag.3 \
+ lber-encode.3 ber_alloc_t.3 \
+ lber-encode.3 ber_flush.3 \
+ lber-encode.3 ber_printf.3 \
+ lber-encode.3 ber_put_enum.3 \
+ lber-encode.3 ber_put_int.3 \
+ lber-encode.3 ber_put_null.3 \
+ lber-encode.3 ber_put_ostring.3 \
+ lber-encode.3 ber_put_seq.3 \
+ lber-encode.3 ber_put_set.3 \
+ lber-encode.3 ber_put_string.3 \
+ lber-encode.3 ber_start_set.3 \
+ lber-types.3 ber_bvarray_add.3 \
+ lber-types.3 ber_bvarray_free.3 \
+ lber-types.3 ber_bvdup.3 \
+ lber-types.3 ber_bvecadd.3 \
+ lber-types.3 ber_bvecfree.3 \
+ lber-types.3 ber_bvfree.3 \
+ lber-types.3 ber_bvstr.3 \
+ lber-types.3 ber_bvstrdup.3 \
+ lber-types.3 ber_dupbv.3 \
+ lber-types.3 ber_free.3 \
+ lber-types.3 ber_str2bv.3 \
+ ldap_abandon.3 ldap_abandon_ext.3 \
+ ldap_add.3 ldap_add_ext.3 \
+ ldap_add.3 ldap_add_ext_s.3 \
+ ldap_add.3 ldap_add_s.3 \
+ ldap_bind.3 ldap_bind_s.3 \
+ ldap_bind.3 ldap_kerberos_bind1.3 \
+ ldap_bind.3 ldap_kerberos_bind1_s.3 \
+ ldap_bind.3 ldap_kerberos_bind2.3 \
+ ldap_bind.3 ldap_kerberos_bind2_s.3 \
+ ldap_bind.3 ldap_kerberos_bind_s.3 \
+ ldap_bind.3 ldap_sasl_bind.3 \
+ ldap_bind.3 ldap_sasl_bind_s.3 \
+ ldap_bind.3 ldap_simple_bind.3 \
+ ldap_bind.3 ldap_simple_bind_s.3 \
+ ldap_bind.3 ldap_unbind.3 \
+ ldap_bind.3 ldap_unbind_ext.3 \
+ ldap_bind.3 ldap_unbind_ext_s.3 \
+ ldap_bind.3 ldap_unbind_s.3 \
+ ldap_compare.3 ldap_compare_ext.3 \
+ ldap_compare.3 ldap_compare_ext_s.3 \
+ ldap_compare.3 ldap_compare_s.3 \
+ ldap_delete.3 ldap_delete_ext.3 \
+ ldap_delete.3 ldap_delete_ext_s.3 \
+ ldap_delete.3 ldap_delete_s.3 \
+ ldap_error.3 ld_errno.3 \
+ ldap_error.3 ldap_err2string.3 \
+ ldap_error.3 ldap_errlist.3 \
+ ldap_error.3 ldap_perror.3 \
+ ldap_error.3 ldap_result2error.3 \
+ ldap_first_attribute.3 ldap_next_attribute.3 \
+ ldap_first_entry.3 ldap_count_entries.3 \
+ ldap_first_entry.3 ldap_next_entry.3 \
+ ldap_first_message.3 ldap_count_messages.3 \
+ ldap_first_message.3 ldap_next_message.3 \
+ ldap_first_reference.3 ldap_count_references.3 \
+ ldap_first_reference.3 ldap_next_reference.3 \
+ ldap_get_dn.3 ldap_dcedn2dn.3 \
+ ldap_get_dn.3 ldap_dn2ad_canonical.3 \
+ ldap_get_dn.3 ldap_dn2dcedn.3 \
+ ldap_get_dn.3 ldap_dn2str.3 \
+ ldap_get_dn.3 ldap_dn2ufn.3 \
+ ldap_get_dn.3 ldap_explode_dn.3 \
+ ldap_get_dn.3 ldap_explode_rdn.3 \
+ ldap_get_dn.3 ldap_str2dn.3 \
+ ldap_get_values.3 ldap_count_values.3 \
+ ldap_get_values.3 ldap_count_values_len.3 \
+ ldap_get_values.3 ldap_get_values_len.3 \
+ ldap_get_values.3 ldap_value_free.3 \
+ ldap_get_values.3 ldap_value_free_len.3 \
+ ldap_modify.3 ldap_modify_ext.3 \
+ ldap_modify.3 ldap_modify_ext_s.3 \
+ ldap_modify.3 ldap_modify_s.3 \
+ ldap_modify.3 ldap_mods_free.3 \
+ ldap_modrdn.3 ldap_modrdn2.3 \
+ ldap_modrdn.3 ldap_modrdn2_s.3 \
+ ldap_modrdn.3 ldap_modrdn_s.3 \
+ ldap_open.3 ldap_init.3 \
+ ldap_parse_result.3 ldap_parse_extended_result.3 \
+ ldap_parse_result.3 ldap_parse_sasl_bind_result.3 \
+ ldap_result.3 ldap_msgfree.3 \
+ ldap_result.3 ldap_msgid.3 \
+ ldap_result.3 ldap_msgtype.3 \
+ ldap_schema.3 ldap_attributetype2name.3 \
+ ldap_schema.3 ldap_attributetype2str.3 \
+ ldap_schema.3 ldap_attributetype_free.3 \
+ ldap_schema.3 ldap_matchingrule2name.3 \
+ ldap_schema.3 ldap_matchingrule2str.3 \
+ ldap_schema.3 ldap_matchingrule_free.3 \
+ ldap_schema.3 ldap_objectclass2name.3 \
+ ldap_schema.3 ldap_objectclass2str.3 \
+ ldap_schema.3 ldap_objectclass_free.3 \
+ ldap_schema.3 ldap_scherr2str.3 \
+ ldap_schema.3 ldap_str2attributetype.3 \
+ ldap_schema.3 ldap_str2matchingrule.3 \
+ ldap_schema.3 ldap_str2objectclass.3 \
+ ldap_schema.3 ldap_str2syntax.3 \
+ ldap_schema.3 ldap_syntax2name.3 \
+ ldap_schema.3 ldap_syntax2str.3 \
+ ldap_schema.3 ldap_syntax_free.3 \
+ ldap_search.3 ldap_search_ext.3 \
+ ldap_search.3 ldap_search_ext_s.3 \
+ ldap_search.3 ldap_search_s.3 \
+ ldap_search.3 ldap_search_st.3 \
+ ldap_sort.3 ldap_sort_entries.3 \
+ ldap_sort.3 ldap_sort_strcasecmp.3 \
+ ldap_sort.3 ldap_sort_values.3 \
+ ldap_url.3 ldap_free_urldesc.3 \
+ ldap_url.3 ldap_is_ldap_url.3 \
+ ldap_url.3 ldap_url_parse.3
+
+MAN5+= ldap.conf.5 \
+ ldif.5 \
+ slapd-bdb.5 \
+ slapd-dnssrv.5 \
+ slapd-ldap.5 \
+ slapd-ldbm.5 \
+ slapd-meta.5 \
+ slapd-monitor.5 \
+ slapd-null.5 \
+ slapd-passwd.5 \
+ slapd-perl.5 \
+ slapd-shell.5 \
+ slapd-sql.5 \
+ slapd-tcl.5 \
+ slapd.access.5 \
+ slapd.conf.5 \
+ slapd.plugin.5 \
+ slapd.replog.5
+
+MAN8+= slapadd.8 \
+ slapcat.8 \
+ slapd.8 \
+ slapindex.8 \
+ slappasswd.8 \
+ slurpd.8
diff --git a/net/openldap22/files/patch-build::ltmain.sh b/net/openldap22/files/patch-build::ltmain.sh
new file mode 100644
index 000000000000..502d6b5db739
--- /dev/null
+++ b/net/openldap22/files/patch-build::ltmain.sh
@@ -0,0 +1,15 @@
+--- build/ltmain.sh.orig Sun Feb 9 23:24:29 2003
++++ build/ltmain.sh Fri Jun 20 21:37:02 2003
+@@ -4285,12 +4285,6 @@
+ IFS="$save_ifs"
+ fi
+
+- # Install the pseudo-library for information purposes.
+- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+- instname="$dir/$name"i
+- $show "$install_prog $instname $destdir/$name"
+- $run eval "$install_prog $instname $destdir/$name" || exit $?
+-
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
diff --git a/net/openldap22/files/patch-libraries::liblutil::passwd.c b/net/openldap22/files/patch-libraries::liblutil::passwd.c
new file mode 100644
index 000000000000..32de74e9ee11
--- /dev/null
+++ b/net/openldap22/files/patch-libraries::liblutil::passwd.c
@@ -0,0 +1,14 @@
+#
+# ITS#2562: add missing arg to hash_lanman
+#
+--- libraries/liblutil/passwd.c.orig Fri May 2 13:29:29 2003
++++ libraries/liblutil/passwd.c Sun Jun 22 03:08:18 2003
+@@ -632,7 +632,7 @@
+ {
+ struct berval *hash;
+
+- hash = hash_lanman( scheme, cred );
++ hash = hash_lanman( scheme, cred, text );
+ return memcmp( &hash->bv_val[scheme->bv_len], passwd->bv_val, 32);
+ }
+ #endif /* SLAPD_LMHASH */
diff --git a/net/openldap22/files/patch-servers::slapd::daemon.c b/net/openldap22/files/patch-servers::slapd::daemon.c
new file mode 100644
index 000000000000..96afa46ebd8a
--- /dev/null
+++ b/net/openldap22/files/patch-servers::slapd::daemon.c
@@ -0,0 +1,11 @@
+--- servers/slapd/daemon.c.orig Sat May 24 21:12:20 2003
++++ servers/slapd/daemon.c Sun Jun 22 19:26:22 2003
+@@ -858,7 +858,7 @@
+ #ifdef LDAP_PF_LOCAL
+ case AF_LOCAL: {
+ char *addr = ((struct sockaddr_un *)*sal)->sun_path;
+-#if 0 /* don't muck with socket perms */
++#if 1
+ if ( chmod( addr, l.sl_perms ) < 0 && crit ) {
+ int err = sock_errno();
+ #ifdef NEW_LOGGING
diff --git a/net/openldap22/files/slapd.sh b/net/openldap22/files/slapd.sh
index e8f6ed6b018d..21bdf775a0b1 100644
--- a/net/openldap22/files/slapd.sh
+++ b/net/openldap22/files/slapd.sh
@@ -2,44 +2,57 @@
#
# $FreeBSD$
-slapd_program=@@PREFIX@@/libexec/slapd
+slapd_program=%%PREFIX%%/libexec/slapd
-# Uncomment one of the following:
-#
-# IPv4 Only
-#slapd_args='-u ldap -g ldap -h ldap://0.0.0.0'
+slapd_pidfile=%%LDAP_RUN_DIR%%/slapd.pid
+
+slapd_enable="NO"
+
+slapd_args=
+
+# Add the following lines to /etc/rc.conf to enable slapd:
#
-# IPv6 and IPv4
-#slapd_ags='-u ldap -g ldap -h "ldap://[::] ldap://0.0.0.0"'
+#slapd_enable="YES"
+#slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
#
-# IPv6 Only
-#slapd_args='-u ldap -g ldap -h ldap://[::]'
+# See sldap(8) for details
#
+# Create a user 'ldap' and add '-u ldap -g ldap' to slapd_args
+# if you want to run slapd as a non-privileged user (recommended)
#
-slapd_args="-u ldap -g ldap"
-
-pidfile=/var/run/ldap/slapd.pid
-case "$1" in
-start)
- if [ -x $slapd ]; then
- echo -n ' slapd'
- eval ${slapd_program} ${slapd_args}
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
- fi
- ;;
-stop)
- if [ -f $pidfile ]; then
- kill `cat $pidfile`
- echo -n ' slapd'
- rm $pidfile
- else
- echo ' slapd: not running'
- fi
+case "$slapd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slapd_program} ]; then
+ echo -n ' slapd'
+ eval ${slapd_program} ${slapd_args}
+ fi
+ ;;
+ stop)
+ if [ -f $slapd_pidfile ]; then
+ kill `cat $slapd_pidfile`
+ echo -n ' slapd'
+ else
+ echo ' slapd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
;;
esac
diff --git a/net/openldap22/files/slurpd.sh b/net/openldap22/files/slurpd.sh
index 9f347253a5d6..fc9f88f21cd6 100644
--- a/net/openldap22/files/slurpd.sh
+++ b/net/openldap22/files/slurpd.sh
@@ -1,34 +1,50 @@
#!/bin/sh
#
# $FreeBSD$
+
+slurpd_program=%%PREFIX%%/libexec/slurpd
+
+slurpd_enable="NO"
+
+slurpd_args=
+
+# Add the following line to /etc/rc.conf to enable slurpd:
+#
+#slurpd_enable="YES"
+#
+# See slurpd(8) for details
#
-slurpd=@@PREFIX@@/libexec/slurpd
-pidfile=/var/run/ldap/slurpd.pid
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
-case "$1" in
-start)
- if [ -x $slurpd ]; then
- echo -n ' slurpd'
- $slurpd &
- echo $! > $pidfile
- fi
- ;;
-stop)
- pids=`ps xa | awk '/slurpd/{ print $1 }'`
- for pid in $pids; do
- kill $pid
- echo -n " slurpd($pid)"
- done
- ;;
-restart)
- $0 stop
- $0 start
- ;;
+case "$slurpd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slurpd_program} ]; then
+ echo -n ' slurpd'
+ ${slurpd_program} ${slurpd_args}
+ fi
+ ;;
+ stop)
+ if ! killall `basename ${slurpd_program}`; then
+ echo ' slurpd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
+ ;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
- ;;
+ ;;
esac
exit 0
diff --git a/net/openldap22/pkg-descr b/net/openldap22/pkg-descr
index d582b6305fad..432cb85b0400 100644
--- a/net/openldap22/pkg-descr
+++ b/net/openldap22/pkg-descr
@@ -1,10 +1,15 @@
-OpenLDAP is a suite of Lightweight Directory Access Protocol(LDAP)
-servers, clients, utilities and development tools.
+OpenLDAP is a suite of Lightweight Directory Access Protocol (v3) servers,
+clients, utilities and development tools.
-OpenLDAP is derived from the University of Michigan LDAP release 3.3
-and is distributed under an open source license.
+This release includes the following major components:
-WWW: http://www.openldap.org/
+ * slapd - a stand-alone LDAP directory server
+ * slurpd - a stand-alone LDAP replication server
+ * -lldap - a LDAP client library
+ * -llber - a lightweight BER/DER encoding/decoding library
+ * LDIF tools - data conversion tools for use with slapd
+ * LDAP tools - A collection of command line LDAP utilities
-Bjoern A. Zeeb
-bzeeb+freebsdports@zabbadoz.net
+WWW: http://www.OpenLDAP.org/
+
+Lachlan O'Dea, Oliver Eikemeier
diff --git a/net/openldap22/pkg-install b/net/openldap22/pkg-install
index 76c6c8ff1b31..86dae2ce74da 100644
--- a/net/openldap22/pkg-install
+++ b/net/openldap22/pkg-install
@@ -1,52 +1,11 @@
#!/bin/sh
#
-# $FreeBSD$
+# $FreeBSD$
#
-
-PKG_PREFIX=${PKG_PREFIX:=/usr/local}
-BATCH=${BATCH:=no}
-
-USER=ldap
-USER_UID=389
-
-GROUP=ldap
-GROUP_GID=389
-
-if [ x"$2" = xPRE-INSTALL ]; then
- if /usr/sbin/pw groupshow "${GROUP}" 2>/dev/null; then
- echo "You already have a group \"${GROUP}\", so I will use it."
- else
- if /usr/sbin/pw groupadd ${GROUP} -g ${GROUP_GID} -h -
- then
- echo "Added group \"${GROUP}\"."
- else
- echo "Adding group \"${GROUP}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-
- if /usr/sbin/pw user show "${USER}" 2>/dev/null; then
- echo "You already have a user \"${USER}\", so I will use it."
- else
- if /usr/sbin/pw useradd ${USER} -u ${USER_UID} -g ${GROUP} -h - \
- -d /nonexistent \
- -s /sbin/nologin \
- -c "OpenLDAP Server"
- then
- echo "Added user \"${USER}\"."
- else
- echo "Adding user \"${USER}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-fi
-
-if [ x"$2" = xPOST-INSTALL ]; then
- chown -R $USER:$GROUP /var/db/openldap-data
- chown -R $USER:$GROUP /var/run/ldap
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf.default
+if [ X"$2" != X"POST-INSTALL" ]; then
+ exit 0;
fi
+%%SERVER%%mkdir -p "%%LDAP_RUN_DIR%%"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-data"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-slurp"
diff --git a/net/openldap22/pkg-message b/net/openldap22/pkg-message
index dce1c78534b1..fa99c9a88dd8 100644
--- a/net/openldap22/pkg-message
+++ b/net/openldap22/pkg-message
@@ -1,8 +1,30 @@
-The openldap21 port now creates a ldap user an a ldap group.
+************************************************************
-If you use slapadd as root to populate your ldap Database please
-remember to chown the database directories and containing files
-to user ldap and group ldap.
+The OpenLDAP package has been successfully installed.
- chown -R ldap:ldap /var/db/openldap-data
+Edit
+ %%PREFIX%%/etc/openldap/ldap.conf
+to change the system-wide client defaults.
+%%SERVER%%In order to run the OpenLDAP server, you need to edit
+%%SERVER%% %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%to suit your needs and add the next lines to /etc/rc.conf:
+%%SERVER%% slapd_enable="YES"
+%%SERVER%% slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
+%%SERVER%%
+%%SERVER%%Then start the server with
+%%SERVER%% %%PREFIX%%/etc/rc.d/slapd.sh start
+%%SERVER%%or reboot.
+%%SERVER%%
+%%SERVER%%NOTE: There is no real reason to run slapd as root. Add
+%%SERVER%% '-u ldap -g ldap'
+%%SERVER%%to slapd_args, create a user "ldap" with
+%%SERVER%% pw add group ldap -g 389
+%%SERVER%% pw add user ldap -u 389 -g 389 -d /nonexistent \
+%%SERVER%% -c "OpenLDAP Server" -s /sbin/nologin -p "*"
+%%SERVER%%and do
+%%SERVER%% chown -R ldap:ldap %%LDAP_RUN_DIR%% \
+%%SERVER%% %%LOCALSTATEDIR%%/openldap-data %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%and your server runs with a non-privileged user id.
+%%SERVER%%
+************************************************************
diff --git a/net/openldap22/pkg-plist b/net/openldap22/pkg-plist
index 6be84f593b88..ff9ec200b978 100644
--- a/net/openldap22/pkg-plist
+++ b/net/openldap22/pkg-plist
@@ -1,97 +1,83 @@
-@comment -----------------------------------------
-@comment BUILD_CLIENTS
-@comment -----------------------------------------
-%%NO_CLIENTS%%bin/ldapadd
-%%NO_CLIENTS%%bin/ldapcompare
-%%NO_CLIENTS%%bin/ldapdelete
-%%NO_CLIENTS%%bin/ldapmodify
-%%NO_CLIENTS%%bin/ldapmodrdn
-%%NO_CLIENTS%%bin/ldappasswd
-%%NO_CLIENTS%%bin/ldapsearch
-%%NO_CLIENTS%%bin/ldapwhoami
-%%NO_CLIENTS%%@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
-%%NO_CLIENTS%%etc/openldap/ldap.conf.default
-%%NO_CLIENTS%%@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
-@comment
-%%NO_CLIENTS%%include/lber.h
-%%NO_CLIENTS%%include/lber_types.h
-%%NO_CLIENTS%%include/ldap.h
-%%NO_CLIENTS%%include/ldap_cdefs.h
-%%NO_CLIENTS%%include/ldap_features.h
-%%NO_CLIENTS%%include/ldap_schema.h
-%%NO_CLIENTS%%include/ldap_utf8.h
-@comment
-%%NO_CLIENTS%%lib/liblber.a
-%%NO_CLIENTS%%lib/liblber.so
-%%NO_CLIENTS%%lib/liblber.so.2
-%%NO_CLIENTS%%lib/libldap.a
-%%NO_CLIENTS%%lib/libldap.so
-%%NO_CLIENTS%%lib/libldap.so.2
-%%NO_CLIENTS%%lib/libldap_r.a
-%%NO_CLIENTS%%lib/libldap_r.so
-%%NO_CLIENTS%%lib/libldap_r.so.2
-@comment using USE_LIBTOOL make openldap to no longer to compile, so intall these 3 :(
-%%NO_CLIENTS%%lib/liblber.la
-%%NO_CLIENTS%%lib/libldap.la
-%%NO_CLIENTS%%lib/libldap_r.la
-@comment
-%%NO_CLIENTS%%share/openldap/ucdata/case.dat
-%%NO_CLIENTS%%share/openldap/ucdata/cmbcl.dat
-%%NO_CLIENTS%%share/openldap/ucdata/comp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/ctype.dat
-%%NO_CLIENTS%%share/openldap/ucdata/decomp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/num.dat
-%%NO_CLIENTS%%share/openldap/ucdata/kdecomp.dat
-%%NO_CLIENTS%%@dirrm share/openldap/ucdata
-%%NO_CLIENTS%%@dirrm share/openldap
-@comment -----------------------------------------
-@comment BUILD_SLURPD
-@comment -----------------------------------------
-%%NO_SLUPRD%%etc/rc.d/slurpd.sh.sample
-%%NO_SLUPRD%%libexec/slurpd
-%%NO_SLUPRD%%@exec [ -d /var/db/openldap-slurp ] || /bin/mkdir /var/db/openldap-slurp
-%%NO_SLUPRD%%@unexec /bin/rmdir /var/db/openldap-slurp 2>/dev/null || true
-@comment
-@comment -----------------------------------------
-@comment BUILD_SLAPD
-@comment -----------------------------------------
-%%NO_SLAPD%%etc/rc.d/slapd.sh.sample
-%%NO_SLAPD%%libexec/slapd
-%%NO_SLAPD%%sbin/slapadd
-%%NO_SLAPD%%sbin/slapcat
-%%NO_SLAPD%%sbin/slapindex
-%%NO_SLAPD%%sbin/slappasswd
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
-%%NO_SLAPD%%etc/openldap/slapd.conf.default
-%%NO_SLAPD%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/README
-%%NO_SLAPD%%etc/openldap/schema/corba.schema.default
-%%NO_SLAPD%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/core.schema.default
-%%NO_SLAPD%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/cosine.schema.default
-%%NO_SLAPD%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/inetorgperson.schema.default
-%%NO_SLAPD%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/java.schema.default
-%%NO_SLAPD%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/misc.schema.default
-%%NO_SLAPD%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/nis.schema.default
-%%NO_SLAPD%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/openldap.schema.default
-%%NO_SLAPD%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/db/openldap-data ] || /bin/mkdir /var/db/openldap-data
-%%NO_SLAPD%%@unexec /bin/rmdir /var/db/openldap-data 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/run/ldap ] || /bin/mkdir /var/run/ldap
-%%NO_SLAPD%%@unexec /bin/rmdir /var/run/ldap 2>/dev/null || true
+bin/ldapadd
+bin/ldapcompare
+bin/ldapdelete
+bin/ldapmodify
+bin/ldapmodrdn
+bin/ldappasswd
+bin/ldapsearch
+bin/ldapwhoami
+%%SERVER%%@unexec %D/etc/rc.d/slapd.sh stop 2>/dev/null || true
+%%SERVER%%@unexec %D/etc/rc.d/slurpd.sh stop 2>/dev/null || true
+@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
+etc/openldap/ldap.conf.default
+@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
+%%SERVER%%etc/openldap/schema/README
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
+%%SERVER%%etc/openldap/schema/corba.schema.default
+%%SERVER%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
+%%SERVER%%etc/openldap/schema/core.schema.default
+%%SERVER%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
+%%SERVER%%etc/openldap/schema/cosine.schema.default
+%%SERVER%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
+%%SERVER%%etc/openldap/schema/inetorgperson.schema.default
+%%SERVER%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
+%%SERVER%%etc/openldap/schema/java.schema.default
+%%SERVER%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
+%%SERVER%%etc/openldap/schema/misc.schema.default
+%%SERVER%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
+%%SERVER%%etc/openldap/schema/nis.schema.default
+%%SERVER%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
+%%SERVER%%etc/openldap/schema/openldap.schema.default
+%%SERVER%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
+%%SERVER%%etc/openldap/slapd.conf.default
+%%SERVER%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
+%%SERVER%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
+@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
+%%SERVER%%etc/rc.d/slapd.sh
+%%SERVER%%etc/rc.d/slurpd.sh
+include/lber.h
+include/lber_types.h
+include/ldap.h
+include/ldap_cdefs.h
+include/ldap_features.h
+include/ldap_schema.h
+include/ldap_utf8.h
+include/slapi-plugin.h
+lib/liblber.a
+lib/liblber.so
+lib/liblber.so.2
+lib/libldap.a
+lib/libldap.so
+lib/libldap.so.2
+lib/libldap_r.a
+lib/libldap_r.so
+lib/libldap_r.so.2
+%%SLAPI%%lib/libslapi.a
+%%SLAPI%%lib/libslapi.so
+%%SLAPI%%lib/libslapi.so.2
+%%SERVER%%libexec/slapd
+%%SERVER%%libexec/slurpd
+%%SERVER%%sbin/slapadd
+%%SERVER%%sbin/slapcat
+%%SERVER%%sbin/slapindex
+%%SERVER%%sbin/slappasswd
+share/openldap/ucdata/case.dat
+share/openldap/ucdata/cmbcl.dat
+share/openldap/ucdata/comp.dat
+share/openldap/ucdata/ctype.dat
+share/openldap/ucdata/decomp.dat
+share/openldap/ucdata/kdecomp.dat
+share/openldap/ucdata/num.dat
+@dirrm share/openldap/ucdata
+@dirrm share/openldap
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-slurp 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-data 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LDAP_RUN_DIR%% 2>/dev/null || true
diff --git a/net/openldap23-server/Makefile b/net/openldap23-server/Makefile
index fa44a42c5fd8..5b6c9d83f226 100644
--- a/net/openldap23-server/Makefile
+++ b/net/openldap23-server/Makefile
@@ -1,26 +1,12 @@
-# New ports collection makefile for: OpenLDAP 2.1
-# Date created: 5 Dec 2002
-# Whom: Christian Kratzer <ck@cksoft.de>
-#
-# This port allows separation of the openldap client and servers
-# using following options
-#
-# default builds openldap21-PORTVERSION
-# CLIENT_ONLY builds openldap21-client-PORTVERSION (clients and libs)
-# SLAPD_ONLY builds openldap21-slapd-PORTVERSION (slapd and slapd tools)
-# SLURPD_ONLY builds openldap21-slurpd-PORTVERSION (slurpd only)
-# SERVERS_ONLY builds openldap21-servers-PORTVERSION (slapd and slurpd)
-# WITHOUT_SASL do not build against sasl2
-#
-# OPENLDAP_STABLE an attempt to track the openldap stable branch
-# It remains to be seen if this stays practical.
+# New ports collection makefile for: OpenLDAP 2.2
+# Date created: 20 Sep 1998
+# Whom: Lachlan O'Dea
#
# $FreeBSD$
#
-PORTNAME= openldap21
-PORTVERSION= 2.1.20
-PORTREVISION= 1
+PORTNAME= openldap
+PORTVERSION= ${OPENLDAP_VERSION}.a
CATEGORIES= net databases
MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
http://public.planetmirror.com/pub/openldap/%SUBDIR%/ \
@@ -34,427 +20,177 @@ MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
ftp://ftp.linux.pt/pub/mirrors/OpenLDAP/%SUBDIR%/ \
ftp://ftp.si.uniovi.es/mirror/OpenLDAP/%SUBDIR%/ \
ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/%SUBDIR%/ \
+ http://openldap.cdpa.nsysu.edu.tw/OpenLDAP/%SUBDIR%/ \
+ ftp://ftp.u-aizu.ac.jp/pub/net/openldap/%SUBDIR%/ \
ftp://ftp.plig.org/pub/OpenLDAP/%SUBDIR%/
-.if defined(OPENLDAP_STABLE)
-MASTER_SITE_SUBDIR= openldap-stable
-DISTNAME= openldap-stable-20030410
-PKGNAMESUFFIX= -stable
-WRKSRC= ${WRKDIR}/openldap-${PORTVERSION}
-.else
-MASTER_SITE_SUBDIR= openldap-release
-DISTNAME= openldap-${PORTVERSION}
-.endif
+MASTER_SITE_SUBDIR= openldap-test
+DISTNAME= openldap-${OPENLDAP_VERSION}alpha
EXTRACT_SUFX= .tgz
-MAINTAINER= ck@cksoft.de
-COMMENT= Open source LDAP client and server software
+MAINTAINER= eikemeier@fillmore-labs.com
+COMMENT= Open source LDAP client and server implementation
-LIB_DEPENDS+= db41:${PORTSDIR}/databases/db41
+OPENLDAP_VERSION= 2.2.0
-CXXFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+CONFLICTS= openldap*
-CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+LATEST_LINK= openldap2
-LDFLAGS+= -L${LOCALBASE}/lib
+USE_OPENSSL= yes
+USE_REINPLACE= yes
+USE_LIBTOOL_VER= 14
-USE_OPENSSL= yes
-HAS_CONFIGURE= yes
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGMESSAGE= ${WRKDIR}/pkg-message
-CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}"
+LOCALSTATEDIR?= /var/db
+LDAP_RUN_DIR?= /var/run/openldap
-CONFIGURE_ARGS+=--prefix=${PREFIX} \
- --enable-bdb \
- --enable-crypt
+WITH_BDB_VER?= 41
-.if defined(WITHOUT_SASL)
-CONFIGURE_ARGS+= \
- --without-cyrus-sasl
-.else
-LIB_DEPENDS+= sasl2:${PORTSDIR}/security/cyrus-sasl2
-CONFIGURE_ARGS+= \
- --with-cyrus-sasl \
- --enable-spasswd
-.endif
+CONFIGURE_ARGS= --with-threads \
+ --with-tls=openssl
-# ------------------------------------------------------------------------------
-# common configure
-#
-CONFIGURE_ARGS+= \
- --with-tls \
- --localstatedir=/var/db
+SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
+ -e 's,%%LDAP_RUN_DIR%%,${LDAP_RUN_DIR},g' \
+ -e 's,%%LOCALSTATEDIR%%,${LOCALSTATEDIR},g'
-# Include tcp-wrapper support
-.if exists(/usr/include/tcpd.h)
-CONFIGURE_ARGS+= --enable-wrappers
+.if defined(CLIENT_ONLY)
+PKGNAMESUFFIX= -client
+CONFIGURE_ARGS+= --disable-slapd
+PLIST_SUB+= SERVER="@comment " \
+ SLAPI="@comment "
+SED_SCRIPT+= -e '/^%%SERVER%%/d'
+.else
+CONFIGURE_ARGS+= --localstatedir=${LOCALSTATEDIR} \
+ --enable-lmpasswd \
+ --enable-ldbm \
+ --with-ldbm-api=berkeley \
+ --enable-ldap \
+ --enable-meta \
+ --enable-rewrite \
+ --enable-null \
+ --enable-monitor
+
+.if ${WITH_BDB_VER} == 41
+LIB_DEPENDS= db41.1:${PORTSDIR}/databases/db41
+CONFIGURE_ARGS+= --enable-bdb
+.elif ${WITH_BDB_VER} == 4
+LIB_DEPENDS= db4.0:${PORTSDIR}/databases/db4
+CONFIGURE_ARGS+= --disable-bdb
+.elif ${WITH_BDB_VER} == 3
+LIB_DEPENDS= db3.3:${PORTSDIR}/databases/db3
+CONFIGURE_ARGS+= --disable-bdb
+.else
+.error WITH_BDB_VER must be 3, 4 or 41
.endif
+LIBS+= -ldb${WITH_BDB_VER}
+CPPFLAGS+= -I${LOCALBASE}/include/db${WITH_BDB_VER}
-.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 400014
-CONFIGURE_ARGS+= --enable-ipv6
+.if defined(WITH_SHELL)
+CONFIGURE_ARGS+= --enable-shell
.endif
-.if defined(CLIENT_ONLY)
-# ------------------------------------------------------------------------------
-# libraries and client applications only
-#
-BUILD_CLIENTS= yes
-INSTALLS_SHLIB= yes
-PKGNAMESUFFIX= -client
-COMMENT= Open source LDAP client software
-CONFIGURE_ARGS+= \
- --disable-slapd \
- --disable-slurpd \
- --enable-shared \
- --enable-static
-
-.elif defined(SLAPD_ONLY)
-# ------------------------------------------------------------------------------
-# slapd only
-#
-BUILD_SLAPD= yes
-PKGNAMESUFFIX= -slapd
-COMMENT= Open source LDAP server software (slapd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --disable-slurpd \
- --disable-shared \
- --disable-static \
- --without-threads \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell
-
-.elif defined(SLURPD_ONLY)
-# ------------------------------------------------------------------------------
-# slurpd only
-# NOTE: to build slurpd only package we have to build slapd
-# and some backend we just don't install them later on
-#
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -slurpd
-COMMENT= Open source LDAP server software (slurpd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-RUN_DEPENDS+= ${LOCALBASE}/libexec/slapd:${PORTSDIR}/net/openldap-slapd2.1
-CONFIGURE_ARGS+= \
- --enable-slurpd \
- --enable-slapd \
- --disable-shared \
- --disable-static \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell \
- --with-threads
-
-.elif defined(SERVERS_ONLY)
-# ------------------------------------------------------------------------------
-# slapd and slurpd
-#
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -server
-COMMENT= Open source LDAP server software (slapd and slurpd)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --enable-slurpd \
- --disable-shared \
- --disable-static \
- --with-threads \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell
+.if defined(WITH_PERL)
+.error build with Perl backend broken: <http://www.openldap.org/its/index.cgi/Development?id=2513>
+USE_PERL5= yes
+CONFIGURE_ARGS+= --enable-perl
+.endif
+.if defined(WITH_SASL)
+LIB_DEPENDS+= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
+CONFIGURE_ARGS+= --with-cyrus-sasl \
+ --enable-spasswd
.else
-# ------------------------------------------------------------------------------
-#
-# full package
-#
-INSTALLS_SHLIB= yes
-BUILD_CLIENTS= yes
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-CONFIGURE_ARGS+= \
- --with-threads \
- --enable-slapd \
- --enable-slurpd \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell \
- --enable-shared \
- --enable-static
+CONFIGURE_ARGS+= --without-cyrus-sasl
+.endif
+.if defined(WITH_ODBC)
+LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
+CONFIGURE_ARGS+= --enable-sql
.endif
-# ------------------------------------------------------------------------------
-# PLIST subs and MAN?/MLINKS
-#
-.if defined(BUILD_CLIENTS)
-PLIST_SUB+= NO_CLIENTS=
-MAN1+= ldapcompare.1
-MAN1+= ldapdelete.1
-MAN1+= ldapmodify.1
-MLINKS+= ldapmodify.1 ldapadd.1
-MAN1+= ldapmodrdn.1
-MAN1+= ldappasswd.1
-MAN1+= ldapsearch.1
-MAN1+= ldapwhoami.1
-MAN3+= lber-decode.3
-MLINKS+= lber-decode.3 ber_get_next.3
-MLINKS+= lber-decode.3 ber_skip_tag.3
-MLINKS+= lber-decode.3 ber_peek_tag.3
-MLINKS+= lber-decode.3 ber_scanf.3
-MLINKS+= lber-decode.3 ber_get_int.3
-MLINKS+= lber-decode.3 ber_get_enum.3
-MLINKS+= lber-decode.3 ber_get_stringb.3
-MLINKS+= lber-decode.3 ber_get_stringa.3
-MLINKS+= lber-decode.3 ber_get_stringal.3
-MLINKS+= lber-decode.3 ber_get_stringbv.3
-MLINKS+= lber-decode.3 ber_get_null.3
-MLINKS+= lber-decode.3 ber_get_boolean.3
-MLINKS+= lber-decode.3 ber_get_bitstring.3
-MLINKS+= lber-decode.3 ber_first_element.3
-MLINKS+= lber-decode.3 ber_next_element.3
-MAN3+= lber-encode.3
-MLINKS+= lber-encode.3 ber_alloc_t.3
-MLINKS+= lber-encode.3 ber_flush.3
-MLINKS+= lber-encode.3 ber_printf.3
-MLINKS+= lber-encode.3 ber_put_int.3
-MLINKS+= lber-encode.3 ber_put_enum.3
-MLINKS+= lber-encode.3 ber_put_ostring.3
-MLINKS+= lber-encode.3 ber_put_string.3
-MLINKS+= lber-encode.3 ber_put_null.3
-MLINKS+= lber-encode.3 ber_put_boolean.3
-MLINKS+= lber-encode.3 ber_put_bitstring.3
-MLINKS+= lber-encode.3 ber_start_seq.3
-MLINKS+= lber-encode.3 ber_start_set.3
-MLINKS+= lber-encode.3 ber_put_seq.3
-MLINKS+= lber-encode.3 ber_put_set.3
-MAN3+= lber-memory.3
-MLINKS+= lber-memory.3 ber_memalloc.3
-MLINKS+= lber-memory.3 ber_memcalloc.3
-MLINKS+= lber-memory.3 ber_memrealloc.3
-MLINKS+= lber-memory.3 ber_memfree.3
-MLINKS+= lber-memory.3 ber_memvfree.3
-MAN3+= lber-types.3
-MLINKS+= lber-types.3 ber_int_t.3
-MLINKS+= lber-types.3 ber_uint_t.3
-MLINKS+= lber-types.3 ber_len_t.3
-MLINKS+= lber-types.3 ber_slen_t.3
-MLINKS+= lber-types.3 ber_tag_t.3
-MAN3+= ldap.3
-MAN3+= ldap_abandon.3
-MLINKS+= ldap_abandon.3 ldap_abandon_ext.3
-MAN3+= ldap_add.3
-MLINKS+= ldap_add.3 ldap_add_s.3
-MLINKS+= ldap_add.3 ldap_add_ext.3
-MLINKS+= ldap_add.3 ldap_add_ext_s.3
-MAN3+= ldap_bind.3
-MLINKS+= ldap_bind.3 ldap_bind_s.3
-MLINKS+= ldap_bind.3 ldap_simple_bind.3
-MLINKS+= ldap_bind.3 ldap_simple_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_interactive_bind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind.3
-MLINKS+= ldap_bind.3 ldap_unbind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext_s.3
-MLINKS+= ldap_bind.3 ldap_set_rebind_proc.3
-MAN3+= ldap_compare.3
-MLINKS+= ldap_compare.3 ldap_compare_s.3
-MLINKS+= ldap_compare.3 ldap_compare_ext.3
-MLINKS+= ldap_compare.3 ldap_compare_ext_s.3
-MAN3+= ldap_delete.3
-MLINKS+= ldap_delete.3 ldap_delete_s.3
-MLINKS+= ldap_delete.3 ldap_delete_ext.3
-MLINKS+= ldap_delete.3 ldap_delete_ext_s.3
-MAN3+= ldap_error.3
-MLINKS+= ldap_error.3 ldap_perror.3
-MLINKS+= ldap_error.3 ld_errno.3
-MLINKS+= ldap_error.3 ldap_result2error.3
-MLINKS+= ldap_error.3 ldap_errlist.3
-MLINKS+= ldap_error.3 ldap_err2string.3
-MAN3+= ldap_first_attribute.3
-MLINKS+= ldap_first_attribute.3 ldap_next_attribute.3
-MAN3+= ldap_first_entry.3
-MLINKS+= ldap_first_entry.3 ldap_next_entry.3
-MLINKS+= ldap_first_entry.3 ldap_count_entries.3
-MAN3+= ldap_first_message.3
-MLINKS+= ldap_first_message.3 ldap_next_message.3
-MLINKS+= ldap_first_message.3 ldap_count_messages.3
-MAN3+= ldap_first_reference.3
-MLINKS+= ldap_first_reference.3 ldap_next_reference.3
-MLINKS+= ldap_first_reference.3 ldap_count_references.3
-MAN3+= ldap_get_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_rdn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ufn.3
-MLINKS+= ldap_get_dn.3 ldap_str2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2str.3
-MLINKS+= ldap_get_dn.3 ldap_dn2dcedn.3
-MLINKS+= ldap_get_dn.3 ldap_dcedn2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ad_canonical.3
-MAN3+= ldap_get_values.3
-MLINKS+= ldap_get_values.3 ldap_get_values_len.3
-MLINKS+= ldap_get_values.3 ldap_count_values.3
-MLINKS+= ldap_get_values.3 ldap_count_values_len.3
-MLINKS+= ldap_get_values.3 ldap_value_free.3
-MLINKS+= ldap_get_values.3 ldap_value_free_len.3
-MAN3+= ldap_modify.3
-MLINKS+= ldap_modify.3 ldap_modify_s.3
-MLINKS+= ldap_modify.3 ldap_modify_ext.3
-MLINKS+= ldap_modify.3 ldap_modify_ext_s.3
-MLINKS+= ldap_modify.3 ldap_mods_free.3
-MAN3+= ldap_open.3
-MLINKS+= ldap_open.3 ldap_init.3
-MAN3+= ldap_modrdn.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn_s.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2_s.3
-MAN3+= ldap_parse_reference.3
-MAN3+= ldap_parse_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_sasl_bind_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_extended_result.3
-MAN3+= ldap_result.3
-MLINKS+= ldap_result.3 ldap_msgfree.3
-MLINKS+= ldap_result.3 ldap_msgtype.3
-MLINKS+= ldap_result.3 ldap_msgid.3
-MAN3+= ldap_schema.3
-MLINKS+= ldap_schema.3 ldap_str2syntax.3
-MLINKS+= ldap_schema.3 ldap_syntax2str.3
-MLINKS+= ldap_schema.3 ldap_syntax2name.3
-MLINKS+= ldap_schema.3 ldap_syntax_free.3
-MLINKS+= ldap_schema.3 ldap_str2matchingrule.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2str.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2name.3
-MLINKS+= ldap_schema.3 ldap_matchingrule_free.3
-MLINKS+= ldap_schema.3 ldap_str2attributetype.3
-MLINKS+= ldap_schema.3 ldap_attributetype2str.3
-MLINKS+= ldap_schema.3 ldap_attributetype2name.3
-MLINKS+= ldap_schema.3 ldap_attributetype_free.3
-MLINKS+= ldap_schema.3 ldap_str2objectclass.3
-MLINKS+= ldap_schema.3 ldap_objectclass2str.3
-MLINKS+= ldap_schema.3 ldap_objectclass2name.3
-MLINKS+= ldap_schema.3 ldap_objectclass_free.3
-MLINKS+= ldap_schema.3 ldap_scherr2str.3
-MAN3+= ldap_search.3
-MLINKS+= ldap_search.3 ldap_search_s.3
-MLINKS+= ldap_search.3 ldap_search_st.3
-MLINKS+= ldap_search.3 ldap_search_ext.3
-MLINKS+= ldap_search.3 ldap_search_ext_s.3
-MAN3+= ldap_sort.3
-MLINKS+= ldap_sort.3 ldap_sort_entries.3
-MLINKS+= ldap_sort.3 ldap_sort_values.3
-MLINKS+= ldap_sort.3 ldap_sort_strcasecmp.3
-MAN3+= ldap_url.3
-MLINKS+= ldap_url.3 ldap_is_ldap_url.3
-MLINKS+= ldap_url.3 ldap_url_parse.3
-MLINKS+= ldap_url.3 ldap_free_urldesc.3
+.if defined(WITH_SLAPI)
+LIB_DEPENDS+= ltdl.4:${PORTSDIR}/devel/libltdl
+CONFIGURE_ARGS+= --enable-slapi
+LIBS+= -lltdl
+PLIST_SUB+= SLAPI=""
.else
-PLIST_SUB+= NO_CLIENTS="@comment "
+PLIST_SUB+= SLAPI="@comment "
.endif
-.if defined(BUILD_SLAPD)
-PLIST_SUB+= NO_SLAPD=
-MAN5+= ldap.conf.5
-MAN5+= ldif.5
-MAN5+= slapd-bdb.5
-MAN5+= slapd-dnssrv.5
-MAN5+= slapd-ldap.5
-MAN5+= slapd-ldbm.5
-MAN5+= slapd-meta.5
-MAN5+= slapd-null.5
-MAN5+= slapd-passwd.5
-MAN5+= slapd-perl.5
-MAN5+= slapd-shell.5
-MAN5+= slapd-sql.5
-MAN5+= slapd-tcl.5
-MAN5+= slapd.access.5
-MAN5+= slapd.conf.5
-MAN5+= slapd.replog.5
-MAN8+= slapadd.8
-MAN8+= slapcat.8
-MAN8+= slapd.8
-MAN8+= slapindex.8
-MAN8+= slappasswd.8
-.else
-PLIST_SUB+= NO_SLAPD="@comment "
+
+# Include tcp-wrapper support
+.if !defined(WITHOUT_TCP_WRAPPERS) && exists(/usr/include/tcpd.h)
+CONFIGURE_ARGS+= --enable-wrappers
.endif
-.if defined(BUILD_SLURPD)
-PLIST_SUB+= NO_SLUPRD=""
-MAN8+= slurpd.8
-.else
-PLIST_SUB+= NO_SLUPRD="@comment "
+
+PLIST_SUB+= SERVER=""
+SED_SCRIPT+= -e '/^%%SERVER%%/s,,,'
.endif
+PLIST_SUB+= LOCALSTATEDIR=${LOCALSTATEDIR} \
+ LDAP_RUN_DIR=${LDAP_RUN_DIR}
+
+# math.h uses _REENTRANT and stdio.h uses _THREAD_SAFE, so define both.
+CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
+ -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+CONFIGURE_TARGET= --host=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBS="${LIBS}"
+
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.pre.mk>
+.include "${FILESDIR}/manpages"
+
+pre-everything::
+ @${ECHO} "============================================================="
+ @${ECHO}
+ @${ECHO} "You can build ${PKGNAME} with the following options:"
+ @${ECHO}
+ @${ECHO} "WITH_BDB_VER select BerkeleyDB version (default 4.1)"
+ @${ECHO} "WITH_SASL with SASL2 authorization"
+ @${ECHO} "WITH_PERL with Perl backend"
+ @${ECHO} "WITH_SHELL with Shell backend"
+ @${ECHO} "WITH_ODBC with SQL backend"
+ @${ECHO} "WITH_SLAPI with Netscape SLAPI plugin API
+ @${ECHO} "WITHOUT_TCP_WRAPPERS without tcp wrapper support"
+ @${ECHO}
+ @${ECHO} "============================================================="
+ @${ECHO}
+
post-patch:
- @${CP} ${WRKSRC}/servers/slapd/slapd.conf \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist
- @${SED} -e '/^pidfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- -e '/^argsfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist > \
+ @${REINPLACE_CMD} -e 's,%LOCALSTATEDIR%/slapd\.,${LDAP_RUN_DIR}/slapd.,g' \
${WRKSRC}/servers/slapd/slapd.conf
post-build:
-.if defined(BUILD_SLAPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slapd.sh >${WRKDIR}/slapd.sh
-.endif
-.if defined(BUILD_SLURPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slurpd.sh >${WRKDIR}/slurpd.sh
-.endif
-
-do-install:
-.if defined(BUILD_CLIENTS) && defined (BUILD_SLAPD) && defined (BUILD_SLURPD)
- @cd ${WRKSRC} && ${MAKE} install
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.else
-.if defined(BUILD_CLIENTS)
- @cd ${WRKSRC}/include && ${MAKE} install
- @cd ${WRKSRC}/clients && ${MAKE} install
- @cd ${WRKSRC}/libraries && ${MAKE} install
-.for i in 1 3
- @cd ${WRKSRC}/doc/man/man$i && ${MAKE} install
+.for script in slapd.sh slurpd.sh
+ @${SED} ${SED_SCRIPT} ${FILESDIR}/${script} >${WRKDIR}/${script}
+.endfor
+.for text in pkg-install pkg-message
+ @${SED} ${SED_SCRIPT} ${.CURDIR}/${text} >${WRKDIR}/${text}
.endfor
-.endif
-.if defined(BUILD_SLAPD)
- @cd ${WRKSRC}/servers/slapd && ${MAKE} install
- @cd ${WRKSRC}/doc/man/man5 && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapadd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapcat.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapindex.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slappasswd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${MKDIR} /var/db
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
-.endif
-.if defined(BUILD_SLURPD)
- @cd ${WRKSRC}/servers/slurpd && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slurpd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${INSTALL_TARGET} -c -o root -g wheel -m 700 -d /var/db/openldap-slurp
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.endif
-.endif
post-install:
-.if defined(BUILD_SLAPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${PREFIX}/etc/rc.d/slapd.sh.sample
-.endif
-.if defined(BUILD_SLURPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d/slurpd.sh.sample
-.endif
+.if !defined(CLIENT_ONLY)
+ @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d
+ @${MKDIR} ${LDAP_RUN_DIR}
+.endif
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @for dir in rfc drafts; do \
+ ${MKDIR} ${DOCSDIR}/$${dir}; \
+ ${FIND} ${WRKSRC}/doc/$${dir} -maxdepth 1 -type f \
+ -exec ${INSTALL_DATA} {} ${DOCSDIR}/$${dir} \; -print \
+ | ${SED} -e "s,^${WRKSRC}/doc/,${DOCSDIR:S,^${PREFIX}/,,}/," \
+ >>${TMPPLIST}; \
+ ${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}/$${dir}" >>${TMPPLIST}; \
+ done
+ @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >>${TMPPLIST}
+.endif
+ @${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>
diff --git a/net/openldap23-server/distinfo b/net/openldap23-server/distinfo
index 341a1c1cc0ca..eef25e637b2e 100644
--- a/net/openldap23-server/distinfo
+++ b/net/openldap23-server/distinfo
@@ -1,2 +1 @@
-MD5 (openldap-stable-20030410.tgz) = 53fb6c157a7c54b988cf7555e56f11e6
-MD5 (openldap-2.1.20.tgz) = fe6d5f8571672e3107b42299a03e92ce
+MD5 (openldap-2.2.0alpha.tgz) = 72fe342067b717a37b9697898dacfa0a
diff --git a/net/openldap23-server/files/manpages b/net/openldap23-server/files/manpages
new file mode 100644
index 000000000000..d3830d3afa8b
--- /dev/null
+++ b/net/openldap23-server/files/manpages
@@ -0,0 +1,188 @@
+MAN1+= ldapcompare.1 \
+ ldapdelete.1 \
+ ldapmodify.1 \
+ ldapmodrdn.1 \
+ ldappasswd.1 \
+ ldapsearch.1 \
+ ldapwhoami.1
+MLINKS+= \
+ ldapmodify.1 ldapadd.1
+
+MAN3+= lber-decode.3 \
+ lber-encode.3 \
+ lber-memory.3 \
+ lber-types.3 \
+ ldap.3 \
+ ldap_abandon.3 \
+ ldap_add.3 \
+ ldap_bind.3 \
+ ldap_compare.3 \
+ ldap_delete.3 \
+ ldap_error.3 \
+ ldap_first_attribute.3 \
+ ldap_first_entry.3 \
+ ldap_first_message.3 \
+ ldap_first_reference.3 \
+ ldap_get_dn.3 \
+ ldap_get_values.3 \
+ ldap_modify.3 \
+ ldap_modrdn.3 \
+ ldap_open.3 \
+ ldap_parse_reference.3 \
+ ldap_parse_result.3 \
+ ldap_result.3 \
+ ldap_schema.3 \
+ ldap_search.3 \
+ ldap_sort.3 \
+ ldap_url.3
+MLINKS+= \
+ lber-decode.3 ber_first_element.3 \
+ lber-decode.3 ber_get_bitstring.3 \
+ lber-decode.3 ber_get_boolean.3 \
+ lber-decode.3 ber_get_enum.3 \
+ lber-decode.3 ber_get_int.3 \
+ lber-decode.3 ber_get_next.3 \
+ lber-decode.3 ber_get_null.3 \
+ lber-decode.3 ber_get_stringa.3 \
+ lber-decode.3 ber_get_stringb.3 \
+ lber-decode.3 ber_next_element.3 \
+ lber-decode.3 ber_peek_tag.3 \
+ lber-decode.3 ber_scanf.3 \
+ lber-decode.3 ber_skip_tag.3 \
+ lber-encode.3 ber_alloc_t.3 \
+ lber-encode.3 ber_flush.3 \
+ lber-encode.3 ber_printf.3 \
+ lber-encode.3 ber_put_enum.3 \
+ lber-encode.3 ber_put_int.3 \
+ lber-encode.3 ber_put_null.3 \
+ lber-encode.3 ber_put_ostring.3 \
+ lber-encode.3 ber_put_seq.3 \
+ lber-encode.3 ber_put_set.3 \
+ lber-encode.3 ber_put_string.3 \
+ lber-encode.3 ber_start_set.3 \
+ lber-types.3 ber_bvarray_add.3 \
+ lber-types.3 ber_bvarray_free.3 \
+ lber-types.3 ber_bvdup.3 \
+ lber-types.3 ber_bvecadd.3 \
+ lber-types.3 ber_bvecfree.3 \
+ lber-types.3 ber_bvfree.3 \
+ lber-types.3 ber_bvstr.3 \
+ lber-types.3 ber_bvstrdup.3 \
+ lber-types.3 ber_dupbv.3 \
+ lber-types.3 ber_free.3 \
+ lber-types.3 ber_str2bv.3 \
+ ldap_abandon.3 ldap_abandon_ext.3 \
+ ldap_add.3 ldap_add_ext.3 \
+ ldap_add.3 ldap_add_ext_s.3 \
+ ldap_add.3 ldap_add_s.3 \
+ ldap_bind.3 ldap_bind_s.3 \
+ ldap_bind.3 ldap_kerberos_bind1.3 \
+ ldap_bind.3 ldap_kerberos_bind1_s.3 \
+ ldap_bind.3 ldap_kerberos_bind2.3 \
+ ldap_bind.3 ldap_kerberos_bind2_s.3 \
+ ldap_bind.3 ldap_kerberos_bind_s.3 \
+ ldap_bind.3 ldap_sasl_bind.3 \
+ ldap_bind.3 ldap_sasl_bind_s.3 \
+ ldap_bind.3 ldap_simple_bind.3 \
+ ldap_bind.3 ldap_simple_bind_s.3 \
+ ldap_bind.3 ldap_unbind.3 \
+ ldap_bind.3 ldap_unbind_ext.3 \
+ ldap_bind.3 ldap_unbind_ext_s.3 \
+ ldap_bind.3 ldap_unbind_s.3 \
+ ldap_compare.3 ldap_compare_ext.3 \
+ ldap_compare.3 ldap_compare_ext_s.3 \
+ ldap_compare.3 ldap_compare_s.3 \
+ ldap_delete.3 ldap_delete_ext.3 \
+ ldap_delete.3 ldap_delete_ext_s.3 \
+ ldap_delete.3 ldap_delete_s.3 \
+ ldap_error.3 ld_errno.3 \
+ ldap_error.3 ldap_err2string.3 \
+ ldap_error.3 ldap_errlist.3 \
+ ldap_error.3 ldap_perror.3 \
+ ldap_error.3 ldap_result2error.3 \
+ ldap_first_attribute.3 ldap_next_attribute.3 \
+ ldap_first_entry.3 ldap_count_entries.3 \
+ ldap_first_entry.3 ldap_next_entry.3 \
+ ldap_first_message.3 ldap_count_messages.3 \
+ ldap_first_message.3 ldap_next_message.3 \
+ ldap_first_reference.3 ldap_count_references.3 \
+ ldap_first_reference.3 ldap_next_reference.3 \
+ ldap_get_dn.3 ldap_dcedn2dn.3 \
+ ldap_get_dn.3 ldap_dn2ad_canonical.3 \
+ ldap_get_dn.3 ldap_dn2dcedn.3 \
+ ldap_get_dn.3 ldap_dn2str.3 \
+ ldap_get_dn.3 ldap_dn2ufn.3 \
+ ldap_get_dn.3 ldap_explode_dn.3 \
+ ldap_get_dn.3 ldap_explode_rdn.3 \
+ ldap_get_dn.3 ldap_str2dn.3 \
+ ldap_get_values.3 ldap_count_values.3 \
+ ldap_get_values.3 ldap_count_values_len.3 \
+ ldap_get_values.3 ldap_get_values_len.3 \
+ ldap_get_values.3 ldap_value_free.3 \
+ ldap_get_values.3 ldap_value_free_len.3 \
+ ldap_modify.3 ldap_modify_ext.3 \
+ ldap_modify.3 ldap_modify_ext_s.3 \
+ ldap_modify.3 ldap_modify_s.3 \
+ ldap_modify.3 ldap_mods_free.3 \
+ ldap_modrdn.3 ldap_modrdn2.3 \
+ ldap_modrdn.3 ldap_modrdn2_s.3 \
+ ldap_modrdn.3 ldap_modrdn_s.3 \
+ ldap_open.3 ldap_init.3 \
+ ldap_parse_result.3 ldap_parse_extended_result.3 \
+ ldap_parse_result.3 ldap_parse_sasl_bind_result.3 \
+ ldap_result.3 ldap_msgfree.3 \
+ ldap_result.3 ldap_msgid.3 \
+ ldap_result.3 ldap_msgtype.3 \
+ ldap_schema.3 ldap_attributetype2name.3 \
+ ldap_schema.3 ldap_attributetype2str.3 \
+ ldap_schema.3 ldap_attributetype_free.3 \
+ ldap_schema.3 ldap_matchingrule2name.3 \
+ ldap_schema.3 ldap_matchingrule2str.3 \
+ ldap_schema.3 ldap_matchingrule_free.3 \
+ ldap_schema.3 ldap_objectclass2name.3 \
+ ldap_schema.3 ldap_objectclass2str.3 \
+ ldap_schema.3 ldap_objectclass_free.3 \
+ ldap_schema.3 ldap_scherr2str.3 \
+ ldap_schema.3 ldap_str2attributetype.3 \
+ ldap_schema.3 ldap_str2matchingrule.3 \
+ ldap_schema.3 ldap_str2objectclass.3 \
+ ldap_schema.3 ldap_str2syntax.3 \
+ ldap_schema.3 ldap_syntax2name.3 \
+ ldap_schema.3 ldap_syntax2str.3 \
+ ldap_schema.3 ldap_syntax_free.3 \
+ ldap_search.3 ldap_search_ext.3 \
+ ldap_search.3 ldap_search_ext_s.3 \
+ ldap_search.3 ldap_search_s.3 \
+ ldap_search.3 ldap_search_st.3 \
+ ldap_sort.3 ldap_sort_entries.3 \
+ ldap_sort.3 ldap_sort_strcasecmp.3 \
+ ldap_sort.3 ldap_sort_values.3 \
+ ldap_url.3 ldap_free_urldesc.3 \
+ ldap_url.3 ldap_is_ldap_url.3 \
+ ldap_url.3 ldap_url_parse.3
+
+MAN5+= ldap.conf.5 \
+ ldif.5 \
+ slapd-bdb.5 \
+ slapd-dnssrv.5 \
+ slapd-ldap.5 \
+ slapd-ldbm.5 \
+ slapd-meta.5 \
+ slapd-monitor.5 \
+ slapd-null.5 \
+ slapd-passwd.5 \
+ slapd-perl.5 \
+ slapd-shell.5 \
+ slapd-sql.5 \
+ slapd-tcl.5 \
+ slapd.access.5 \
+ slapd.conf.5 \
+ slapd.plugin.5 \
+ slapd.replog.5
+
+MAN8+= slapadd.8 \
+ slapcat.8 \
+ slapd.8 \
+ slapindex.8 \
+ slappasswd.8 \
+ slurpd.8
diff --git a/net/openldap23-server/files/patch-build::ltmain.sh b/net/openldap23-server/files/patch-build::ltmain.sh
new file mode 100644
index 000000000000..502d6b5db739
--- /dev/null
+++ b/net/openldap23-server/files/patch-build::ltmain.sh
@@ -0,0 +1,15 @@
+--- build/ltmain.sh.orig Sun Feb 9 23:24:29 2003
++++ build/ltmain.sh Fri Jun 20 21:37:02 2003
+@@ -4285,12 +4285,6 @@
+ IFS="$save_ifs"
+ fi
+
+- # Install the pseudo-library for information purposes.
+- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+- instname="$dir/$name"i
+- $show "$install_prog $instname $destdir/$name"
+- $run eval "$install_prog $instname $destdir/$name" || exit $?
+-
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
diff --git a/net/openldap23-server/files/patch-libraries::liblutil::passwd.c b/net/openldap23-server/files/patch-libraries::liblutil::passwd.c
new file mode 100644
index 000000000000..32de74e9ee11
--- /dev/null
+++ b/net/openldap23-server/files/patch-libraries::liblutil::passwd.c
@@ -0,0 +1,14 @@
+#
+# ITS#2562: add missing arg to hash_lanman
+#
+--- libraries/liblutil/passwd.c.orig Fri May 2 13:29:29 2003
++++ libraries/liblutil/passwd.c Sun Jun 22 03:08:18 2003
+@@ -632,7 +632,7 @@
+ {
+ struct berval *hash;
+
+- hash = hash_lanman( scheme, cred );
++ hash = hash_lanman( scheme, cred, text );
+ return memcmp( &hash->bv_val[scheme->bv_len], passwd->bv_val, 32);
+ }
+ #endif /* SLAPD_LMHASH */
diff --git a/net/openldap23-server/files/patch-servers::slapd::daemon.c b/net/openldap23-server/files/patch-servers::slapd::daemon.c
new file mode 100644
index 000000000000..96afa46ebd8a
--- /dev/null
+++ b/net/openldap23-server/files/patch-servers::slapd::daemon.c
@@ -0,0 +1,11 @@
+--- servers/slapd/daemon.c.orig Sat May 24 21:12:20 2003
++++ servers/slapd/daemon.c Sun Jun 22 19:26:22 2003
+@@ -858,7 +858,7 @@
+ #ifdef LDAP_PF_LOCAL
+ case AF_LOCAL: {
+ char *addr = ((struct sockaddr_un *)*sal)->sun_path;
+-#if 0 /* don't muck with socket perms */
++#if 1
+ if ( chmod( addr, l.sl_perms ) < 0 && crit ) {
+ int err = sock_errno();
+ #ifdef NEW_LOGGING
diff --git a/net/openldap23-server/files/slapd.sh b/net/openldap23-server/files/slapd.sh
index e8f6ed6b018d..21bdf775a0b1 100644
--- a/net/openldap23-server/files/slapd.sh
+++ b/net/openldap23-server/files/slapd.sh
@@ -2,44 +2,57 @@
#
# $FreeBSD$
-slapd_program=@@PREFIX@@/libexec/slapd
+slapd_program=%%PREFIX%%/libexec/slapd
-# Uncomment one of the following:
-#
-# IPv4 Only
-#slapd_args='-u ldap -g ldap -h ldap://0.0.0.0'
+slapd_pidfile=%%LDAP_RUN_DIR%%/slapd.pid
+
+slapd_enable="NO"
+
+slapd_args=
+
+# Add the following lines to /etc/rc.conf to enable slapd:
#
-# IPv6 and IPv4
-#slapd_ags='-u ldap -g ldap -h "ldap://[::] ldap://0.0.0.0"'
+#slapd_enable="YES"
+#slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
#
-# IPv6 Only
-#slapd_args='-u ldap -g ldap -h ldap://[::]'
+# See sldap(8) for details
#
+# Create a user 'ldap' and add '-u ldap -g ldap' to slapd_args
+# if you want to run slapd as a non-privileged user (recommended)
#
-slapd_args="-u ldap -g ldap"
-
-pidfile=/var/run/ldap/slapd.pid
-case "$1" in
-start)
- if [ -x $slapd ]; then
- echo -n ' slapd'
- eval ${slapd_program} ${slapd_args}
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
- fi
- ;;
-stop)
- if [ -f $pidfile ]; then
- kill `cat $pidfile`
- echo -n ' slapd'
- rm $pidfile
- else
- echo ' slapd: not running'
- fi
+case "$slapd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slapd_program} ]; then
+ echo -n ' slapd'
+ eval ${slapd_program} ${slapd_args}
+ fi
+ ;;
+ stop)
+ if [ -f $slapd_pidfile ]; then
+ kill `cat $slapd_pidfile`
+ echo -n ' slapd'
+ else
+ echo ' slapd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
;;
esac
diff --git a/net/openldap23-server/files/slurpd.sh b/net/openldap23-server/files/slurpd.sh
index 9f347253a5d6..fc9f88f21cd6 100644
--- a/net/openldap23-server/files/slurpd.sh
+++ b/net/openldap23-server/files/slurpd.sh
@@ -1,34 +1,50 @@
#!/bin/sh
#
# $FreeBSD$
+
+slurpd_program=%%PREFIX%%/libexec/slurpd
+
+slurpd_enable="NO"
+
+slurpd_args=
+
+# Add the following line to /etc/rc.conf to enable slurpd:
+#
+#slurpd_enable="YES"
+#
+# See slurpd(8) for details
#
-slurpd=@@PREFIX@@/libexec/slurpd
-pidfile=/var/run/ldap/slurpd.pid
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
-case "$1" in
-start)
- if [ -x $slurpd ]; then
- echo -n ' slurpd'
- $slurpd &
- echo $! > $pidfile
- fi
- ;;
-stop)
- pids=`ps xa | awk '/slurpd/{ print $1 }'`
- for pid in $pids; do
- kill $pid
- echo -n " slurpd($pid)"
- done
- ;;
-restart)
- $0 stop
- $0 start
- ;;
+case "$slurpd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slurpd_program} ]; then
+ echo -n ' slurpd'
+ ${slurpd_program} ${slurpd_args}
+ fi
+ ;;
+ stop)
+ if ! killall `basename ${slurpd_program}`; then
+ echo ' slurpd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
+ ;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
- ;;
+ ;;
esac
exit 0
diff --git a/net/openldap23-server/pkg-descr b/net/openldap23-server/pkg-descr
index d582b6305fad..432cb85b0400 100644
--- a/net/openldap23-server/pkg-descr
+++ b/net/openldap23-server/pkg-descr
@@ -1,10 +1,15 @@
-OpenLDAP is a suite of Lightweight Directory Access Protocol(LDAP)
-servers, clients, utilities and development tools.
+OpenLDAP is a suite of Lightweight Directory Access Protocol (v3) servers,
+clients, utilities and development tools.
-OpenLDAP is derived from the University of Michigan LDAP release 3.3
-and is distributed under an open source license.
+This release includes the following major components:
-WWW: http://www.openldap.org/
+ * slapd - a stand-alone LDAP directory server
+ * slurpd - a stand-alone LDAP replication server
+ * -lldap - a LDAP client library
+ * -llber - a lightweight BER/DER encoding/decoding library
+ * LDIF tools - data conversion tools for use with slapd
+ * LDAP tools - A collection of command line LDAP utilities
-Bjoern A. Zeeb
-bzeeb+freebsdports@zabbadoz.net
+WWW: http://www.OpenLDAP.org/
+
+Lachlan O'Dea, Oliver Eikemeier
diff --git a/net/openldap23-server/pkg-install b/net/openldap23-server/pkg-install
index 76c6c8ff1b31..86dae2ce74da 100644
--- a/net/openldap23-server/pkg-install
+++ b/net/openldap23-server/pkg-install
@@ -1,52 +1,11 @@
#!/bin/sh
#
-# $FreeBSD$
+# $FreeBSD$
#
-
-PKG_PREFIX=${PKG_PREFIX:=/usr/local}
-BATCH=${BATCH:=no}
-
-USER=ldap
-USER_UID=389
-
-GROUP=ldap
-GROUP_GID=389
-
-if [ x"$2" = xPRE-INSTALL ]; then
- if /usr/sbin/pw groupshow "${GROUP}" 2>/dev/null; then
- echo "You already have a group \"${GROUP}\", so I will use it."
- else
- if /usr/sbin/pw groupadd ${GROUP} -g ${GROUP_GID} -h -
- then
- echo "Added group \"${GROUP}\"."
- else
- echo "Adding group \"${GROUP}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-
- if /usr/sbin/pw user show "${USER}" 2>/dev/null; then
- echo "You already have a user \"${USER}\", so I will use it."
- else
- if /usr/sbin/pw useradd ${USER} -u ${USER_UID} -g ${GROUP} -h - \
- -d /nonexistent \
- -s /sbin/nologin \
- -c "OpenLDAP Server"
- then
- echo "Added user \"${USER}\"."
- else
- echo "Adding user \"${USER}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-fi
-
-if [ x"$2" = xPOST-INSTALL ]; then
- chown -R $USER:$GROUP /var/db/openldap-data
- chown -R $USER:$GROUP /var/run/ldap
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf.default
+if [ X"$2" != X"POST-INSTALL" ]; then
+ exit 0;
fi
+%%SERVER%%mkdir -p "%%LDAP_RUN_DIR%%"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-data"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-slurp"
diff --git a/net/openldap23-server/pkg-message b/net/openldap23-server/pkg-message
index dce1c78534b1..fa99c9a88dd8 100644
--- a/net/openldap23-server/pkg-message
+++ b/net/openldap23-server/pkg-message
@@ -1,8 +1,30 @@
-The openldap21 port now creates a ldap user an a ldap group.
+************************************************************
-If you use slapadd as root to populate your ldap Database please
-remember to chown the database directories and containing files
-to user ldap and group ldap.
+The OpenLDAP package has been successfully installed.
- chown -R ldap:ldap /var/db/openldap-data
+Edit
+ %%PREFIX%%/etc/openldap/ldap.conf
+to change the system-wide client defaults.
+%%SERVER%%In order to run the OpenLDAP server, you need to edit
+%%SERVER%% %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%to suit your needs and add the next lines to /etc/rc.conf:
+%%SERVER%% slapd_enable="YES"
+%%SERVER%% slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
+%%SERVER%%
+%%SERVER%%Then start the server with
+%%SERVER%% %%PREFIX%%/etc/rc.d/slapd.sh start
+%%SERVER%%or reboot.
+%%SERVER%%
+%%SERVER%%NOTE: There is no real reason to run slapd as root. Add
+%%SERVER%% '-u ldap -g ldap'
+%%SERVER%%to slapd_args, create a user "ldap" with
+%%SERVER%% pw add group ldap -g 389
+%%SERVER%% pw add user ldap -u 389 -g 389 -d /nonexistent \
+%%SERVER%% -c "OpenLDAP Server" -s /sbin/nologin -p "*"
+%%SERVER%%and do
+%%SERVER%% chown -R ldap:ldap %%LDAP_RUN_DIR%% \
+%%SERVER%% %%LOCALSTATEDIR%%/openldap-data %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%and your server runs with a non-privileged user id.
+%%SERVER%%
+************************************************************
diff --git a/net/openldap23-server/pkg-plist b/net/openldap23-server/pkg-plist
index 6be84f593b88..ff9ec200b978 100644
--- a/net/openldap23-server/pkg-plist
+++ b/net/openldap23-server/pkg-plist
@@ -1,97 +1,83 @@
-@comment -----------------------------------------
-@comment BUILD_CLIENTS
-@comment -----------------------------------------
-%%NO_CLIENTS%%bin/ldapadd
-%%NO_CLIENTS%%bin/ldapcompare
-%%NO_CLIENTS%%bin/ldapdelete
-%%NO_CLIENTS%%bin/ldapmodify
-%%NO_CLIENTS%%bin/ldapmodrdn
-%%NO_CLIENTS%%bin/ldappasswd
-%%NO_CLIENTS%%bin/ldapsearch
-%%NO_CLIENTS%%bin/ldapwhoami
-%%NO_CLIENTS%%@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
-%%NO_CLIENTS%%etc/openldap/ldap.conf.default
-%%NO_CLIENTS%%@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
-@comment
-%%NO_CLIENTS%%include/lber.h
-%%NO_CLIENTS%%include/lber_types.h
-%%NO_CLIENTS%%include/ldap.h
-%%NO_CLIENTS%%include/ldap_cdefs.h
-%%NO_CLIENTS%%include/ldap_features.h
-%%NO_CLIENTS%%include/ldap_schema.h
-%%NO_CLIENTS%%include/ldap_utf8.h
-@comment
-%%NO_CLIENTS%%lib/liblber.a
-%%NO_CLIENTS%%lib/liblber.so
-%%NO_CLIENTS%%lib/liblber.so.2
-%%NO_CLIENTS%%lib/libldap.a
-%%NO_CLIENTS%%lib/libldap.so
-%%NO_CLIENTS%%lib/libldap.so.2
-%%NO_CLIENTS%%lib/libldap_r.a
-%%NO_CLIENTS%%lib/libldap_r.so
-%%NO_CLIENTS%%lib/libldap_r.so.2
-@comment using USE_LIBTOOL make openldap to no longer to compile, so intall these 3 :(
-%%NO_CLIENTS%%lib/liblber.la
-%%NO_CLIENTS%%lib/libldap.la
-%%NO_CLIENTS%%lib/libldap_r.la
-@comment
-%%NO_CLIENTS%%share/openldap/ucdata/case.dat
-%%NO_CLIENTS%%share/openldap/ucdata/cmbcl.dat
-%%NO_CLIENTS%%share/openldap/ucdata/comp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/ctype.dat
-%%NO_CLIENTS%%share/openldap/ucdata/decomp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/num.dat
-%%NO_CLIENTS%%share/openldap/ucdata/kdecomp.dat
-%%NO_CLIENTS%%@dirrm share/openldap/ucdata
-%%NO_CLIENTS%%@dirrm share/openldap
-@comment -----------------------------------------
-@comment BUILD_SLURPD
-@comment -----------------------------------------
-%%NO_SLUPRD%%etc/rc.d/slurpd.sh.sample
-%%NO_SLUPRD%%libexec/slurpd
-%%NO_SLUPRD%%@exec [ -d /var/db/openldap-slurp ] || /bin/mkdir /var/db/openldap-slurp
-%%NO_SLUPRD%%@unexec /bin/rmdir /var/db/openldap-slurp 2>/dev/null || true
-@comment
-@comment -----------------------------------------
-@comment BUILD_SLAPD
-@comment -----------------------------------------
-%%NO_SLAPD%%etc/rc.d/slapd.sh.sample
-%%NO_SLAPD%%libexec/slapd
-%%NO_SLAPD%%sbin/slapadd
-%%NO_SLAPD%%sbin/slapcat
-%%NO_SLAPD%%sbin/slapindex
-%%NO_SLAPD%%sbin/slappasswd
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
-%%NO_SLAPD%%etc/openldap/slapd.conf.default
-%%NO_SLAPD%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/README
-%%NO_SLAPD%%etc/openldap/schema/corba.schema.default
-%%NO_SLAPD%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/core.schema.default
-%%NO_SLAPD%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/cosine.schema.default
-%%NO_SLAPD%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/inetorgperson.schema.default
-%%NO_SLAPD%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/java.schema.default
-%%NO_SLAPD%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/misc.schema.default
-%%NO_SLAPD%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/nis.schema.default
-%%NO_SLAPD%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/openldap.schema.default
-%%NO_SLAPD%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/db/openldap-data ] || /bin/mkdir /var/db/openldap-data
-%%NO_SLAPD%%@unexec /bin/rmdir /var/db/openldap-data 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/run/ldap ] || /bin/mkdir /var/run/ldap
-%%NO_SLAPD%%@unexec /bin/rmdir /var/run/ldap 2>/dev/null || true
+bin/ldapadd
+bin/ldapcompare
+bin/ldapdelete
+bin/ldapmodify
+bin/ldapmodrdn
+bin/ldappasswd
+bin/ldapsearch
+bin/ldapwhoami
+%%SERVER%%@unexec %D/etc/rc.d/slapd.sh stop 2>/dev/null || true
+%%SERVER%%@unexec %D/etc/rc.d/slurpd.sh stop 2>/dev/null || true
+@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
+etc/openldap/ldap.conf.default
+@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
+%%SERVER%%etc/openldap/schema/README
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
+%%SERVER%%etc/openldap/schema/corba.schema.default
+%%SERVER%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
+%%SERVER%%etc/openldap/schema/core.schema.default
+%%SERVER%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
+%%SERVER%%etc/openldap/schema/cosine.schema.default
+%%SERVER%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
+%%SERVER%%etc/openldap/schema/inetorgperson.schema.default
+%%SERVER%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
+%%SERVER%%etc/openldap/schema/java.schema.default
+%%SERVER%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
+%%SERVER%%etc/openldap/schema/misc.schema.default
+%%SERVER%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
+%%SERVER%%etc/openldap/schema/nis.schema.default
+%%SERVER%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
+%%SERVER%%etc/openldap/schema/openldap.schema.default
+%%SERVER%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
+%%SERVER%%etc/openldap/slapd.conf.default
+%%SERVER%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
+%%SERVER%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
+@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
+%%SERVER%%etc/rc.d/slapd.sh
+%%SERVER%%etc/rc.d/slurpd.sh
+include/lber.h
+include/lber_types.h
+include/ldap.h
+include/ldap_cdefs.h
+include/ldap_features.h
+include/ldap_schema.h
+include/ldap_utf8.h
+include/slapi-plugin.h
+lib/liblber.a
+lib/liblber.so
+lib/liblber.so.2
+lib/libldap.a
+lib/libldap.so
+lib/libldap.so.2
+lib/libldap_r.a
+lib/libldap_r.so
+lib/libldap_r.so.2
+%%SLAPI%%lib/libslapi.a
+%%SLAPI%%lib/libslapi.so
+%%SLAPI%%lib/libslapi.so.2
+%%SERVER%%libexec/slapd
+%%SERVER%%libexec/slurpd
+%%SERVER%%sbin/slapadd
+%%SERVER%%sbin/slapcat
+%%SERVER%%sbin/slapindex
+%%SERVER%%sbin/slappasswd
+share/openldap/ucdata/case.dat
+share/openldap/ucdata/cmbcl.dat
+share/openldap/ucdata/comp.dat
+share/openldap/ucdata/ctype.dat
+share/openldap/ucdata/decomp.dat
+share/openldap/ucdata/kdecomp.dat
+share/openldap/ucdata/num.dat
+@dirrm share/openldap/ucdata
+@dirrm share/openldap
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-slurp 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-data 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LDAP_RUN_DIR%% 2>/dev/null || true
diff --git a/net/openldap24-server/Makefile b/net/openldap24-server/Makefile
index fa44a42c5fd8..5b6c9d83f226 100644
--- a/net/openldap24-server/Makefile
+++ b/net/openldap24-server/Makefile
@@ -1,26 +1,12 @@
-# New ports collection makefile for: OpenLDAP 2.1
-# Date created: 5 Dec 2002
-# Whom: Christian Kratzer <ck@cksoft.de>
-#
-# This port allows separation of the openldap client and servers
-# using following options
-#
-# default builds openldap21-PORTVERSION
-# CLIENT_ONLY builds openldap21-client-PORTVERSION (clients and libs)
-# SLAPD_ONLY builds openldap21-slapd-PORTVERSION (slapd and slapd tools)
-# SLURPD_ONLY builds openldap21-slurpd-PORTVERSION (slurpd only)
-# SERVERS_ONLY builds openldap21-servers-PORTVERSION (slapd and slurpd)
-# WITHOUT_SASL do not build against sasl2
-#
-# OPENLDAP_STABLE an attempt to track the openldap stable branch
-# It remains to be seen if this stays practical.
+# New ports collection makefile for: OpenLDAP 2.2
+# Date created: 20 Sep 1998
+# Whom: Lachlan O'Dea
#
# $FreeBSD$
#
-PORTNAME= openldap21
-PORTVERSION= 2.1.20
-PORTREVISION= 1
+PORTNAME= openldap
+PORTVERSION= ${OPENLDAP_VERSION}.a
CATEGORIES= net databases
MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
http://public.planetmirror.com/pub/openldap/%SUBDIR%/ \
@@ -34,427 +20,177 @@ MASTER_SITES= ftp://ftp.OpenLDAP.org/pub/OpenLDAP/%SUBDIR%/ \
ftp://ftp.linux.pt/pub/mirrors/OpenLDAP/%SUBDIR%/ \
ftp://ftp.si.uniovi.es/mirror/OpenLDAP/%SUBDIR%/ \
ftp://sunsite.cnlab-switch.ch/mirror/OpenLDAP/%SUBDIR%/ \
+ http://openldap.cdpa.nsysu.edu.tw/OpenLDAP/%SUBDIR%/ \
+ ftp://ftp.u-aizu.ac.jp/pub/net/openldap/%SUBDIR%/ \
ftp://ftp.plig.org/pub/OpenLDAP/%SUBDIR%/
-.if defined(OPENLDAP_STABLE)
-MASTER_SITE_SUBDIR= openldap-stable
-DISTNAME= openldap-stable-20030410
-PKGNAMESUFFIX= -stable
-WRKSRC= ${WRKDIR}/openldap-${PORTVERSION}
-.else
-MASTER_SITE_SUBDIR= openldap-release
-DISTNAME= openldap-${PORTVERSION}
-.endif
+MASTER_SITE_SUBDIR= openldap-test
+DISTNAME= openldap-${OPENLDAP_VERSION}alpha
EXTRACT_SUFX= .tgz
-MAINTAINER= ck@cksoft.de
-COMMENT= Open source LDAP client and server software
+MAINTAINER= eikemeier@fillmore-labs.com
+COMMENT= Open source LDAP client and server implementation
-LIB_DEPENDS+= db41:${PORTSDIR}/databases/db41
+OPENLDAP_VERSION= 2.2.0
-CXXFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+CONFLICTS= openldap*
-CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
- -I${LOCALBASE}/include \
- -I${LOCALBASE}/include/db41
+LATEST_LINK= openldap2
-LDFLAGS+= -L${LOCALBASE}/lib
+USE_OPENSSL= yes
+USE_REINPLACE= yes
+USE_LIBTOOL_VER= 14
-USE_OPENSSL= yes
-HAS_CONFIGURE= yes
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGMESSAGE= ${WRKDIR}/pkg-message
-CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}" \
- CPPFLAGS="${CPPFLAGS}" \
- LDFLAGS="${LDFLAGS}"
+LOCALSTATEDIR?= /var/db
+LDAP_RUN_DIR?= /var/run/openldap
-CONFIGURE_ARGS+=--prefix=${PREFIX} \
- --enable-bdb \
- --enable-crypt
+WITH_BDB_VER?= 41
-.if defined(WITHOUT_SASL)
-CONFIGURE_ARGS+= \
- --without-cyrus-sasl
-.else
-LIB_DEPENDS+= sasl2:${PORTSDIR}/security/cyrus-sasl2
-CONFIGURE_ARGS+= \
- --with-cyrus-sasl \
- --enable-spasswd
-.endif
+CONFIGURE_ARGS= --with-threads \
+ --with-tls=openssl
-# ------------------------------------------------------------------------------
-# common configure
-#
-CONFIGURE_ARGS+= \
- --with-tls \
- --localstatedir=/var/db
+SED_SCRIPT= -e 's,%%PREFIX%%,${PREFIX},g' \
+ -e 's,%%LDAP_RUN_DIR%%,${LDAP_RUN_DIR},g' \
+ -e 's,%%LOCALSTATEDIR%%,${LOCALSTATEDIR},g'
-# Include tcp-wrapper support
-.if exists(/usr/include/tcpd.h)
-CONFIGURE_ARGS+= --enable-wrappers
+.if defined(CLIENT_ONLY)
+PKGNAMESUFFIX= -client
+CONFIGURE_ARGS+= --disable-slapd
+PLIST_SUB+= SERVER="@comment " \
+ SLAPI="@comment "
+SED_SCRIPT+= -e '/^%%SERVER%%/d'
+.else
+CONFIGURE_ARGS+= --localstatedir=${LOCALSTATEDIR} \
+ --enable-lmpasswd \
+ --enable-ldbm \
+ --with-ldbm-api=berkeley \
+ --enable-ldap \
+ --enable-meta \
+ --enable-rewrite \
+ --enable-null \
+ --enable-monitor
+
+.if ${WITH_BDB_VER} == 41
+LIB_DEPENDS= db41.1:${PORTSDIR}/databases/db41
+CONFIGURE_ARGS+= --enable-bdb
+.elif ${WITH_BDB_VER} == 4
+LIB_DEPENDS= db4.0:${PORTSDIR}/databases/db4
+CONFIGURE_ARGS+= --disable-bdb
+.elif ${WITH_BDB_VER} == 3
+LIB_DEPENDS= db3.3:${PORTSDIR}/databases/db3
+CONFIGURE_ARGS+= --disable-bdb
+.else
+.error WITH_BDB_VER must be 3, 4 or 41
.endif
+LIBS+= -ldb${WITH_BDB_VER}
+CPPFLAGS+= -I${LOCALBASE}/include/db${WITH_BDB_VER}
-.include <bsd.port.pre.mk>
-.if ${OSVERSION} >= 400014
-CONFIGURE_ARGS+= --enable-ipv6
+.if defined(WITH_SHELL)
+CONFIGURE_ARGS+= --enable-shell
.endif
-.if defined(CLIENT_ONLY)
-# ------------------------------------------------------------------------------
-# libraries and client applications only
-#
-BUILD_CLIENTS= yes
-INSTALLS_SHLIB= yes
-PKGNAMESUFFIX= -client
-COMMENT= Open source LDAP client software
-CONFIGURE_ARGS+= \
- --disable-slapd \
- --disable-slurpd \
- --enable-shared \
- --enable-static
-
-.elif defined(SLAPD_ONLY)
-# ------------------------------------------------------------------------------
-# slapd only
-#
-BUILD_SLAPD= yes
-PKGNAMESUFFIX= -slapd
-COMMENT= Open source LDAP server software (slapd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --disable-slurpd \
- --disable-shared \
- --disable-static \
- --without-threads \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell
-
-.elif defined(SLURPD_ONLY)
-# ------------------------------------------------------------------------------
-# slurpd only
-# NOTE: to build slurpd only package we have to build slapd
-# and some backend we just don't install them later on
-#
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -slurpd
-COMMENT= Open source LDAP server software (slurpd only)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-RUN_DEPENDS+= ${LOCALBASE}/libexec/slapd:${PORTSDIR}/net/openldap-slapd2.1
-CONFIGURE_ARGS+= \
- --enable-slurpd \
- --enable-slapd \
- --disable-shared \
- --disable-static \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell \
- --with-threads
-
-.elif defined(SERVERS_ONLY)
-# ------------------------------------------------------------------------------
-# slapd and slurpd
-#
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-PKGNAMESUFFIX= -server
-COMMENT= Open source LDAP server software (slapd and slurpd)
-LIB_DEPENDS+= ldap:${PORTSDIR}/net/openldap-client2.1
-CONFIGURE_ARGS+= \
- --enable-slapd \
- --enable-slurpd \
- --disable-shared \
- --disable-static \
- --with-threads \
- --enable-ldbm \
- --disable-ldap \
- --disable-shell
+.if defined(WITH_PERL)
+.error build with Perl backend broken: <http://www.openldap.org/its/index.cgi/Development?id=2513>
+USE_PERL5= yes
+CONFIGURE_ARGS+= --enable-perl
+.endif
+.if defined(WITH_SASL)
+LIB_DEPENDS+= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
+CONFIGURE_ARGS+= --with-cyrus-sasl \
+ --enable-spasswd
.else
-# ------------------------------------------------------------------------------
-#
-# full package
-#
-INSTALLS_SHLIB= yes
-BUILD_CLIENTS= yes
-BUILD_SLAPD= yes
-BUILD_SLURPD= yes
-CONFIGURE_ARGS+= \
- --with-threads \
- --enable-slapd \
- --enable-slurpd \
- --enable-ldbm \
- --enable-ldap \
- --enable-shell \
- --enable-shared \
- --enable-static
+CONFIGURE_ARGS+= --without-cyrus-sasl
+.endif
+.if defined(WITH_ODBC)
+LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
+CONFIGURE_ARGS+= --enable-sql
.endif
-# ------------------------------------------------------------------------------
-# PLIST subs and MAN?/MLINKS
-#
-.if defined(BUILD_CLIENTS)
-PLIST_SUB+= NO_CLIENTS=
-MAN1+= ldapcompare.1
-MAN1+= ldapdelete.1
-MAN1+= ldapmodify.1
-MLINKS+= ldapmodify.1 ldapadd.1
-MAN1+= ldapmodrdn.1
-MAN1+= ldappasswd.1
-MAN1+= ldapsearch.1
-MAN1+= ldapwhoami.1
-MAN3+= lber-decode.3
-MLINKS+= lber-decode.3 ber_get_next.3
-MLINKS+= lber-decode.3 ber_skip_tag.3
-MLINKS+= lber-decode.3 ber_peek_tag.3
-MLINKS+= lber-decode.3 ber_scanf.3
-MLINKS+= lber-decode.3 ber_get_int.3
-MLINKS+= lber-decode.3 ber_get_enum.3
-MLINKS+= lber-decode.3 ber_get_stringb.3
-MLINKS+= lber-decode.3 ber_get_stringa.3
-MLINKS+= lber-decode.3 ber_get_stringal.3
-MLINKS+= lber-decode.3 ber_get_stringbv.3
-MLINKS+= lber-decode.3 ber_get_null.3
-MLINKS+= lber-decode.3 ber_get_boolean.3
-MLINKS+= lber-decode.3 ber_get_bitstring.3
-MLINKS+= lber-decode.3 ber_first_element.3
-MLINKS+= lber-decode.3 ber_next_element.3
-MAN3+= lber-encode.3
-MLINKS+= lber-encode.3 ber_alloc_t.3
-MLINKS+= lber-encode.3 ber_flush.3
-MLINKS+= lber-encode.3 ber_printf.3
-MLINKS+= lber-encode.3 ber_put_int.3
-MLINKS+= lber-encode.3 ber_put_enum.3
-MLINKS+= lber-encode.3 ber_put_ostring.3
-MLINKS+= lber-encode.3 ber_put_string.3
-MLINKS+= lber-encode.3 ber_put_null.3
-MLINKS+= lber-encode.3 ber_put_boolean.3
-MLINKS+= lber-encode.3 ber_put_bitstring.3
-MLINKS+= lber-encode.3 ber_start_seq.3
-MLINKS+= lber-encode.3 ber_start_set.3
-MLINKS+= lber-encode.3 ber_put_seq.3
-MLINKS+= lber-encode.3 ber_put_set.3
-MAN3+= lber-memory.3
-MLINKS+= lber-memory.3 ber_memalloc.3
-MLINKS+= lber-memory.3 ber_memcalloc.3
-MLINKS+= lber-memory.3 ber_memrealloc.3
-MLINKS+= lber-memory.3 ber_memfree.3
-MLINKS+= lber-memory.3 ber_memvfree.3
-MAN3+= lber-types.3
-MLINKS+= lber-types.3 ber_int_t.3
-MLINKS+= lber-types.3 ber_uint_t.3
-MLINKS+= lber-types.3 ber_len_t.3
-MLINKS+= lber-types.3 ber_slen_t.3
-MLINKS+= lber-types.3 ber_tag_t.3
-MAN3+= ldap.3
-MAN3+= ldap_abandon.3
-MLINKS+= ldap_abandon.3 ldap_abandon_ext.3
-MAN3+= ldap_add.3
-MLINKS+= ldap_add.3 ldap_add_s.3
-MLINKS+= ldap_add.3 ldap_add_ext.3
-MLINKS+= ldap_add.3 ldap_add_ext_s.3
-MAN3+= ldap_bind.3
-MLINKS+= ldap_bind.3 ldap_bind_s.3
-MLINKS+= ldap_bind.3 ldap_simple_bind.3
-MLINKS+= ldap_bind.3 ldap_simple_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind1_s.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2.3
-MLINKS+= ldap_bind.3 ldap_kerberos_bind2_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind.3
-MLINKS+= ldap_bind.3 ldap_sasl_bind_s.3
-MLINKS+= ldap_bind.3 ldap_sasl_interactive_bind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind.3
-MLINKS+= ldap_bind.3 ldap_unbind_s.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext.3
-MLINKS+= ldap_bind.3 ldap_unbind_ext_s.3
-MLINKS+= ldap_bind.3 ldap_set_rebind_proc.3
-MAN3+= ldap_compare.3
-MLINKS+= ldap_compare.3 ldap_compare_s.3
-MLINKS+= ldap_compare.3 ldap_compare_ext.3
-MLINKS+= ldap_compare.3 ldap_compare_ext_s.3
-MAN3+= ldap_delete.3
-MLINKS+= ldap_delete.3 ldap_delete_s.3
-MLINKS+= ldap_delete.3 ldap_delete_ext.3
-MLINKS+= ldap_delete.3 ldap_delete_ext_s.3
-MAN3+= ldap_error.3
-MLINKS+= ldap_error.3 ldap_perror.3
-MLINKS+= ldap_error.3 ld_errno.3
-MLINKS+= ldap_error.3 ldap_result2error.3
-MLINKS+= ldap_error.3 ldap_errlist.3
-MLINKS+= ldap_error.3 ldap_err2string.3
-MAN3+= ldap_first_attribute.3
-MLINKS+= ldap_first_attribute.3 ldap_next_attribute.3
-MAN3+= ldap_first_entry.3
-MLINKS+= ldap_first_entry.3 ldap_next_entry.3
-MLINKS+= ldap_first_entry.3 ldap_count_entries.3
-MAN3+= ldap_first_message.3
-MLINKS+= ldap_first_message.3 ldap_next_message.3
-MLINKS+= ldap_first_message.3 ldap_count_messages.3
-MAN3+= ldap_first_reference.3
-MLINKS+= ldap_first_reference.3 ldap_next_reference.3
-MLINKS+= ldap_first_reference.3 ldap_count_references.3
-MAN3+= ldap_get_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_dn.3
-MLINKS+= ldap_get_dn.3 ldap_explode_rdn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ufn.3
-MLINKS+= ldap_get_dn.3 ldap_str2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2str.3
-MLINKS+= ldap_get_dn.3 ldap_dn2dcedn.3
-MLINKS+= ldap_get_dn.3 ldap_dcedn2dn.3
-MLINKS+= ldap_get_dn.3 ldap_dn2ad_canonical.3
-MAN3+= ldap_get_values.3
-MLINKS+= ldap_get_values.3 ldap_get_values_len.3
-MLINKS+= ldap_get_values.3 ldap_count_values.3
-MLINKS+= ldap_get_values.3 ldap_count_values_len.3
-MLINKS+= ldap_get_values.3 ldap_value_free.3
-MLINKS+= ldap_get_values.3 ldap_value_free_len.3
-MAN3+= ldap_modify.3
-MLINKS+= ldap_modify.3 ldap_modify_s.3
-MLINKS+= ldap_modify.3 ldap_modify_ext.3
-MLINKS+= ldap_modify.3 ldap_modify_ext_s.3
-MLINKS+= ldap_modify.3 ldap_mods_free.3
-MAN3+= ldap_open.3
-MLINKS+= ldap_open.3 ldap_init.3
-MAN3+= ldap_modrdn.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn_s.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2.3
-MLINKS+= ldap_modrdn.3 ldap_modrdn2_s.3
-MAN3+= ldap_parse_reference.3
-MAN3+= ldap_parse_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_sasl_bind_result.3
-MLINKS+= ldap_parse_result.3 ldap_parse_extended_result.3
-MAN3+= ldap_result.3
-MLINKS+= ldap_result.3 ldap_msgfree.3
-MLINKS+= ldap_result.3 ldap_msgtype.3
-MLINKS+= ldap_result.3 ldap_msgid.3
-MAN3+= ldap_schema.3
-MLINKS+= ldap_schema.3 ldap_str2syntax.3
-MLINKS+= ldap_schema.3 ldap_syntax2str.3
-MLINKS+= ldap_schema.3 ldap_syntax2name.3
-MLINKS+= ldap_schema.3 ldap_syntax_free.3
-MLINKS+= ldap_schema.3 ldap_str2matchingrule.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2str.3
-MLINKS+= ldap_schema.3 ldap_matchingrule2name.3
-MLINKS+= ldap_schema.3 ldap_matchingrule_free.3
-MLINKS+= ldap_schema.3 ldap_str2attributetype.3
-MLINKS+= ldap_schema.3 ldap_attributetype2str.3
-MLINKS+= ldap_schema.3 ldap_attributetype2name.3
-MLINKS+= ldap_schema.3 ldap_attributetype_free.3
-MLINKS+= ldap_schema.3 ldap_str2objectclass.3
-MLINKS+= ldap_schema.3 ldap_objectclass2str.3
-MLINKS+= ldap_schema.3 ldap_objectclass2name.3
-MLINKS+= ldap_schema.3 ldap_objectclass_free.3
-MLINKS+= ldap_schema.3 ldap_scherr2str.3
-MAN3+= ldap_search.3
-MLINKS+= ldap_search.3 ldap_search_s.3
-MLINKS+= ldap_search.3 ldap_search_st.3
-MLINKS+= ldap_search.3 ldap_search_ext.3
-MLINKS+= ldap_search.3 ldap_search_ext_s.3
-MAN3+= ldap_sort.3
-MLINKS+= ldap_sort.3 ldap_sort_entries.3
-MLINKS+= ldap_sort.3 ldap_sort_values.3
-MLINKS+= ldap_sort.3 ldap_sort_strcasecmp.3
-MAN3+= ldap_url.3
-MLINKS+= ldap_url.3 ldap_is_ldap_url.3
-MLINKS+= ldap_url.3 ldap_url_parse.3
-MLINKS+= ldap_url.3 ldap_free_urldesc.3
+.if defined(WITH_SLAPI)
+LIB_DEPENDS+= ltdl.4:${PORTSDIR}/devel/libltdl
+CONFIGURE_ARGS+= --enable-slapi
+LIBS+= -lltdl
+PLIST_SUB+= SLAPI=""
.else
-PLIST_SUB+= NO_CLIENTS="@comment "
+PLIST_SUB+= SLAPI="@comment "
.endif
-.if defined(BUILD_SLAPD)
-PLIST_SUB+= NO_SLAPD=
-MAN5+= ldap.conf.5
-MAN5+= ldif.5
-MAN5+= slapd-bdb.5
-MAN5+= slapd-dnssrv.5
-MAN5+= slapd-ldap.5
-MAN5+= slapd-ldbm.5
-MAN5+= slapd-meta.5
-MAN5+= slapd-null.5
-MAN5+= slapd-passwd.5
-MAN5+= slapd-perl.5
-MAN5+= slapd-shell.5
-MAN5+= slapd-sql.5
-MAN5+= slapd-tcl.5
-MAN5+= slapd.access.5
-MAN5+= slapd.conf.5
-MAN5+= slapd.replog.5
-MAN8+= slapadd.8
-MAN8+= slapcat.8
-MAN8+= slapd.8
-MAN8+= slapindex.8
-MAN8+= slappasswd.8
-.else
-PLIST_SUB+= NO_SLAPD="@comment "
+
+# Include tcp-wrapper support
+.if !defined(WITHOUT_TCP_WRAPPERS) && exists(/usr/include/tcpd.h)
+CONFIGURE_ARGS+= --enable-wrappers
.endif
-.if defined(BUILD_SLURPD)
-PLIST_SUB+= NO_SLUPRD=""
-MAN8+= slurpd.8
-.else
-PLIST_SUB+= NO_SLUPRD="@comment "
+
+PLIST_SUB+= SERVER=""
+SED_SCRIPT+= -e '/^%%SERVER%%/s,,,'
.endif
+PLIST_SUB+= LOCALSTATEDIR=${LOCALSTATEDIR} \
+ LDAP_RUN_DIR=${LDAP_RUN_DIR}
+
+# math.h uses _REENTRANT and stdio.h uses _THREAD_SAFE, so define both.
+CPPFLAGS+= -D_REENTRANT ${PTHREAD_CFLAGS} \
+ -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+
+CONFIGURE_TARGET= --host=${MACHINE_ARCH}-portbld-freebsd${OSREL}
+CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ LIBS="${LIBS}"
+
+INSTALLS_SHLIB= yes
+
+.include <bsd.port.pre.mk>
+.include "${FILESDIR}/manpages"
+
+pre-everything::
+ @${ECHO} "============================================================="
+ @${ECHO}
+ @${ECHO} "You can build ${PKGNAME} with the following options:"
+ @${ECHO}
+ @${ECHO} "WITH_BDB_VER select BerkeleyDB version (default 4.1)"
+ @${ECHO} "WITH_SASL with SASL2 authorization"
+ @${ECHO} "WITH_PERL with Perl backend"
+ @${ECHO} "WITH_SHELL with Shell backend"
+ @${ECHO} "WITH_ODBC with SQL backend"
+ @${ECHO} "WITH_SLAPI with Netscape SLAPI plugin API
+ @${ECHO} "WITHOUT_TCP_WRAPPERS without tcp wrapper support"
+ @${ECHO}
+ @${ECHO} "============================================================="
+ @${ECHO}
+
post-patch:
- @${CP} ${WRKSRC}/servers/slapd/slapd.conf \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist
- @${SED} -e '/^pidfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- -e '/^argsfile/s#%LOCALSTATEDIR%#/var/run/ldap#' \
- ${WRKSRC}/servers/slapd/slapd.conf.Dist > \
+ @${REINPLACE_CMD} -e 's,%LOCALSTATEDIR%/slapd\.,${LDAP_RUN_DIR}/slapd.,g' \
${WRKSRC}/servers/slapd/slapd.conf
post-build:
-.if defined(BUILD_SLAPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slapd.sh >${WRKDIR}/slapd.sh
-.endif
-.if defined(BUILD_SLURPD)
- @${SED} 's,@@PREFIX@@,${PREFIX},g' ${FILESDIR}/slurpd.sh >${WRKDIR}/slurpd.sh
-.endif
-
-do-install:
-.if defined(BUILD_CLIENTS) && defined (BUILD_SLAPD) && defined (BUILD_SLURPD)
- @cd ${WRKSRC} && ${MAKE} install
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.else
-.if defined(BUILD_CLIENTS)
- @cd ${WRKSRC}/include && ${MAKE} install
- @cd ${WRKSRC}/clients && ${MAKE} install
- @cd ${WRKSRC}/libraries && ${MAKE} install
-.for i in 1 3
- @cd ${WRKSRC}/doc/man/man$i && ${MAKE} install
+.for script in slapd.sh slurpd.sh
+ @${SED} ${SED_SCRIPT} ${FILESDIR}/${script} >${WRKDIR}/${script}
+.endfor
+.for text in pkg-install pkg-message
+ @${SED} ${SED_SCRIPT} ${.CURDIR}/${text} >${WRKDIR}/${text}
.endfor
-.endif
-.if defined(BUILD_SLAPD)
- @cd ${WRKSRC}/servers/slapd && ${MAKE} install
- @cd ${WRKSRC}/doc/man/man5 && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapadd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapcat.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapd.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slapindex.8 ${MANPREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slappasswd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${MKDIR} /var/db
- @${STRIP_CMD} ${PREFIX}/libexec/slapd
-.endif
-.if defined(BUILD_SLURPD)
- @cd ${WRKSRC}/servers/slurpd && ${MAKE} install
- @${INSTALL_MAN} ${WRKSRC}/doc/man/man8/slurpd.8 ${MANPREFIX}/man/man8
- @${MKDIR} ${PREFIX}/libexec
- @${INSTALL_TARGET} -c -o root -g wheel -m 700 -d /var/db/openldap-slurp
- @${STRIP_CMD} ${PREFIX}/libexec/slurpd
-.endif
-.endif
post-install:
-.if defined(BUILD_SLAPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${PREFIX}/etc/rc.d/slapd.sh.sample
-.endif
-.if defined(BUILD_SLURPD)
- @${INSTALL_SCRIPT} ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d/slurpd.sh.sample
-.endif
+.if !defined(CLIENT_ONLY)
+ @${INSTALL_SCRIPT} ${WRKDIR}/slapd.sh ${WRKDIR}/slurpd.sh ${PREFIX}/etc/rc.d
+ @${MKDIR} ${LDAP_RUN_DIR}
+.endif
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+ @for dir in rfc drafts; do \
+ ${MKDIR} ${DOCSDIR}/$${dir}; \
+ ${FIND} ${WRKSRC}/doc/$${dir} -maxdepth 1 -type f \
+ -exec ${INSTALL_DATA} {} ${DOCSDIR}/$${dir} \; -print \
+ | ${SED} -e "s,^${WRKSRC}/doc/,${DOCSDIR:S,^${PREFIX}/,,}/," \
+ >>${TMPPLIST}; \
+ ${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}/$${dir}" >>${TMPPLIST}; \
+ done
+ @${ECHO_CMD} "@dirrm ${DOCSDIR:S,^${PREFIX}/,,}" >>${TMPPLIST}
+.endif
+ @${CAT} ${PKGMESSAGE}
.include <bsd.port.post.mk>
diff --git a/net/openldap24-server/distinfo b/net/openldap24-server/distinfo
index 341a1c1cc0ca..eef25e637b2e 100644
--- a/net/openldap24-server/distinfo
+++ b/net/openldap24-server/distinfo
@@ -1,2 +1 @@
-MD5 (openldap-stable-20030410.tgz) = 53fb6c157a7c54b988cf7555e56f11e6
-MD5 (openldap-2.1.20.tgz) = fe6d5f8571672e3107b42299a03e92ce
+MD5 (openldap-2.2.0alpha.tgz) = 72fe342067b717a37b9697898dacfa0a
diff --git a/net/openldap24-server/files/manpages b/net/openldap24-server/files/manpages
new file mode 100644
index 000000000000..d3830d3afa8b
--- /dev/null
+++ b/net/openldap24-server/files/manpages
@@ -0,0 +1,188 @@
+MAN1+= ldapcompare.1 \
+ ldapdelete.1 \
+ ldapmodify.1 \
+ ldapmodrdn.1 \
+ ldappasswd.1 \
+ ldapsearch.1 \
+ ldapwhoami.1
+MLINKS+= \
+ ldapmodify.1 ldapadd.1
+
+MAN3+= lber-decode.3 \
+ lber-encode.3 \
+ lber-memory.3 \
+ lber-types.3 \
+ ldap.3 \
+ ldap_abandon.3 \
+ ldap_add.3 \
+ ldap_bind.3 \
+ ldap_compare.3 \
+ ldap_delete.3 \
+ ldap_error.3 \
+ ldap_first_attribute.3 \
+ ldap_first_entry.3 \
+ ldap_first_message.3 \
+ ldap_first_reference.3 \
+ ldap_get_dn.3 \
+ ldap_get_values.3 \
+ ldap_modify.3 \
+ ldap_modrdn.3 \
+ ldap_open.3 \
+ ldap_parse_reference.3 \
+ ldap_parse_result.3 \
+ ldap_result.3 \
+ ldap_schema.3 \
+ ldap_search.3 \
+ ldap_sort.3 \
+ ldap_url.3
+MLINKS+= \
+ lber-decode.3 ber_first_element.3 \
+ lber-decode.3 ber_get_bitstring.3 \
+ lber-decode.3 ber_get_boolean.3 \
+ lber-decode.3 ber_get_enum.3 \
+ lber-decode.3 ber_get_int.3 \
+ lber-decode.3 ber_get_next.3 \
+ lber-decode.3 ber_get_null.3 \
+ lber-decode.3 ber_get_stringa.3 \
+ lber-decode.3 ber_get_stringb.3 \
+ lber-decode.3 ber_next_element.3 \
+ lber-decode.3 ber_peek_tag.3 \
+ lber-decode.3 ber_scanf.3 \
+ lber-decode.3 ber_skip_tag.3 \
+ lber-encode.3 ber_alloc_t.3 \
+ lber-encode.3 ber_flush.3 \
+ lber-encode.3 ber_printf.3 \
+ lber-encode.3 ber_put_enum.3 \
+ lber-encode.3 ber_put_int.3 \
+ lber-encode.3 ber_put_null.3 \
+ lber-encode.3 ber_put_ostring.3 \
+ lber-encode.3 ber_put_seq.3 \
+ lber-encode.3 ber_put_set.3 \
+ lber-encode.3 ber_put_string.3 \
+ lber-encode.3 ber_start_set.3 \
+ lber-types.3 ber_bvarray_add.3 \
+ lber-types.3 ber_bvarray_free.3 \
+ lber-types.3 ber_bvdup.3 \
+ lber-types.3 ber_bvecadd.3 \
+ lber-types.3 ber_bvecfree.3 \
+ lber-types.3 ber_bvfree.3 \
+ lber-types.3 ber_bvstr.3 \
+ lber-types.3 ber_bvstrdup.3 \
+ lber-types.3 ber_dupbv.3 \
+ lber-types.3 ber_free.3 \
+ lber-types.3 ber_str2bv.3 \
+ ldap_abandon.3 ldap_abandon_ext.3 \
+ ldap_add.3 ldap_add_ext.3 \
+ ldap_add.3 ldap_add_ext_s.3 \
+ ldap_add.3 ldap_add_s.3 \
+ ldap_bind.3 ldap_bind_s.3 \
+ ldap_bind.3 ldap_kerberos_bind1.3 \
+ ldap_bind.3 ldap_kerberos_bind1_s.3 \
+ ldap_bind.3 ldap_kerberos_bind2.3 \
+ ldap_bind.3 ldap_kerberos_bind2_s.3 \
+ ldap_bind.3 ldap_kerberos_bind_s.3 \
+ ldap_bind.3 ldap_sasl_bind.3 \
+ ldap_bind.3 ldap_sasl_bind_s.3 \
+ ldap_bind.3 ldap_simple_bind.3 \
+ ldap_bind.3 ldap_simple_bind_s.3 \
+ ldap_bind.3 ldap_unbind.3 \
+ ldap_bind.3 ldap_unbind_ext.3 \
+ ldap_bind.3 ldap_unbind_ext_s.3 \
+ ldap_bind.3 ldap_unbind_s.3 \
+ ldap_compare.3 ldap_compare_ext.3 \
+ ldap_compare.3 ldap_compare_ext_s.3 \
+ ldap_compare.3 ldap_compare_s.3 \
+ ldap_delete.3 ldap_delete_ext.3 \
+ ldap_delete.3 ldap_delete_ext_s.3 \
+ ldap_delete.3 ldap_delete_s.3 \
+ ldap_error.3 ld_errno.3 \
+ ldap_error.3 ldap_err2string.3 \
+ ldap_error.3 ldap_errlist.3 \
+ ldap_error.3 ldap_perror.3 \
+ ldap_error.3 ldap_result2error.3 \
+ ldap_first_attribute.3 ldap_next_attribute.3 \
+ ldap_first_entry.3 ldap_count_entries.3 \
+ ldap_first_entry.3 ldap_next_entry.3 \
+ ldap_first_message.3 ldap_count_messages.3 \
+ ldap_first_message.3 ldap_next_message.3 \
+ ldap_first_reference.3 ldap_count_references.3 \
+ ldap_first_reference.3 ldap_next_reference.3 \
+ ldap_get_dn.3 ldap_dcedn2dn.3 \
+ ldap_get_dn.3 ldap_dn2ad_canonical.3 \
+ ldap_get_dn.3 ldap_dn2dcedn.3 \
+ ldap_get_dn.3 ldap_dn2str.3 \
+ ldap_get_dn.3 ldap_dn2ufn.3 \
+ ldap_get_dn.3 ldap_explode_dn.3 \
+ ldap_get_dn.3 ldap_explode_rdn.3 \
+ ldap_get_dn.3 ldap_str2dn.3 \
+ ldap_get_values.3 ldap_count_values.3 \
+ ldap_get_values.3 ldap_count_values_len.3 \
+ ldap_get_values.3 ldap_get_values_len.3 \
+ ldap_get_values.3 ldap_value_free.3 \
+ ldap_get_values.3 ldap_value_free_len.3 \
+ ldap_modify.3 ldap_modify_ext.3 \
+ ldap_modify.3 ldap_modify_ext_s.3 \
+ ldap_modify.3 ldap_modify_s.3 \
+ ldap_modify.3 ldap_mods_free.3 \
+ ldap_modrdn.3 ldap_modrdn2.3 \
+ ldap_modrdn.3 ldap_modrdn2_s.3 \
+ ldap_modrdn.3 ldap_modrdn_s.3 \
+ ldap_open.3 ldap_init.3 \
+ ldap_parse_result.3 ldap_parse_extended_result.3 \
+ ldap_parse_result.3 ldap_parse_sasl_bind_result.3 \
+ ldap_result.3 ldap_msgfree.3 \
+ ldap_result.3 ldap_msgid.3 \
+ ldap_result.3 ldap_msgtype.3 \
+ ldap_schema.3 ldap_attributetype2name.3 \
+ ldap_schema.3 ldap_attributetype2str.3 \
+ ldap_schema.3 ldap_attributetype_free.3 \
+ ldap_schema.3 ldap_matchingrule2name.3 \
+ ldap_schema.3 ldap_matchingrule2str.3 \
+ ldap_schema.3 ldap_matchingrule_free.3 \
+ ldap_schema.3 ldap_objectclass2name.3 \
+ ldap_schema.3 ldap_objectclass2str.3 \
+ ldap_schema.3 ldap_objectclass_free.3 \
+ ldap_schema.3 ldap_scherr2str.3 \
+ ldap_schema.3 ldap_str2attributetype.3 \
+ ldap_schema.3 ldap_str2matchingrule.3 \
+ ldap_schema.3 ldap_str2objectclass.3 \
+ ldap_schema.3 ldap_str2syntax.3 \
+ ldap_schema.3 ldap_syntax2name.3 \
+ ldap_schema.3 ldap_syntax2str.3 \
+ ldap_schema.3 ldap_syntax_free.3 \
+ ldap_search.3 ldap_search_ext.3 \
+ ldap_search.3 ldap_search_ext_s.3 \
+ ldap_search.3 ldap_search_s.3 \
+ ldap_search.3 ldap_search_st.3 \
+ ldap_sort.3 ldap_sort_entries.3 \
+ ldap_sort.3 ldap_sort_strcasecmp.3 \
+ ldap_sort.3 ldap_sort_values.3 \
+ ldap_url.3 ldap_free_urldesc.3 \
+ ldap_url.3 ldap_is_ldap_url.3 \
+ ldap_url.3 ldap_url_parse.3
+
+MAN5+= ldap.conf.5 \
+ ldif.5 \
+ slapd-bdb.5 \
+ slapd-dnssrv.5 \
+ slapd-ldap.5 \
+ slapd-ldbm.5 \
+ slapd-meta.5 \
+ slapd-monitor.5 \
+ slapd-null.5 \
+ slapd-passwd.5 \
+ slapd-perl.5 \
+ slapd-shell.5 \
+ slapd-sql.5 \
+ slapd-tcl.5 \
+ slapd.access.5 \
+ slapd.conf.5 \
+ slapd.plugin.5 \
+ slapd.replog.5
+
+MAN8+= slapadd.8 \
+ slapcat.8 \
+ slapd.8 \
+ slapindex.8 \
+ slappasswd.8 \
+ slurpd.8
diff --git a/net/openldap24-server/files/patch-build::ltmain.sh b/net/openldap24-server/files/patch-build::ltmain.sh
new file mode 100644
index 000000000000..502d6b5db739
--- /dev/null
+++ b/net/openldap24-server/files/patch-build::ltmain.sh
@@ -0,0 +1,15 @@
+--- build/ltmain.sh.orig Sun Feb 9 23:24:29 2003
++++ build/ltmain.sh Fri Jun 20 21:37:02 2003
+@@ -4285,12 +4285,6 @@
+ IFS="$save_ifs"
+ fi
+
+- # Install the pseudo-library for information purposes.
+- name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+- instname="$dir/$name"i
+- $show "$install_prog $instname $destdir/$name"
+- $run eval "$install_prog $instname $destdir/$name" || exit $?
+-
+ # Maybe install the static library, too.
+ test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library"
+ ;;
diff --git a/net/openldap24-server/files/patch-libraries::liblutil::passwd.c b/net/openldap24-server/files/patch-libraries::liblutil::passwd.c
new file mode 100644
index 000000000000..32de74e9ee11
--- /dev/null
+++ b/net/openldap24-server/files/patch-libraries::liblutil::passwd.c
@@ -0,0 +1,14 @@
+#
+# ITS#2562: add missing arg to hash_lanman
+#
+--- libraries/liblutil/passwd.c.orig Fri May 2 13:29:29 2003
++++ libraries/liblutil/passwd.c Sun Jun 22 03:08:18 2003
+@@ -632,7 +632,7 @@
+ {
+ struct berval *hash;
+
+- hash = hash_lanman( scheme, cred );
++ hash = hash_lanman( scheme, cred, text );
+ return memcmp( &hash->bv_val[scheme->bv_len], passwd->bv_val, 32);
+ }
+ #endif /* SLAPD_LMHASH */
diff --git a/net/openldap24-server/files/patch-servers::slapd::daemon.c b/net/openldap24-server/files/patch-servers::slapd::daemon.c
new file mode 100644
index 000000000000..96afa46ebd8a
--- /dev/null
+++ b/net/openldap24-server/files/patch-servers::slapd::daemon.c
@@ -0,0 +1,11 @@
+--- servers/slapd/daemon.c.orig Sat May 24 21:12:20 2003
++++ servers/slapd/daemon.c Sun Jun 22 19:26:22 2003
+@@ -858,7 +858,7 @@
+ #ifdef LDAP_PF_LOCAL
+ case AF_LOCAL: {
+ char *addr = ((struct sockaddr_un *)*sal)->sun_path;
+-#if 0 /* don't muck with socket perms */
++#if 1
+ if ( chmod( addr, l.sl_perms ) < 0 && crit ) {
+ int err = sock_errno();
+ #ifdef NEW_LOGGING
diff --git a/net/openldap24-server/files/slapd.sh b/net/openldap24-server/files/slapd.sh
index e8f6ed6b018d..21bdf775a0b1 100644
--- a/net/openldap24-server/files/slapd.sh
+++ b/net/openldap24-server/files/slapd.sh
@@ -2,44 +2,57 @@
#
# $FreeBSD$
-slapd_program=@@PREFIX@@/libexec/slapd
+slapd_program=%%PREFIX%%/libexec/slapd
-# Uncomment one of the following:
-#
-# IPv4 Only
-#slapd_args='-u ldap -g ldap -h ldap://0.0.0.0'
+slapd_pidfile=%%LDAP_RUN_DIR%%/slapd.pid
+
+slapd_enable="NO"
+
+slapd_args=
+
+# Add the following lines to /etc/rc.conf to enable slapd:
#
-# IPv6 and IPv4
-#slapd_ags='-u ldap -g ldap -h "ldap://[::] ldap://0.0.0.0"'
+#slapd_enable="YES"
+#slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
#
-# IPv6 Only
-#slapd_args='-u ldap -g ldap -h ldap://[::]'
+# See sldap(8) for details
#
+# Create a user 'ldap' and add '-u ldap -g ldap' to slapd_args
+# if you want to run slapd as a non-privileged user (recommended)
#
-slapd_args="-u ldap -g ldap"
-
-pidfile=/var/run/ldap/slapd.pid
-case "$1" in
-start)
- if [ -x $slapd ]; then
- echo -n ' slapd'
- eval ${slapd_program} ${slapd_args}
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
- fi
- ;;
-stop)
- if [ -f $pidfile ]; then
- kill `cat $pidfile`
- echo -n ' slapd'
- rm $pidfile
- else
- echo ' slapd: not running'
- fi
+case "$slapd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slapd_program} ]; then
+ echo -n ' slapd'
+ eval ${slapd_program} ${slapd_args}
+ fi
+ ;;
+ stop)
+ if [ -f $slapd_pidfile ]; then
+ kill `cat $slapd_pidfile`
+ echo -n ' slapd'
+ else
+ echo ' slapd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
;;
esac
diff --git a/net/openldap24-server/files/slurpd.sh b/net/openldap24-server/files/slurpd.sh
index 9f347253a5d6..fc9f88f21cd6 100644
--- a/net/openldap24-server/files/slurpd.sh
+++ b/net/openldap24-server/files/slurpd.sh
@@ -1,34 +1,50 @@
#!/bin/sh
#
# $FreeBSD$
+
+slurpd_program=%%PREFIX%%/libexec/slurpd
+
+slurpd_enable="NO"
+
+slurpd_args=
+
+# Add the following line to /etc/rc.conf to enable slurpd:
+#
+#slurpd_enable="YES"
+#
+# See slurpd(8) for details
#
-slurpd=@@PREFIX@@/libexec/slurpd
-pidfile=/var/run/ldap/slurpd.pid
+# Suck in the configuration variables.
+if [ -r /etc/defaults/rc.conf ]; then
+ . /etc/defaults/rc.conf
+ source_rc_confs
+elif [ -r /etc/rc.conf ]; then
+ . /etc/rc.conf
+fi
-case "$1" in
-start)
- if [ -x $slurpd ]; then
- echo -n ' slurpd'
- $slurpd &
- echo $! > $pidfile
- fi
- ;;
-stop)
- pids=`ps xa | awk '/slurpd/{ print $1 }'`
- for pid in $pids; do
- kill $pid
- echo -n " slurpd($pid)"
- done
- ;;
-restart)
- $0 stop
- $0 start
- ;;
+case "$slurpd_enable" in
+[Yy][Ee][Ss])
+ case "$1" in
+ start)
+ if [ -x ${slurpd_program} ]; then
+ echo -n ' slurpd'
+ ${slurpd_program} ${slurpd_args}
+ fi
+ ;;
+ stop)
+ if ! killall `basename ${slurpd_program}`; then
+ echo ' slurpd: not running'
+ fi
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ exit 64
+ ;;
+ esac
+ ;;
*)
- echo "Usage: `basename $0` {start|stop}" >&2
- exit 64
- ;;
+ ;;
esac
exit 0
diff --git a/net/openldap24-server/pkg-descr b/net/openldap24-server/pkg-descr
index d582b6305fad..432cb85b0400 100644
--- a/net/openldap24-server/pkg-descr
+++ b/net/openldap24-server/pkg-descr
@@ -1,10 +1,15 @@
-OpenLDAP is a suite of Lightweight Directory Access Protocol(LDAP)
-servers, clients, utilities and development tools.
+OpenLDAP is a suite of Lightweight Directory Access Protocol (v3) servers,
+clients, utilities and development tools.
-OpenLDAP is derived from the University of Michigan LDAP release 3.3
-and is distributed under an open source license.
+This release includes the following major components:
-WWW: http://www.openldap.org/
+ * slapd - a stand-alone LDAP directory server
+ * slurpd - a stand-alone LDAP replication server
+ * -lldap - a LDAP client library
+ * -llber - a lightweight BER/DER encoding/decoding library
+ * LDIF tools - data conversion tools for use with slapd
+ * LDAP tools - A collection of command line LDAP utilities
-Bjoern A. Zeeb
-bzeeb+freebsdports@zabbadoz.net
+WWW: http://www.OpenLDAP.org/
+
+Lachlan O'Dea, Oliver Eikemeier
diff --git a/net/openldap24-server/pkg-install b/net/openldap24-server/pkg-install
index 76c6c8ff1b31..86dae2ce74da 100644
--- a/net/openldap24-server/pkg-install
+++ b/net/openldap24-server/pkg-install
@@ -1,52 +1,11 @@
#!/bin/sh
#
-# $FreeBSD$
+# $FreeBSD$
#
-
-PKG_PREFIX=${PKG_PREFIX:=/usr/local}
-BATCH=${BATCH:=no}
-
-USER=ldap
-USER_UID=389
-
-GROUP=ldap
-GROUP_GID=389
-
-if [ x"$2" = xPRE-INSTALL ]; then
- if /usr/sbin/pw groupshow "${GROUP}" 2>/dev/null; then
- echo "You already have a group \"${GROUP}\", so I will use it."
- else
- if /usr/sbin/pw groupadd ${GROUP} -g ${GROUP_GID} -h -
- then
- echo "Added group \"${GROUP}\"."
- else
- echo "Adding group \"${GROUP}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-
- if /usr/sbin/pw user show "${USER}" 2>/dev/null; then
- echo "You already have a user \"${USER}\", so I will use it."
- else
- if /usr/sbin/pw useradd ${USER} -u ${USER_UID} -g ${GROUP} -h - \
- -d /nonexistent \
- -s /sbin/nologin \
- -c "OpenLDAP Server"
- then
- echo "Added user \"${USER}\"."
- else
- echo "Adding user \"${USER}\" failed..."
- echo "Please create it, and try again."
- exit 1
- fi
- fi
-fi
-
-if [ x"$2" = xPOST-INSTALL ]; then
- chown -R $USER:$GROUP /var/db/openldap-data
- chown -R $USER:$GROUP /var/run/ldap
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf
- chown $USER:$GROUP $PKG_PREFIX/etc/openldap/slapd.conf.default
+if [ X"$2" != X"POST-INSTALL" ]; then
+ exit 0;
fi
+%%SERVER%%mkdir -p "%%LDAP_RUN_DIR%%"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-data"
+%%SERVER%%mkdir -p -m 700 "%%LOCALSTATEDIR%%/openldap-slurp"
diff --git a/net/openldap24-server/pkg-message b/net/openldap24-server/pkg-message
index dce1c78534b1..fa99c9a88dd8 100644
--- a/net/openldap24-server/pkg-message
+++ b/net/openldap24-server/pkg-message
@@ -1,8 +1,30 @@
-The openldap21 port now creates a ldap user an a ldap group.
+************************************************************
-If you use slapadd as root to populate your ldap Database please
-remember to chown the database directories and containing files
-to user ldap and group ldap.
+The OpenLDAP package has been successfully installed.
- chown -R ldap:ldap /var/db/openldap-data
+Edit
+ %%PREFIX%%/etc/openldap/ldap.conf
+to change the system-wide client defaults.
+%%SERVER%%In order to run the OpenLDAP server, you need to edit
+%%SERVER%% %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%to suit your needs and add the next lines to /etc/rc.conf:
+%%SERVER%% slapd_enable="YES"
+%%SERVER%% slapd_args='-h "ldapi://%2fvar%2frun%2fopenldap%2fldapi/????x-mod=0777 ldap://0.0.0.0/"'
+%%SERVER%%
+%%SERVER%%Then start the server with
+%%SERVER%% %%PREFIX%%/etc/rc.d/slapd.sh start
+%%SERVER%%or reboot.
+%%SERVER%%
+%%SERVER%%NOTE: There is no real reason to run slapd as root. Add
+%%SERVER%% '-u ldap -g ldap'
+%%SERVER%%to slapd_args, create a user "ldap" with
+%%SERVER%% pw add group ldap -g 389
+%%SERVER%% pw add user ldap -u 389 -g 389 -d /nonexistent \
+%%SERVER%% -c "OpenLDAP Server" -s /sbin/nologin -p "*"
+%%SERVER%%and do
+%%SERVER%% chown -R ldap:ldap %%LDAP_RUN_DIR%% \
+%%SERVER%% %%LOCALSTATEDIR%%/openldap-data %%PREFIX%%/etc/openldap/slapd.conf
+%%SERVER%%and your server runs with a non-privileged user id.
+%%SERVER%%
+************************************************************
diff --git a/net/openldap24-server/pkg-plist b/net/openldap24-server/pkg-plist
index 6be84f593b88..ff9ec200b978 100644
--- a/net/openldap24-server/pkg-plist
+++ b/net/openldap24-server/pkg-plist
@@ -1,97 +1,83 @@
-@comment -----------------------------------------
-@comment BUILD_CLIENTS
-@comment -----------------------------------------
-%%NO_CLIENTS%%bin/ldapadd
-%%NO_CLIENTS%%bin/ldapcompare
-%%NO_CLIENTS%%bin/ldapdelete
-%%NO_CLIENTS%%bin/ldapmodify
-%%NO_CLIENTS%%bin/ldapmodrdn
-%%NO_CLIENTS%%bin/ldappasswd
-%%NO_CLIENTS%%bin/ldapsearch
-%%NO_CLIENTS%%bin/ldapwhoami
-%%NO_CLIENTS%%@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
-%%NO_CLIENTS%%etc/openldap/ldap.conf.default
-%%NO_CLIENTS%%@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
-@comment
-%%NO_CLIENTS%%include/lber.h
-%%NO_CLIENTS%%include/lber_types.h
-%%NO_CLIENTS%%include/ldap.h
-%%NO_CLIENTS%%include/ldap_cdefs.h
-%%NO_CLIENTS%%include/ldap_features.h
-%%NO_CLIENTS%%include/ldap_schema.h
-%%NO_CLIENTS%%include/ldap_utf8.h
-@comment
-%%NO_CLIENTS%%lib/liblber.a
-%%NO_CLIENTS%%lib/liblber.so
-%%NO_CLIENTS%%lib/liblber.so.2
-%%NO_CLIENTS%%lib/libldap.a
-%%NO_CLIENTS%%lib/libldap.so
-%%NO_CLIENTS%%lib/libldap.so.2
-%%NO_CLIENTS%%lib/libldap_r.a
-%%NO_CLIENTS%%lib/libldap_r.so
-%%NO_CLIENTS%%lib/libldap_r.so.2
-@comment using USE_LIBTOOL make openldap to no longer to compile, so intall these 3 :(
-%%NO_CLIENTS%%lib/liblber.la
-%%NO_CLIENTS%%lib/libldap.la
-%%NO_CLIENTS%%lib/libldap_r.la
-@comment
-%%NO_CLIENTS%%share/openldap/ucdata/case.dat
-%%NO_CLIENTS%%share/openldap/ucdata/cmbcl.dat
-%%NO_CLIENTS%%share/openldap/ucdata/comp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/ctype.dat
-%%NO_CLIENTS%%share/openldap/ucdata/decomp.dat
-%%NO_CLIENTS%%share/openldap/ucdata/num.dat
-%%NO_CLIENTS%%share/openldap/ucdata/kdecomp.dat
-%%NO_CLIENTS%%@dirrm share/openldap/ucdata
-%%NO_CLIENTS%%@dirrm share/openldap
-@comment -----------------------------------------
-@comment BUILD_SLURPD
-@comment -----------------------------------------
-%%NO_SLUPRD%%etc/rc.d/slurpd.sh.sample
-%%NO_SLUPRD%%libexec/slurpd
-%%NO_SLUPRD%%@exec [ -d /var/db/openldap-slurp ] || /bin/mkdir /var/db/openldap-slurp
-%%NO_SLUPRD%%@unexec /bin/rmdir /var/db/openldap-slurp 2>/dev/null || true
-@comment
-@comment -----------------------------------------
-@comment BUILD_SLAPD
-@comment -----------------------------------------
-%%NO_SLAPD%%etc/rc.d/slapd.sh.sample
-%%NO_SLAPD%%libexec/slapd
-%%NO_SLAPD%%sbin/slapadd
-%%NO_SLAPD%%sbin/slapcat
-%%NO_SLAPD%%sbin/slapindex
-%%NO_SLAPD%%sbin/slappasswd
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
-%%NO_SLAPD%%etc/openldap/slapd.conf.default
-%%NO_SLAPD%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/README
-%%NO_SLAPD%%etc/openldap/schema/corba.schema.default
-%%NO_SLAPD%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/core.schema.default
-%%NO_SLAPD%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/cosine.schema.default
-%%NO_SLAPD%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/inetorgperson.schema.default
-%%NO_SLAPD%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/java.schema.default
-%%NO_SLAPD%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/misc.schema.default
-%%NO_SLAPD%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/nis.schema.default
-%%NO_SLAPD%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
-%%NO_SLAPD%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
-%%NO_SLAPD%%etc/openldap/schema/openldap.schema.default
-%%NO_SLAPD%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
-%%NO_SLAPD%%@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/db/openldap-data ] || /bin/mkdir /var/db/openldap-data
-%%NO_SLAPD%%@unexec /bin/rmdir /var/db/openldap-data 2>/dev/null || true
-%%NO_SLAPD%%@exec [ -d /var/run/ldap ] || /bin/mkdir /var/run/ldap
-%%NO_SLAPD%%@unexec /bin/rmdir /var/run/ldap 2>/dev/null || true
+bin/ldapadd
+bin/ldapcompare
+bin/ldapdelete
+bin/ldapmodify
+bin/ldapmodrdn
+bin/ldappasswd
+bin/ldapsearch
+bin/ldapwhoami
+%%SERVER%%@unexec %D/etc/rc.d/slapd.sh stop 2>/dev/null || true
+%%SERVER%%@unexec %D/etc/rc.d/slurpd.sh stop 2>/dev/null || true
+@unexec if cmp -s %D/etc/openldap/ldap.conf %D/etc/openldap/ldap.conf.default; then rm -f %D/etc/openldap/ldap.conf; fi
+etc/openldap/ldap.conf.default
+@exec [ -f %B/ldap.conf ] || cp %B/%f %B/ldap.conf
+%%SERVER%%etc/openldap/schema/README
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/corba.schema %D/etc/openldap/schema/corba.schema.default; then rm -f %D/etc/openldap/schema/corba.schema; fi
+%%SERVER%%etc/openldap/schema/corba.schema.default
+%%SERVER%%@exec [ -f %B/corba.schema ] || cp %B/%f %B/corba.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/core.schema %D/etc/openldap/schema/core.schema.default; then rm -f %D/etc/openldap/schema/core.schema; fi
+%%SERVER%%etc/openldap/schema/core.schema.default
+%%SERVER%%@exec [ -f %B/core.schema ] || cp %B/%f %B/core.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/cosine.schema %D/etc/openldap/schema/cosine.schema.default; then rm -f %D/etc/openldap/schema/cosine.schema; fi
+%%SERVER%%etc/openldap/schema/cosine.schema.default
+%%SERVER%%@exec [ -f %B/cosine.schema ] || cp %B/%f %B/cosine.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/inetorgperson.schema %D/etc/openldap/schema/inetorgperson.schema.default; then rm -f %D/etc/openldap/schema/inetorgperson.schema; fi
+%%SERVER%%etc/openldap/schema/inetorgperson.schema.default
+%%SERVER%%@exec [ -f %B/inetorgperson.schema ] || cp %B/%f %B/inetorgperson.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/java.schema %D/etc/openldap/schema/java.schema.default; then rm -f %D/etc/openldap/schema/java.schema; fi
+%%SERVER%%etc/openldap/schema/java.schema.default
+%%SERVER%%@exec [ -f %B/java.schema ] || cp %B/%f %B/java.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/misc.schema %D/etc/openldap/schema/misc.schema.default; then rm -f %D/etc/openldap/schema/misc.schema; fi
+%%SERVER%%etc/openldap/schema/misc.schema.default
+%%SERVER%%@exec [ -f %B/misc.schema ] || cp %B/%f %B/misc.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/nis.schema %D/etc/openldap/schema/nis.schema.default; then rm -f %D/etc/openldap/schema/nis.schema; fi
+%%SERVER%%etc/openldap/schema/nis.schema.default
+%%SERVER%%@exec [ -f %B/nis.schema ] || cp %B/%f %B/nis.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/schema/openldap.schema %D/etc/openldap/schema/openldap.schema.default; then rm -f %D/etc/openldap/schema/openldap.schema; fi
+%%SERVER%%etc/openldap/schema/openldap.schema.default
+%%SERVER%%@exec [ -f %B/openldap.schema ] || cp %B/%f %B/openldap.schema
+%%SERVER%%@unexec if cmp -s %D/etc/openldap/slapd.conf %D/etc/openldap/slapd.conf.default; then rm -f %D/etc/openldap/slapd.conf; fi
+%%SERVER%%etc/openldap/slapd.conf.default
+%%SERVER%%@exec [ -f %B/slapd.conf ] || cp %B/%f %B/slapd.conf
+%%SERVER%%@unexec /bin/rmdir %D/etc/openldap/schema 2>/dev/null || true
+@unexec /bin/rmdir %D/etc/openldap 2>/dev/null || true
+%%SERVER%%etc/rc.d/slapd.sh
+%%SERVER%%etc/rc.d/slurpd.sh
+include/lber.h
+include/lber_types.h
+include/ldap.h
+include/ldap_cdefs.h
+include/ldap_features.h
+include/ldap_schema.h
+include/ldap_utf8.h
+include/slapi-plugin.h
+lib/liblber.a
+lib/liblber.so
+lib/liblber.so.2
+lib/libldap.a
+lib/libldap.so
+lib/libldap.so.2
+lib/libldap_r.a
+lib/libldap_r.so
+lib/libldap_r.so.2
+%%SLAPI%%lib/libslapi.a
+%%SLAPI%%lib/libslapi.so
+%%SLAPI%%lib/libslapi.so.2
+%%SERVER%%libexec/slapd
+%%SERVER%%libexec/slurpd
+%%SERVER%%sbin/slapadd
+%%SERVER%%sbin/slapcat
+%%SERVER%%sbin/slapindex
+%%SERVER%%sbin/slappasswd
+share/openldap/ucdata/case.dat
+share/openldap/ucdata/cmbcl.dat
+share/openldap/ucdata/comp.dat
+share/openldap/ucdata/ctype.dat
+share/openldap/ucdata/decomp.dat
+share/openldap/ucdata/kdecomp.dat
+share/openldap/ucdata/num.dat
+@dirrm share/openldap/ucdata
+@dirrm share/openldap
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-slurp 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LOCALSTATEDIR%%/openldap-data 2>/dev/null || true
+%%SERVER%%@unexec /bin/rmdir %%LDAP_RUN_DIR%% 2>/dev/null || true