Add hooks for protecting headers and redirects.
[shibboleth/cpp-sp.git] / shibboleth.spec.in
index c18ff11..5c707d1 100644 (file)
@@ -1,6 +1,6 @@
 Name:          @PACKAGE@
 Version:       @PACKAGE_VERSION@
-Release:       1
+Release:       2
 Summary:    Open source system for attribute-based Web SSO
 Group:         System Environment/Libraries
 Vendor:     Internet2
@@ -10,7 +10,7 @@ Source:     %{name}-sp-%{version}.tar.gz
 BuildRoot:     %{_tmppath}/%{name}-%{version}-root
 PreReq:     openssl
 %if 0%{?suse_version} > 1030
-PreReq:         %insserv_prere
+PreReq:         %{insserv_prereq}
 BuildRequires:  libXerces-c-devel >= 2.8.0
 BuildRequires:  libxml-security-c-devel >= 1.4.0
 BuildRequires:  libxmltooling-devel >= 1.2
@@ -32,6 +32,7 @@ BuildRequires:  zlib-devel
 %{?_with_fastcgi:BuildRequires: fcgi-devel}
 %if "%{_vendor}" == "redhat"
 %{!?_without_builtinapache:BuildRequires: httpd-devel}
+BuildRequires: redhat-rpm-config
 %endif
 %if "%{_vendor}" == "suse"
 %{!?_without_builtinapache:BuildRequires: apache2-devel}
@@ -124,11 +125,11 @@ fi
 
 %if "%{_vendor}" == "redhat" || "%{_vendor}" == "suse"
        # %{_initddir} not yet in RHEL5, use deprecated %{_initrddir}
-       mkdir -p $RPM_BUILD_ROOT%{_initrddir}
-       install -d -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/shibd-%{_vendor} $RPM_BUILD_ROOT%{_initrddir}/shibd
+       install -d -m 0755 $RPM_BUILD_ROOT%{_initrddir}
+       install -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/shibd-%{_vendor} $RPM_BUILD_ROOT%{_initrddir}/shibd
 %if "%{_vendor}" == "suse"
        install -d -m 0755 $RPM_BUILD_ROOT/%{_sbindir}
-       %{__ln} -sf $RPM_BUILD_ROOT%{_initrddir}/shibd $RPM_BUILD_ROOT/%{_sbindir}/rcshibd
+       %{__ln_s} -f %{_initrddir}/shibd $RPM_BUILD_ROOT%{_sbindir}/rcshibd
 %endif
 %endif
 
@@ -154,10 +155,12 @@ sh ./keygen.sh -b
     if [ "$1" -gt "1" ] ; then
         /etc/init.d/shibd status 1>/dev/null && /etc/init.d/shibd restart 1>/dev/null
         %{!?_without_builtinapache:/etc/init.d/httpd status 1>/dev/null && /etc/init.d/httpd restart 1>/dev/null}
+        exit 0
     fi
 %endif
 %if "%{_vendor}" == "suse"
     # This adds the proper /etc/rc*.d links for the script
+    cd /
     %insserv_force_if_yast shibd
 %endif
 
@@ -166,19 +169,26 @@ sh ./keygen.sh -b
        if [ "$1" = 0 ] ; then
                /sbin/service shibd stop >/dev/null 2>&1
                /sbin/chkconfig --del shibd
+        %{!?_without_builtinapache:/etc/init.d/httpd status 1>/dev/null && /etc/init.d/httpd restart 1>/dev/null}
        fi
 %endif
 %if "%{_vendor}" == "suse"
     %stop_on_removal shibd
+    if [ "$1" = 0 ] ; then
+        %{!?_without_builtinapache:/etc/init.d/apache2 status 1>/dev/null && /etc/init.d/apache2 restart 1>/dev/null}
+    fi
 %endif
+exit 0
 
 %postun
 %ifnos solaris2.8 solaris2.9 solaris2.10
 /sbin/ldconfig
 %endif
 %if "%{_vendor}" == "suse"
-%restart_on_update shibd apache2
-%insserv_cleanup
+cd /
+%restart_on_update shibd
+%{!?_without_builtinapache:%restart_on_update apache2}
+%{insserv_cleanup}
 %endif
 
 %posttrans
@@ -234,6 +244,11 @@ sh ./keygen.sh -b
 %doc %{pkgdocdir}/api
 
 %changelog
+* Wed Aug 19 2009 Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-2
+- SuSE init script changes
+- Restart Apache on removal, not just upgrade
+- Fix scriptlet exit values when Apache is stopped
+
 * Mon Aug 10 2009 Scott Cantor  <cantor.2@osu.edu>  - 2.2.1-1
 - Doc handling changes
 - SuSE init script