############################################################################### # IPFire.org - An Open Source Firewall Solution # # Copyright (C) - IPFire Development Team # ############################################################################### name = openldap version = 2.4.32 release = 5 groups = System/Daemons url = http://www.openldap.org/ license = OpenLDAP summary = LDAP support libraries. description OpenLDAP is an open source suite of LDAP (Lightweight Directory Access Protocol) applications and development tools. LDAP is a set of protocols for accessing directory services over the Internet, similar to the way DNS information is propagated over the Internet. The openldap package contains configuration files, libraries, and documentation for OpenLDAP. end source_dl = ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/ sources = %{thisapp}.tgz build requires db4-devel cyrus-sasl-devel groff libtool libtool-devel openssl-devel pth-devel shadow-utils end configure_options += \ --libexecdir=%{libdir} \ --sysconfdir=/etc \ --localstatedir=/var \ --with-threads=posix \ --disable-perl \ --enable-dynamic \ --enable-crypt \ --enable-modules \ --enable-rlookups \ --enable-backends=mod \ --enable-overlays=mod \ --enable-sql=no \ --enable-ndb=no \ --enable-hdb=yes \ --enable-monitor=yes \ --disable-static prepare_cmds %{create_user} end install_cmds mv -v %{BUILDROOT}%{libdir}/slapd %{BUILDROOT}/usr/sbin/slapd ln -svf slapd %{BUILDROOT}/usr/sbin/slapacl ln -svf slapd %{BUILDROOT}/usr/sbin/slapadd ln -svf slapd %{BUILDROOT}/usr/sbin/slapauth ln -svf slapd %{BUILDROOT}/usr/sbin/slapcat ln -svf slapd %{BUILDROOT}/usr/sbin/slapdn ln -svf slapd %{BUILDROOT}/usr/sbin/slapindex ln -svf slapd %{BUILDROOT}/usr/sbin/slappasswd ln -svf slapd %{BUILDROOT}/usr/sbin/slapschema ln -svf slapd %{BUILDROOT}/usr/sbin/slaptest # Remove unneeded files. rm -rvf %{BUILDROOT}%{sysconfidir}/slapd.{conf,ldif} rm -rvf %{BUILDROOT}%{localstatedir}/openldap-data rm -rvf %{BUILDROOT}%{localstatedir}/run for LINK in lber ldap ldap_r; do chmod -v 0755 %{BUILDROOT}%{libdir}/$(readlink %{BUILDROOT}%{libdir}/lib${LINK}.so) done # Install configuration file. mkdir -pv %{BUILDROOT}%{datadir}/%{name} cp -vf %{DIR_SOURCE}/openldap-conf.ldif \ %{BUILDROOT}%{datadir}/%{name}/ # Install ldapcert.sh script. install -m 0755 %{DIR_SOURCE}/ldapcert.sh \ %{BUILDROOT}%{datadir}/%{name}/ # Create directoires. mkdir -pv %{BUILDROOT}%{sysconfdir}/%{name}/slapd.d mkdir -pv %{BUILDROOT}%{sysconfdir}/%{name}/certs mkdir -pv %{BUILDROOT}/run/%{name} mkdir -pv %{BUILDROOT}%{sharedstatedir}/ldap # Fix permissions and ownerships. chown -Rv ldap:ldap %{BUILDROOT}%{sysconfdir}/%{name} chown ldap:ldap %{BUILDROOT}/run/%{name} chown ldap:ldap %{BUILDROOT}%{sharedstatedir}/ldap chmod 700 -Rv %{BUILDROOT}%{sharedstatedir}/ldap end end create_user getent group ldap >/dev/null || groupadd -r ldap getent passwd ldap >/dev/null || useradd -r -g ldap \ -d /var/lib/ldap -s /sbin/nologin -c "OpenLDAP server" ldap end packages package %{name} prerequires openssl shadow-utils end script prein %{create_user} end datafiles %{sysconfdir}/%{name}/slapd.d %{sysconfdir}/%{name}/certs %{sharedstatedir}/ldap end script postin systemctl daemon-reload >/dev/null 2>&1 || : systemctl enable openldap.socket >/dev/null 2>&1 || : end script preun systemctl --no-reload disable openldap.service >/dev/null 2>&1 || : systemctl --no-reload disable openldap.socket >/dev/null 2>&1 || : systemctl stop openldap.service >/dev/null 2>&1 || : systemctl stop openldap.socket >/dev/null 2>&1 || : end script postun systemctl daemon-reload >/dev/null 2>&1 || : end script postup systemctl daemon-reload >/dev/null 2>&1 || : systemctl try-restart openldap.service >/dev/null 2>&1 || : end end package %{name}-libs template LIBS end package %{name}-devel template DEVEL end package %{name}-debuginfo template DEBUGINFO end end