From 1e125b279cad708ca816c72adf67c6c960c717f2 Mon Sep 17 00:00:00 2001 From: Jun Kuriyama Date: Wed, 2 Jul 2003 14:49:57 +0000 Subject: Add openldap22 port after repocopy from openldap21. Submitted by: Oliver Eikemeier PR: ports/53571 --- net/Makefile | 1 + net/openldap22-server/Makefile | 550 ++++++--------------- net/openldap22-server/distinfo | 3 +- net/openldap22-server/files/manpages | 188 +++++++ net/openldap22-server/files/patch-build::ltmain.sh | 15 + .../files/patch-libraries::liblutil::passwd.c | 14 + .../files/patch-servers::slapd::daemon.c | 11 + net/openldap22-server/files/slapd.sh | 71 +-- net/openldap22-server/files/slurpd.sh | 64 ++- net/openldap22-server/pkg-descr | 19 +- net/openldap22-server/pkg-install | 53 +- net/openldap22-server/pkg-message | 32 +- net/openldap22-server/pkg-plist | 180 ++++--- net/openldap22/Makefile | 550 ++++++--------------- net/openldap22/distinfo | 3 +- net/openldap22/files/manpages | 188 +++++++ net/openldap22/files/patch-build::ltmain.sh | 15 + .../files/patch-libraries::liblutil::passwd.c | 14 + .../files/patch-servers::slapd::daemon.c | 11 + net/openldap22/files/slapd.sh | 71 +-- net/openldap22/files/slurpd.sh | 64 ++- net/openldap22/pkg-descr | 19 +- net/openldap22/pkg-install | 53 +- net/openldap22/pkg-message | 32 +- net/openldap22/pkg-plist | 180 ++++--- net/openldap23-server/Makefile | 550 ++++++--------------- net/openldap23-server/distinfo | 3 +- net/openldap23-server/files/manpages | 188 +++++++ net/openldap23-server/files/patch-build::ltmain.sh | 15 + .../files/patch-libraries::liblutil::passwd.c | 14 + .../files/patch-servers::slapd::daemon.c | 11 + net/openldap23-server/files/slapd.sh | 71 +-- net/openldap23-server/files/slurpd.sh | 64 ++- net/openldap23-server/pkg-descr | 19 +- net/openldap23-server/pkg-install | 53 +- net/openldap23-server/pkg-message | 32 +- net/openldap23-server/pkg-plist | 180 ++++--- net/openldap24-server/Makefile | 550 ++++++--------------- net/openldap24-server/distinfo | 3 +- net/openldap24-server/files/manpages | 188 +++++++ net/openldap24-server/files/patch-build::ltmain.sh | 15 + .../files/patch-libraries::liblutil::passwd.c | 14 + .../files/patch-servers::slapd::daemon.c | 11 + net/openldap24-server/files/slapd.sh | 71 +-- net/openldap24-server/files/slurpd.sh | 64 ++- net/openldap24-server/pkg-descr | 19 +- net/openldap24-server/pkg-install | 53 +- net/openldap24-server/pkg-message | 32 +- net/openldap24-server/pkg-plist | 180 ++++--- 49 files changed, 2329 insertions(+), 2472 deletions(-) create mode 100644 net/openldap22-server/files/manpages create mode 100644 net/openldap22-server/files/patch-build::ltmain.sh create mode 100644 net/openldap22-server/files/patch-libraries::liblutil::passwd.c create mode 100644 net/openldap22-server/files/patch-servers::slapd::daemon.c create mode 100644 net/openldap22/files/manpages create mode 100644 net/openldap22/files/patch-build::ltmain.sh create mode 100644 net/openldap22/files/patch-libraries::liblutil::passwd.c create mode 100644 net/openldap22/files/patch-servers::slapd::daemon.c create mode 100644 net/openldap23-server/files/manpages create mode 100644 net/openldap23-server/files/patch-build::ltmain.sh create mode 100644 net/openldap23-server/files/patch-libraries::liblutil::passwd.c create mode 100644 net/openldap23-server/files/patch-servers::slapd::daemon.c create mode 100644 net/openldap24-server/files/manpages create mode 100644 net/openldap24-server/files/patch-build::ltmain.sh create mode 100644 net/openldap24-server/files/patch-libraries::liblutil::passwd.c create mode 100644 net/openldap24-server/files/patch-servers::slapd::daemon.c 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 -# -# 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 -.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: +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 +.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 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 -# -# 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 -.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: +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 +.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 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 -# -# 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 -.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: +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 +.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 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 -# -# 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 -.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: +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 +.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 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 -- cgit v1.2.3