[cpp-linbuild] branch main updated: Major strip down for alpha.

Scott Cantor cantor.2 at osu.edu
Fri Oct 3 19:59:54 UTC 2025


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch main
in repository cpp-linbuild.

View the commit online:
http://git.shibboleth.net/view/?p=cpp-linbuild.git;a=commit;h=5dbfc7e6725ca64766b3cadef403bffe2ed8fe8e

The following commit(s) were added to refs/heads/main by this push:
     new 5dbfc7e  Major strip down for alpha.
5dbfc7e is described below

commit 5dbfc7e6725ca64766b3cadef403bffe2ed8fe8e
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Fri Oct 3 15:59:50 2025 -0400

    Major strip down for alpha.
---
 common/SPECS/shibboleth.spec | 322 +++++++------------------------------------
 1 file changed, 46 insertions(+), 276 deletions(-)

diff --git a/common/SPECS/shibboleth.spec b/common/SPECS/shibboleth.spec
index e4db1cb..c7547e8 100644
--- a/common/SPECS/shibboleth.spec
+++ b/common/SPECS/shibboleth.spec
@@ -1,52 +1,29 @@
-Name: shibboleth
-Version: 3.5.1
-Release: 2%{?dist}
-Summary: Open source system for attribute-based Web SSO
+Name: shibboleth-sp
+Version: 4.0.0alpha1
+Release: %{?dist}
+Summary: Open source agent for attribute-based Web SSO
 Group: Productivity/Networking/Security
 Vendor: Shibboleth Consortium
 License: Apache-2.0
 URL: http://shibboleth.net/
-Source0: https://shibboleth.net/downloads/service-provider/%{version}/%{name}-sp-%{version}.tar.bz2
-Obsoletes: shibboleth-sp = 2.5.0
-Requires: openssl
-%if 0%{?rhel} >= 7 || 0%{?amzn} == 2
-Requires(pre,preun): xmltooling-schemas%{?_isa} >= 3.3.0
-Requires(pre,preun): opensaml-schemas%{?_isa} >= 3.3.0
-%else
-Requires(pre,preun): xmltooling-schemas >= 3.3.0
-Requires(pre,preun): opensaml-schemas >= 3.3.0
-%endif
+Source0: https://shibboleth.net/downloads/service-provider/%{version}/%{name}-%{version}.tar.bz2
+
+# Still needed?
 %if 0%{?rhel} >= 7 || 0%{?amzn} >= 2
 Requires: hostname
-BuildRequires: systemd-devel
-%{?systemd_requires}
 %else
 Requires: net-tools
 %endif
+
+# Still needed?
 %if 0%{?rhel} >= 8
 BuildRequires: gdb
 %endif
-BuildRequires: libxerces-c-devel >= 3.2
-BuildRequires: libxml-security-c-devel >= 2.0.0
-BuildRequires: libxmltooling-devel >= 3.2.0
-BuildRequires: libsaml-devel >= 3.2.0
-%{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
-%{!?_with_log4cpp:BuildRequires: liblog4shib-devel >= 2}
-%if 0%{?rhel} == 7 || 0%{?amzn} == 2
-Requires: libcurl-openssl%{?_isa} >= 7.21.7
-BuildRequires: chrpath
-%endif
+
 BuildRequires: gcc-c++
 BuildRequires: pkgconfig
 BuildRequires: boost-devel >= 1.32.0
-%{!?_without_gssapi:BuildRequires: krb5-devel}
-%{!?_without_doxygen:BuildRequires: doxygen}
-%{!?_without_odbc:BuildRequires:unixODBC-devel}
 %{?_with_fastcgi:BuildRequires: fcgi-devel}
-%if 0%{?centos} == 7 || 0%{?rhel} == 7
-BuildRequires: libmemcached-devel
-%endif
-%{?_with_memcached:BuildRequires: libmemcached-devel}
 %if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
 %if 0%{?rhel} >= 7 || 0%{?amzn} == 2
 %{!?_without_builtinapache:BuildRequires: httpd-devel%{?_isa}}
@@ -57,72 +34,47 @@ BuildRequires: redhat-rpm-config
 Requires(pre): shadow-utils
 %endif
 
-%define runuser shibd
-%define pkgdocdir %{_docdir}/shibboleth-%{version}
+%define pkgdocdir %{_docdir}/%{name}-%{version}
 
 %description
-Shibboleth is a Web Single Sign-On implementations based on OpenSAML
-that supports multiple protocols, federated identity, and the extensible
-exchange of rich attributes subject to privacy controls.
+Shibboleth is a Web Single Sign-On software collection that supports
+multiple protocols, federated identity, and the extensible exchange
+of rich attributes subject to privacy controls.
 
-This package contains the Shibboleth Service Provider runtime libraries,
-daemon, default plugins, and Apache module(s).
+This package contains the Shibboleth Service Provider V4 Agent for
+Apache 2.4 and (on some platforms) FastCGI. It is non-functional
+without a Hub to operate against, a set of plugins provided for
+the Shibboleth Identity Provider software.
 
 %package devel
-Summary: Shibboleth Development Headers
+Summary: Shibboleth Agent Headers
 Group: Development/Libraries/C and C++
 Requires: %{name} = %{version}-%{release}
-Obsoletes: shibboleth-sp-devel = 2.5.0
-Requires: libxerces-c-devel >= 3.2
-Requires: libxml-security-c-devel >= 2.0.0
-Requires: libxmltooling-devel >= 3.3.0
-Requires: libsaml-devel >= 3.3.0
-%{?_with_log4cpp:Requires: liblog4cpp-devel >= 1.0}
-%{!?_with_log4cpp:Requires: liblog4shib-devel >= 2}
 
 %description devel
-Shibboleth is a Web Single Sign-On implementations based on OpenSAML
-that supports multiple protocols, federated identity, and the extensible
-exchange of rich attributes subject to privacy controls.
-
-This package includes files needed for development with Shibboleth.
+This package includes files needed for development of extensions to
+the Shibboleth SP V4 Agent.
 
 %prep
-%setup -q -n %{name}-sp-%{version}
+%setup -q -n %{name}-%{version}
 
 %build
-%if 0%{?amzn2023}
-    %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{!?_without_gssapi:--with-gssapi} %{?_with_memcached} %{!?_without_systemd:--enable-systemd} %{?shib_options}
-%else
-%if 0%{?rhel} >= 8
-    %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{!?_without_gssapi:--with-gssapi} %{?_with_memcached} %{!?_without_systemd:--enable-systemd} %{?shib_options}
-%else
-%if 0%{?rhel} >= 7
+# This might go away, depends on pkconfig support for libcurl...
+%if 0%{?rhel} == 7
     # includes Amazon Linux 2
-    %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{!?_without_gssapi:--with-gssapi} %{!?_without_memcached:--with-memcached} %{!?_without_systemd:--enable-systemd} %{?shib_options} PKG_CONFIG_PATH=/opt/shibboleth/%{_lib}/pkgconfig
+    %configure %{?_with_fastcgi} %{?shib_options} PKG_CONFIG_PATH=/opt/%{name}/%{_lib}/pkgconfig
 %else
-    %configure %{?_without_odbc:--disable-odbc} %{?_without_adfs:--disable-adfs} %{?_with_fastcgi} %{!?_without_gssapi:--with-gssapi} %{?_with_memcached} %{?shib_options}
-%endif
-%endif
+    %configure %{?_with_fastcgi} %{?shib_options}
 %endif
 %{__make} pkgdocdir=%{pkgdocdir}
 
 %install
-%make_install NOKEYGEN=1 pkgdocdir=%{pkgdocdir}
+%make_install pkgdocdir=%{pkgdocdir}
 
-# Plug the SP into the built-in Apache on a recognized system.
+# Plug the agent into the built-in Apache on a recognized system.
 touch rpm.filelist
 APACHE_CONFIG="no"
-if [ -f $RPM_BUILD_ROOT%{_libdir}/shibboleth/mod_shib_13.so ] ; then
-    APACHE_CONFIG="apache.config"
-fi
-if [ -f $RPM_BUILD_ROOT%{_libdir}/shibboleth/mod_shib_20.so ] ; then
-    APACHE_CONFIG="apache2.config"
-fi
-if [ -f $RPM_BUILD_ROOT%{_libdir}/shibboleth/mod_shib_22.so ] ; then
-    APACHE_CONFIG="apache22.config"
-fi
-if [ -f $RPM_BUILD_ROOT%{_libdir}/shibboleth/mod_shib_24.so ] ; then
+if [ -f $RPM_BUILD_ROOT%{_libdir}/%{name}/mod_shib_24.so ] ; then
     APACHE_CONFIG="apache24.config"
 fi
 %{?_without_builtinapache:APACHE_CONFIG="no"}
@@ -136,164 +88,20 @@ if [ "$APACHE_CONFIG" != "no" ] ; then
     fi
     if [ "$APACHE_CONFD" != "no" ] ; then
         %{__mkdir} -p $RPM_BUILD_ROOT$APACHE_CONFD
-        %{__cp} -p $RPM_BUILD_ROOT%{_sysconfdir}/shibboleth/$APACHE_CONFIG $RPM_BUILD_ROOT$APACHE_CONFD/shib.conf
+        %{__cp} -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/$APACHE_CONFIG $RPM_BUILD_ROOT$APACHE_CONFD/shib.conf
         echo "%config(noreplace) $APACHE_CONFD/shib.conf" >> rpm.filelist
     fi
 fi
 
-# Establish location of systemd file, if any.
-SYSTEMD_SHIBD="no"
-%if 0%{?rhel} >= 7 || 0%{?amzn} >= 2
-    %{__mkdir} -p $RPM_BUILD_ROOT%{_unitdir}
-    echo "%attr(0444,-,-) %{_unitdir}/shibd.service" >> rpm.filelist
-    SYSTEMD_SHIBD="$RPM_BUILD_ROOT%{_unitdir}/shibd.service"
-
-    # Get run directory created at boot time.
-    %{__mkdir} -p $RPM_BUILD_ROOT%{_tmpfilesdir}
-    echo "%attr(0444,-,-) %{_tmpfilesdir}/%{name}.conf" >> rpm.filelist
-    cat > $RPM_BUILD_ROOT%{_tmpfilesdir}/%{name}.conf <<EOF
-d /run/%{name} 755 %{runuser} %{runuser} -
-EOF
-%endif
-
-# Otherwise, establish location of sysconfig file, if any.
-SYSCONFIG_SHIBD="no"
-if [ "$SYSTEMD_SHIBD" == "no" ] ; then
-%if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-    %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
-    echo "%config(noreplace) %{_sysconfdir}/sysconfig/shibd" >> rpm.filelist
-    SYSCONFIG_SHIBD="$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/shibd"
-%endif
-fi
-
-if [ "$SYSTEMD_SHIBD" != "no" ] ; then
-    # Populate the systemd file
-    cat > $SYSTEMD_SHIBD <<EOF
-[Unit]
-Description=Shibboleth Service Provider Daemon
-Documentation=https://wiki.shibboleth.net/confluence/display/SP3/Home
-After=network-online.target
-Before=httpd.service
-
-[Service]
-Type=notify
-NotifyAccess=main
-User=%{runuser}
-%if 0%{?rhel} == 7 || 0%{?amzn} == 2
-Environment=LD_LIBRARY_PATH=/opt/shibboleth/%{_lib}
-%endif
-ExecStart=%{_sbindir}/shibd -f -F
-StandardInput=null
-StandardOutput=null
-StandardError=journal
-TimeoutStopSec=1m
-TimeoutStartSec=5m
-Restart=on-failure
-RestartSec=30s
-
-[Install]
-WantedBy=multi-user.target
-EOF
-elif [ "$SYSCONFIG_SHIBD" != "no" ] ; then
-    # Populate the sysconfig file.
-    cat > $SYSCONFIG_SHIBD <<EOF
-# Shibboleth SP init script customization
-
-# User account for shibd
-SHIBD_USER=%{runuser}
-
-# Umask for shibd
-# SHIBD_UMASK=022
-
-# Wait period (secs) for configuration (and metadata) to load
-SHIBD_WAIT=30
-EOF
-    %if 0%{?rhel} == 7 || 0%{?amzn} == 2
-        cat >> $SYSCONFIG_SHIBD <<EOF
-
-# Override OS-supplied libcurl
-export LD_LIBRARY_PATH=/opt/shibboleth/%{_lib}
-EOF
-    %endif
-fi
-
-%if 0%{?rhel} == 7 || 0%{?amzn} == 2
-    # Strip existing rpath to libcurl.
-    chrpath -d $RPM_BUILD_ROOT%{_sbindir}/shibd
-    chrpath -d $RPM_BUILD_ROOT%{_bindir}/mdquery
-    chrpath -d $RPM_BUILD_ROOT%{_bindir}/resolvertest
-%endif
-
-%if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-if [ "$SYSTEMD_SHIBD" == "no" ] ; then
-    install -d -m 0755 $RPM_BUILD_ROOT%{_initddir}
-    install -m 0755 $RPM_BUILD_ROOT%{_sysconfdir}/shibboleth/shibd-%{_vendor} $RPM_BUILD_ROOT%{_initddir}/shibd
-fi
-%endif
-
 %check
 %{__make} check
 
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && %{__rm} -rf $RPM_BUILD_ROOT
 
-%pre
-getent group %{runuser} >/dev/null || groupadd -r %{runuser}
-getent passwd %{runuser} >/dev/null || useradd -r -g %{runuser} \
-    -d  %{_localstatedir}/run/shibboleth -s /sbin/nologin -c "Shibboleth SP daemon" %{runuser}
-exit 0
-
-%post
-/sbin/ldconfig
-
-# Generate two keys on new installs.
-if [ $1 -eq 1 ] ; then
-    cd %{_sysconfdir}/shibboleth
-    /bin/sh ./keygen.sh -b -n sp-signing -u %{runuser} -g %{runuser}
-    /bin/sh ./keygen.sh -b -n sp-encrypt -u %{runuser} -g %{runuser}
-fi
-
-%if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-if [ $1 -gt 1 ] ; then
-        # On Red Hat with shib.conf installed, clean up old Alias commands
-        # by pointing them at new version-independent /usr/share/share tree.
-        # Any Aliases we didn't create we assume are custom files.
-        # This is to accomodate making shib.conf a noreplace config file.
-        APACHE_CONF="no"
-        if [ -f %{_sysconfdir}/httpd/conf.d/shib.conf ] ; then
-            APACHE_CONF="%{_sysconfdir}/httpd/conf.d/shib.conf"
-        fi
-        if [ "$APACHE_CONF" != "no" ] ; then
-            %{__sed} -i "s/\/usr\/share\/doc\/shibboleth\(\-\(.\)\{1,\}\)\{0,1\}\/main\.css/\/usr\/share\/shibboleth\/main.css/g" \
-                $APACHE_CONF
-            %{__sed} -i "s/\/usr\/share\/doc\/shibboleth\(\-\(.\)\{1,\}\)\{0,1\}\/logo\.jpg/\/usr\/share\/shibboleth\/logo.jpg/g" \
-                $APACHE_CONF
-        fi
-    fi
-
-%if 0%{?rhel} >= 7 || 0%{?amzn} >= 2
-    # Initial prep for systemd
-    %systemd_post shibd.service
-    if [ $1 -gt 1 ] ; then
-        systemctl daemon-reload
-    fi
-%else
-    # Add the proper /etc/rc*.d links for the script
-    /sbin/chkconfig --add shibd
-%endif
-%endif
-
 %preun
-# On final removal, stop shibd and remove service, restart Apache if running.
+# On final removal, restart Apache if running.
 %if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-%if 0%{?rhel} >= 7 || 0%{?amzn} >= 2
-    %systemd_preun shibd.service
-%else
-    if [ $1 -eq 0 ] ; then
-        /sbin/service shibd stop >/dev/null 2>&1
-        /sbin/chkconfig --del shibd
-    fi
-%endif
     if [ $1 -eq 0 ] ; then
         %{!?_without_builtinapache:/sbin/service httpd status 1>/dev/null && /sbin/service httpd restart 1>/dev/null}
         exit 0
@@ -302,16 +110,8 @@ if [ $1 -gt 1 ] ; then
 exit 0
 
 %postun
-/sbin/ldconfig
 %if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-# On upgrade, restart components if they're already running.
-%if 0%{?rhel} >= 7 || 0%{?amzn} >= 2
-    %systemd_postun_with_restart shibd.service
-%else
-    if [ $1 -ge 1 ] ; then
-        /sbin/service shibd status 1>/dev/null && /sbin/service shibd restart 1>/dev/null
-    fi
-%endif
+# On upgrade, restart Apache if running.
     if [ $1 -ge 1 ] ; then
         %{!?_without_builtinapache:/sbin/service httpd status 1>/dev/null && /sbin/service httpd restart 1>/dev/null}
         exit 0
@@ -323,51 +123,19 @@ exit 0
 
 %files -f rpm.filelist
 %defattr(-,root,root,-)
-%{_sbindir}/shibd
-%{_bindir}/mdquery
-%{_bindir}/resolvertest
 %{_libdir}/libshibsp.so.*
-%{_libdir}/libshibsp-lite.so.*
 %exclude %{_libdir}/*.la
-%dir %{_libdir}/shibboleth
-%{_libdir}/shibboleth/*.so
-%exclude %{_libdir}/shibboleth/*.la
-%{?_with_fastcgi:%{_libdir}/shibboleth/shibauthorizer}
-%{?_with_fastcgi:%{_libdir}/shibboleth/shibresponder}
-%attr(0750,%{runuser},%{runuser}) %dir %{_localstatedir}/log/shibboleth
-%attr(0755,%{runuser},%{runuser}) %dir %{_localstatedir}/cache/shibboleth
-%dir %{_datadir}/xml/shibboleth
-%{_datadir}/xml/shibboleth/*
-%dir %{_datadir}/shibboleth
-%{_datadir}/shibboleth/*
-%dir %{_sysconfdir}/shibboleth
-%config(missingok, noreplace) %{_sysconfdir}/shibboleth/shibboleth2.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/attribute-map.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/attribute-policy.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/example-metadata.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/protocols.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/security-policy.xml
-%config(noreplace) %{_sysconfdir}/shibboleth/*.html
-%config(noreplace) %{_sysconfdir}/shibboleth/*.logger
-%if "%{_vendor}" == "redhat"
-%if 0%{?rhel} >= 7
-%else
-%config %{_initddir}/shibd
-%endif
-%endif
-%if "%{_vendor}" == "amazon" && 0%{?amzn} == 2
-%config %{_initddir}/shibd
-%endif
-%if 0%{?rhel} >= 7 || 0%{?amzn2023}
-%{_tmpfilesdir}/%{name}.conf
-%endif
-%{_sysconfdir}/shibboleth/example-shibboleth2.xml
-%{_sysconfdir}/shibboleth/*.dist
-%{_sysconfdir}/shibboleth/apache*.config
-%{_sysconfdir}/shibboleth/shibd-*
-%attr(0755,root,root) %{_sysconfdir}/shibboleth/keygen.sh
-%attr(0755,root,root) %{_sysconfdir}/shibboleth/metagen.sh
-%attr(0755,root,root) %{_sysconfdir}/shibboleth/seckeygen.sh
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/*.so
+%exclude %{_libdir}/%{name}/*.la
+%{?_with_fastcgi:%{_libdir}/%{name}/shibauthorizer}
+%{?_with_fastcgi:%{_libdir}/%{name}/shibresponder}
+%attr(0755,apache,apache) %dir %{_localstatedir}/cache/%{name}/sessions
+%dir %{_sysconfdir}/%{name}
+%config(noreplace) %{_sysconfdir}/%{name}/request-map.xml
+%config(noreplace) %{_sysconfdir}/%{name}/*.ini
+%{_sysconfdir}/%{name}/*.dist
+%{_sysconfdir}/%{name}/apache24.config
 %doc %{pkgdocdir}
 %exclude %{pkgdocdir}/api
 
@@ -375,11 +143,13 @@ exit 0
 %defattr(-,root,root,-)
 %{_includedir}/*
 %{_libdir}/libshibsp.so
-%{_libdir}/libshibsp-lite.so
 %{_libdir}/pkgconfig/*.pc
 %doc %{pkgdocdir}/api
 
 %changelog
+* Fri Oct 3 2025 Scott Cantor <scott at restingparrotsoftware.com> - 4.0.0alpha1-1
+- First revisions for V4 alpha.
+
 * Mon Sep 8 2025 John W. O'Brien <john at saltant.com> - 3.5.1-2
 - SSPCPP-1017 Fix unstated dependency on systemd
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list