forked from pool/sssd
f488c1bcb9
* Support for IPv6 * Support for LDAP referrals * Offline failed login counter * Fix for the long-standing cache cleanup performance issues * libini_config, libcollection, libdhash, libref_array and libpath_utils are now built as shared libraries for general consumption * Users get feedback from PAM if they authenticated offline * Native local backend now has a utility to show nested memberships (sss_groupshow) * New "simple" access provider for easy restriction of users - Backported libcrypto support from master to avoid Mozilla NSS dependency - Backported password policy improvments for LDAP provider from master OBS-URL: https://build.opensuse.org/package/show/network:ldap/sssd?expand=0&rev=9
405 lines
11 KiB
RPMSpec
405 lines
11 KiB
RPMSpec
#
|
|
# spec file for package sssd (Version 1.0.5)
|
|
#
|
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
|
|
Name: sssd
|
|
Version: 1.1.0
|
|
Release: 0
|
|
Group: System/Daemons
|
|
Summary: System Security Services Daemon
|
|
License: GPLv3+ and LGPLv3+
|
|
URL: https://fedorahosted.org/sssd/
|
|
Source0: %{name}-%{version}.tar.gz
|
|
Patch1: 0001-Added-option-to-use-libcrypto-instead-of-NSS.patch
|
|
Patch2: 0002-Improvements-for-LDAP-Password-Policy-support.patch
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%define dhash_version 0.4.0
|
|
%define path_utils_version 0.2.0
|
|
%define collection_version 0.4.0
|
|
%define ini_config_version 0.4.0
|
|
%define refarray_version 0.1.0
|
|
|
|
### Dependencies ###
|
|
%define servicename sssd
|
|
%define sssdstatedir %{_localstatedir}/lib/sss
|
|
%define dbpath %{sssdstatedir}/db
|
|
%define pipepath %{sssdstatedir}/pipes
|
|
|
|
### Build Dependencies ###
|
|
BuildRequires: autoconf
|
|
BuildRequires: automake
|
|
BuildRequires: libtool
|
|
BuildRequires: m4
|
|
BuildRequires: popt-devel
|
|
BuildRequires: libtalloc-devel
|
|
BuildRequires: libtevent-devel
|
|
BuildRequires: libtdb-devel
|
|
BuildRequires: libldb-devel
|
|
BuildRequires: dbus-1-devel
|
|
BuildRequires: openldap2-devel
|
|
BuildRequires: pam-devel
|
|
BuildRequires: pkg-config
|
|
BuildRequires: pcre-devel
|
|
BuildRequires: libxslt
|
|
BuildRequires: libxml2
|
|
BuildRequires: docbook-xsl-stylesheets
|
|
BuildRequires: krb5-devel
|
|
BuildRequires: libcares-devel
|
|
BuildRequires: python-devel
|
|
|
|
%description
|
|
Provides a set of daemons to manage access to remote directories and
|
|
authentication mechanisms. It provides an NSS and PAM interface toward
|
|
the system and a pluggable backend system to connect to multiple different
|
|
account sources. It is also the basis to provide client auditing and policy
|
|
services for projects like FreeIPA.
|
|
|
|
%package ipa-provider
|
|
License: GPLv3+ and LGPLv3+
|
|
Summary: FreeIPA provider plugin for sssd
|
|
Group: System/Daemons
|
|
Requires: sssd = %{version}
|
|
|
|
%description ipa-provider
|
|
This package provide the FreeIPA provider plugin for the System Security
|
|
Services Daemon (sssd).
|
|
|
|
%package tools
|
|
License: GPLv3+ and LGPLv3+
|
|
Summary: Commandline tools for sssd
|
|
Group: System/Management
|
|
Requires: sssd = %{version}
|
|
|
|
%description tools
|
|
The packages contains commandline tools for managing users and groups using
|
|
the "local" id provider of the System Security Services Daemon (sssd).
|
|
|
|
%package -n python-sssd-config
|
|
License: GPLv3+ and LGPLv3+
|
|
Summary: Python API for configuring sssd
|
|
Group: Development/Libraries/Python
|
|
%{py_requires}
|
|
|
|
%description -n python-sssd-config
|
|
Provide python module to access and manage configuration of the System
|
|
Security Services Daemon (sssd).
|
|
|
|
%package -n libdhash1
|
|
Summary: Dynamic hash table
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{dhash_version}
|
|
License: LGPLv3+
|
|
|
|
%description -n libdhash1
|
|
A hash table which will dynamically resize to achieve optimal storage & access
|
|
time properties
|
|
|
|
%package -n libdhash-devel
|
|
Summary: Development files for libdhash
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{dhash_version}
|
|
Requires: libdhash = %{dhash_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libdhash-devel
|
|
A hash table which will dynamically resize to achieve optimal storage & access
|
|
time properties
|
|
|
|
%package -n libpath_utils1
|
|
Summary: Filesystem Path Utilities
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{path_utils_version}
|
|
License: LGPLv3+
|
|
|
|
%description -n libpath_utils1
|
|
Utility functions to manipulate filesystem pathnames
|
|
|
|
%package -n libpath_utils-devel
|
|
Summary: Development files for libpath_utils
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{path_utils_version}
|
|
Requires: libpath_utils = %{path_utils_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libpath_utils-devel
|
|
Utility functions to manipulate filesystem pathnames
|
|
|
|
%package -n libcollection1
|
|
Summary: Collection data-type for C
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{collection_version}
|
|
License: LGPLv3+
|
|
|
|
%description -n libcollection1
|
|
A data-type to collect data in a heirarchical structure for easy iteration
|
|
and serialization
|
|
|
|
%package -n libcollection-devel
|
|
Summary: Development files for libcollection
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{collection_version}
|
|
Requires: libcollection = %{collection_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libcollection-devel
|
|
A data-type to collect data in a heirarchical structure for easy iteration
|
|
and serialization
|
|
|
|
%package -n libini_config1
|
|
Summary: INI file parser for C
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{ini_config_version}
|
|
Requires: libcollection = %{collection_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libini_config1
|
|
Library to process config files in INI format into a libcollection data
|
|
structure
|
|
|
|
%package -n libini_config-devel
|
|
Summary: Development files for libini_config
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{ini_config_version}
|
|
Requires: libini_config = %{ini_config_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libini_config-devel
|
|
Library to process config files in INI format into a libcollection data
|
|
structure
|
|
|
|
%package -n libref_array1
|
|
Summary: A refcounted array for C
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{refarray_version}
|
|
License: LGPLv3+
|
|
|
|
%description -n libref_array1
|
|
A dynamically-growing, reference-counted array
|
|
|
|
%package -n libref_array-devel
|
|
Summary: Development files for libref_array
|
|
Group: Development/Libraries/C and C++
|
|
Version: %{refarray_version}
|
|
Requires: libref_array = %{refarray_version}-%{release}
|
|
License: LGPLv3+
|
|
|
|
%description -n libref_array-devel
|
|
A dynamically-growing, reference-counted array
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch1 -p1
|
|
%patch2 -p1
|
|
|
|
%build
|
|
autoreconf
|
|
export LDB_LIBS="-lldb"
|
|
export LDB_CFLAGS="-I/usr/include"
|
|
%configure \
|
|
--without-tests \
|
|
--with-db-path=%{dbpath} \
|
|
--with-pipe-path=%{pipepath} \
|
|
--with-init-dir=%{_initrddir} \
|
|
--enable-nsslibdir=/%{_lib} \
|
|
--enable-cryptp=yes \
|
|
--with-ldb-lib-dir=%{_libdir}/ldb \
|
|
--with-selinux=no
|
|
|
|
#make %{?_smp_mflags}
|
|
make
|
|
|
|
%install
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
|
# Copy default sssd.conf file
|
|
install -d $RPM_BUILD_ROOT/%{_sysconfdir}/sssd
|
|
install -m600 src/examples/sssd.conf $RPM_BUILD_ROOT%{_sysconfdir}/sssd/sssd.conf
|
|
install src/sysv/SUSE/sssd $RPM_BUILD_ROOT%{_sysconfdir}/init.d/sssd
|
|
ln -sf ../../etc/init.d/sssd $RPM_BUILD_ROOT/usr/sbin/rcsssd
|
|
|
|
# Remove .la files created by libtool
|
|
rm -f \
|
|
$RPM_BUILD_ROOT/%{_lib}/libnss_sss.la \
|
|
$RPM_BUILD_ROOT/%{_lib}/security/pam_sss.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/*.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/ldb/memberof.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/python2.6/site-packages/pysss.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_ldap.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_proxy.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_krb5.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_ipa.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_simple.la \
|
|
$RPM_BUILD_ROOT/%{_libdir}/krb5/plugins/libkrb5/sssd_krb5_locator_plugin.la
|
|
|
|
rm $RPM_BUILD_ROOT/%{_libdir}/*.a
|
|
%find_lang sss_daemon
|
|
|
|
install -d $RPM_BUILD_ROOT/%{_docdir}/dhash
|
|
mv $RPM_BUILD_ROOT/%{_datarootdir}/doc/dhash/* $RPM_BUILD_ROOT/%{_docdir}/dhash
|
|
#%find_lang sss_client
|
|
#cat sss_client.lang >> sss_daemon.lang
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
%preun
|
|
%stop_on_removal sssd
|
|
|
|
%postun
|
|
/sbin/ldconfig
|
|
%restart_on_update sssd
|
|
%insserv_cleanup
|
|
|
|
%post -n libdhash1 -p /sbin/ldconfig
|
|
|
|
%postun -n libdhash1 -p /sbin/ldconfig
|
|
|
|
%post -n libcollection1 -p /sbin/ldconfig
|
|
|
|
%postun -n libcollection1 -p /sbin/ldconfig
|
|
|
|
%post -n libref_array1 -p /sbin/ldconfig
|
|
|
|
%postun -n libref_array1 -p /sbin/ldconfig
|
|
|
|
%post -n libini_config1 -p /sbin/ldconfig
|
|
|
|
%postun -n libini_config1 -p /sbin/ldconfig
|
|
|
|
%post -n libpath_utils1 -p /sbin/ldconfig
|
|
|
|
%postun -n libpath_utils1 -p /sbin/ldconfig
|
|
|
|
%files -f sss_daemon.lang
|
|
%defattr(-,root,root,-)
|
|
%doc COPYING
|
|
%{_initrddir}/%{name}
|
|
%{_sbindir}/sssd
|
|
%{_sbindir}/rcsssd
|
|
%{_libexecdir}/%{servicename}/
|
|
#%{_libdir}/*.so.*
|
|
%dir %{_libdir}/%{name}/
|
|
%{_libdir}/%{name}/libsss_krb5*
|
|
%{_libdir}/%{name}/libsss_ldap*
|
|
%{_libdir}/%{name}/libsss_proxy*
|
|
%{_libdir}/%{name}/libsss_simple*
|
|
%{_libdir}/ldb/memberof.so
|
|
%{_libdir}/krb5/plugins/libkrb5/*
|
|
%dir %{sssdstatedir}
|
|
%attr(700,root,root) %dir %{dbpath}
|
|
%attr(755,root,root) %dir %{pipepath}
|
|
%attr(700,root,root) %dir %{pipepath}/private
|
|
%attr(750,root,root) %dir %{_var}/log/%{name}
|
|
%dir %{_sysconfdir}/sssd
|
|
%config(noreplace) %{_sysconfdir}/sssd/sssd.conf
|
|
%config %{_sysconfdir}/sssd/sssd.api.conf
|
|
%attr(700,root,root) %dir %{_sysconfdir}/sssd/sssd.api.d
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-krb5.conf
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-ldap.conf
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-local.conf
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-proxy.conf
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-simple.conf
|
|
/%{_lib}/libnss_sss.so.2
|
|
/%{_lib}/security/pam_sss.so
|
|
%{_mandir}/man5/sssd-krb5.*
|
|
%{_mandir}/man5/sssd-ldap.*
|
|
%{_mandir}/man5/sssd-simple.*
|
|
%{_mandir}/man5/sssd.conf.*
|
|
|
|
%files tools
|
|
%defattr(-,root,root,-)
|
|
%{_mandir}/man8/*
|
|
%{_sbindir}/sss_useradd
|
|
%{_sbindir}/sss_userdel
|
|
%{_sbindir}/sss_usermod
|
|
%{_sbindir}/sss_groupadd
|
|
%{_sbindir}/sss_groupdel
|
|
%{_sbindir}/sss_groupmod
|
|
%{_sbindir}/sss_groupshow
|
|
|
|
%files ipa-provider
|
|
%defattr(-,root,root,-)
|
|
%config %{_sysconfdir}/sssd/sssd.api.d/sssd-ipa.conf
|
|
%{_libdir}/sssd/libsss_ipa*
|
|
%{_mandir}/man5/sssd-ipa.*
|
|
|
|
%files -n python-sssd-config
|
|
%defattr(-,root,root,-)
|
|
%{python_sitearch}/pysss.so
|
|
%{python_sitelib}/*.py*
|
|
%{python_sitelib}/*.egg-info
|
|
|
|
%files -n libdhash1
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libdhash.so.*
|
|
|
|
%files -n libdhash-devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libdhash.so
|
|
%{_libdir}/pkgconfig/dhash.pc
|
|
%{_prefix}/include/dhash.h
|
|
%doc %{_docdir}/dhash
|
|
|
|
%files -n libpath_utils1
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libpath_utils.so.*
|
|
|
|
%files -n libpath_utils-devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libpath_utils.so
|
|
%{_libdir}/pkgconfig/path_utils.pc
|
|
%{_prefix}/include/path_utils.h
|
|
|
|
%files -n libini_config1
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libini_config.so.*
|
|
|
|
%files -n libini_config-devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libini_config.so
|
|
%{_libdir}/pkgconfig/ini_config.pc
|
|
%{_prefix}/include/ini_config.h
|
|
|
|
%files -n libcollection1
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libcollection.so.*
|
|
|
|
%files -n libcollection-devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libcollection.so
|
|
%{_libdir}/pkgconfig/collection.pc
|
|
%{_prefix}/include/collection*.h
|
|
|
|
%files -n libref_array1
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libref_array.so.*
|
|
|
|
%files -n libref_array-devel
|
|
%defattr(-,root,root,-)
|
|
%{_libdir}/libref_array.so
|
|
%{_libdir}/pkgconfig/ref_array.pc
|
|
%{_prefix}/include/ref_array*.h
|
|
|
|
%changelog
|