summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2009-03-06 21:39:38 +0100
committerStephen Gallagher <sgallagh@redhat.com>2009-03-06 16:32:50 -0500
commit2ea4380ea984c8b5915a15007522e69de0a21853 (patch)
tree9d4d2312abfa160dfa14c2a2b4adf3e0269c08bd
parentfc53d75bb97c97775c5afd274727ff47c966c93c (diff)
downloadsssd-2ea4380ea984c8b5915a15007522e69de0a21853.tar.gz
sssd-2ea4380ea984c8b5915a15007522e69de0a21853.tar.xz
sssd-2ea4380ea984c8b5915a15007522e69de0a21853.zip
Specfile changes related to package review, package initscript Call ldconfig
-rw-r--r--server/Makefile.in3
-rw-r--r--server/conf_macros.m416
-rw-r--r--server/configure.ac1
-rw-r--r--server/sysv/sssd106
-rw-r--r--sssd.spec43
5 files changed, 160 insertions, 9 deletions
diff --git a/server/Makefile.in b/server/Makefile.in
index 97b711281..329d06223 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -11,6 +11,7 @@ bindir = @bindir@
sbindir = @sbindir@
mandir = @mandir@
localstatedir = @localstatedir@
+initrddir = @initrddir@
VPATH = @srcdir@:@libreplacedir@
srcdir = @srcdir@
builddir = @builddir@
@@ -163,6 +164,7 @@ install:: all installdirs installheaders installlibs installbin installsupport
${INSTALLCMD} -d $(DESTDIR)$(sbindir)
${INSTALLCMD} -m 755 sbin/sssd $(DESTDIR)$(sbindir)
${INSTALLCMD} -m 755 $(TOOLSBINS) $(DESTDIR)$(sbindir)
+ ${INSTALLCMD} -m 755 sysv/sssd $(DESTDIR)$(initrddir)
${INSTALLCMD} -d $(DESTDIR)$(SSSD_LIBEXEC_PATH)
${INSTALLCMD} -m 755 $(LIBEXECBINS) $(DESTDIR)$(SSSD_LIBEXEC_PATH)
@@ -170,6 +172,7 @@ installdirs::
mkdir -p $(DESTDIR)$(includedir) \
$(DESTDIR)$(libdir) \
$(DESTDIR)$(sbindir) \
+ $(DESTDIR)$(initrddir) \
$(DESTDIR)$(SSSD_LIBDIR) \
$(DESTDIR)$(LDB_LIBDIR) \
$(DESTDIR)$(DBUS_SYSBUS_POLICY_DIR) \
diff --git a/server/conf_macros.m4 b/server/conf_macros.m4
index a65b5130c..e5ecaa700 100644
--- a/server/conf_macros.m4
+++ b/server/conf_macros.m4
@@ -107,3 +107,19 @@ AC_DEFUN(WITH_TESTS,
fi
])
+AC_DEFUN(WITH_INITRD_DIR,
+ [ AC_ARG_WITH([initrd-dir],
+ [AC_HELP_STRING([--with-initrd-dir=DIR],
+ [Where to store init script for sssd [/etc/rc.d/init.d]]
+ )
+ ]
+ )
+ initrddir="/etc/rc.d/init.d"
+ if test x"$with_initrd_dir" != x; then
+ initrddir=$with_initrd_dir
+ fi
+ AC_SUBST(initrddir)
+ AC_DEFINE_UNQUOTED(INITRD_DIR, "$initrddir", [Where to store init script for sssd])
+ ])
+
+
diff --git a/server/configure.ac b/server/configure.ac
index 0c1036a9f..f12a75c50 100644
--- a/server/configure.ac
+++ b/server/configure.ac
@@ -44,6 +44,7 @@ WITH_PIPE_PATH
WITH_INFOPIPE
WITH_POLICYKIT
WITH_TESTS
+WITH_INITRD_DIR
m4_include(pkg.m4)
m4_include(libpopt.m4)
diff --git a/server/sysv/sssd b/server/sysv/sssd
new file mode 100644
index 000000000..e4f6c47bc
--- /dev/null
+++ b/server/sysv/sssd
@@ -0,0 +1,106 @@
+#!/bin/sh
+#
+#
+# chkconfig: 2345 40 60
+# 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.
+#
+
+RETVAL=0
+prog="sssd"
+
+# Source function library.
+. /etc/init.d/functions
+
+SSSD=/usr/sbin/sssd
+
+LOCK_FILE=/var/lock/subsys/sssd
+PID_FILE=/var/run/sssd.pid
+
+start() {
+ [ -x $SSSD ] || exit 5
+ echo -n $"Starting $prog: "
+ daemon $SSSD -D && success || failure
+ RETVAL=$?
+ [ "$RETVAL" = 0 ] && touch $LOCK_FILE
+ echo
+}
+
+stop() {
+ echo -n $"Stopping $prog: "
+ killproc -p $PID_FILE $SSSD -TERM
+ RETVAL=$?
+ [ "$RETVAL" = 0 ] && rm -f $LOCK_FILE
+ echo
+}
+
+reload() {
+ echo -n $"Reloading $prog: "
+ killproc $SSSD -HUP
+ echo
+}
+
+restart() {
+ stop
+ start
+}
+
+reload() {
+ restart
+}
+
+force_reload() {
+ restart
+}
+
+rh_status() {
+ # run checks to determine if the service is running or use generic status
+ status $prog
+}
+
+rh_status_q() {
+ rh_status >/dev/null 2>&1
+}
+
+case "$1" in
+ start)
+ rh_status_q && exit 0
+ $1
+ ;;
+
+ stop)
+ rh_status_q || exit 0
+ $1
+ ;;
+
+ restart)
+ $1
+ ;;
+
+ reload)
+ rh_status_q || exit 7
+ $1
+ ;;
+
+ force-reload)
+ force_reload
+ ;;
+
+ status)
+ rh_status
+ ;;
+
+ condrestart|try-restart)
+ rh_status_q || exit 0
+ restart
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+ exit 2
+esac
+exit $?
+
diff --git a/sssd.spec b/sssd.spec
index 71c14f396..fef2c798b 100644
--- a/sssd.spec
+++ b/sssd.spec
@@ -1,19 +1,25 @@
-# XXX What version to call this?
-%define sssd_release 3%{?dist}
-%define sssd_version 0.1.0
-
Name: sssd
-Version: %{sssd_version}
-Release: %{sssd_release}
+Version: 0.1.0
+Release: 4%{dist}
Group: Applications/System
Summary: System Security Services Daemon
+# The entire source code is GPLv3+ except replace/ which is LGPLv3+
License: GPLv3+ and LGPLv3+
URL: http://www.freeipa.org/
-Source0: sssd-%{sssd_version}.tar.gz
+Source0: sssd-%{version}.tar.gz
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
### Patches ###
+### Dependencies ###
+
+Requires: libldb >= 0.9.3
+
+Requires(preun): initscripts chkconfig
+Requires(postun): /sbin/service
+
+%define servicename sssd
+
### Build Dependencies ###
BuildRequires: autoconf
@@ -49,7 +55,8 @@ pushd server
--without-tests \
--without-policykit \
--with-openldap \
- --with-infopipe
+ --with-infopipe \
+ --with-initrd-dir=%{_initrddir} \
make %{?_smp_mflags}
popd
@@ -78,10 +85,11 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc COPYING
+%{_initrddir}/%{name}
%{_sbindir}/sssd
%{_sbindir}/sss_useradd
%{_sbindir}/sss_userdel
-%{_libexecdir}/%{name}/
+%{_libexecdir}/%{servicename}/
%{_libdir}/%{name}/
%{_libdir}/ldb/memberof.so*
%{_sharedstatedir}/sss/
@@ -91,8 +99,25 @@ rm -rf $RPM_BUILD_ROOT
/%{_lib}/libnss_sss.so.2
/%{_lib}/security/pam_sss.so
+%post -p /sbin/ldconfig
+
+%preun
+if [ $1 = 0 ]; then
+ /sbin/service %{servicename} stop 2>&1 > /dev/null
+ /sbin/chkconfig --del %{servicename}
+fi
+
+%postun
+/sbin/ldconfig
+if [ $1 -ge 1 ] ; then
+ /sbin/service %{servicename} condrestart 2>&1 > /dev/null
+fi
%changelog
+* Fri Mar 06 2009 Jakub Hrozek <jhrozek@redhat.com> - 0.1.0-4
+- fixed items found during review
+- added initscript
+
* Thu Mar 05 2009 Sumit Bose <sbose@redhat.com> - 0.1.0-3
- added sss_client