Compare commits

...
Sign in to create a new pull request.

34 commits

Author SHA1 Message Date
Xavier Bachelot
5eb62c37c3 Update to 0.19.1 2025-12-08 11:52:05 +01:00
Xavier Bachelot
a2a275aaad Fix bogus date in changelog 2025-12-08 11:30:52 +01:00
Xavier Bachelot
f89bd62c94 Drop support for EOL releases 2025-12-08 11:30:26 +01:00
Fedora Release Engineering
f4700c4903 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-24 22:13:23 +00:00
Fedora Release Engineering
9a97cb82f2 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-17 18:50:22 +00:00
Fedora Release Engineering
88d8849cc6 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-18 18:25:19 +00:00
Tomas Halman
b37f8f3110 Rebase to version 0.19.0
Resolves: rhbz#2258342 - new version is available
2024-01-25 13:44:12 +01:00
Fedora Release Engineering
c26b4068b7 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 07:44:04 +00:00
Fedora Release Engineering
4818a420c7 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 08:26:25 +00:00
Fedora Release Engineering
2c4ba2e95a Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 15:33:03 +00:00
Tomas Halman
a6644adc7f migrated to SPDX license 2023-03-07 12:04:51 +01:00
Fedora Release Engineering
0c78c612a3 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 20:29:44 +00:00
Tomas Halman
cdfb8f895a Version 0.18.1 is available
Resolves: rhbz#2158456
2023-01-06 15:39:51 +01:00
Tomas Halman
87dd298792 Fix build for fedora rawhide
- add systemd-rpm-macros build dependency
- fix bogus date in changelog
2022-10-05 13:08:35 +02:00
Tomas Halman
cf96c513f3 Logout endpoint should handle idP POST response
Resolves: rhbz#1306445 Support HTTP-POST binding for SingleLogoutService
2022-10-05 12:43:31 +02:00
Fedora Release Engineering
be4bcf8050 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 23:30:57 +00:00
Tomas Halman
e8e1fa6d86 Update mellon_create_metadata.sh to work with new openssl
Resolves: rhbz#2097703 Use of RANDFILE = /dev/urandom in openssl config
          break in OpenSSL 3
2022-07-01 15:04:51 +02:00
Fedora Release Engineering
79df3e2f46 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 20:12:10 +00:00
Tomas Halman
4901068138 New upstream version 0.18.0
Resolves: rhbz#1988235 CVE-2021-3639 mod_auth_mellon: Open Redirect
          vulnerability in logout URLs
Resolves: rhbz#1988664 mod_auth_mellon-0.18.0 is available
2021-12-17 18:30:03 +01:00
Sahana Prasad
cb20544e38 Rebuilt with OpenSSL 3.0.0 2021-09-14 19:07:58 +02:00
Fedora Release Engineering
353d86435e - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 15:10:43 +00:00
Fedora Release Engineering
09005a0274 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 20:37:44 +00:00
Tom Stellard
1ae540d471 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-07 01:50:35 +00:00
Jakub Hrozek
11d67e1cdd New upstream version 0.17.0 2020-09-16 10:24:34 +02:00
Fedora Release Engineering
5bc8f6552c - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 08:14:26 +00:00
Tom Stellard
30ff0281ec Use make_build macro instead of just make
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make
2020-02-13 00:17:30 +00:00
Jakub Hrozek
9143479f9d New upstream version 0.16.0 2020-02-03 11:26:48 +01:00
Fedora Release Engineering
1ed2abfb90 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-29 13:46:55 +00:00
Jakub Hrozek
9707601413 New upstream version 0.15.0
Resolves: rhbz#1725742 - CVE-2019-13038 mod_auth_mellon: an Open Redirect
                           via the login?ReturnTo= substring which could
                           facilitate information theft [fedora-all]
2019-11-19 10:48:58 +01:00
Fedora Release Engineering
c201ed18c4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 17:27:22 +00:00
Jakub Hrozek
dc2e6c5a1f Upgrade to 0.14.2 2019-03-22 21:28:22 +01:00
Jakub Hrozek
d47343a603 remove unused patches 2019-03-22 21:12:26 +01:00
Fedora Release Engineering
1a042645d0 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-01 11:13:36 +00:00
Igor Gnatenko
2568a8cfab Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:17 +01:00
8 changed files with 6017 additions and 121 deletions

8
.gitignore vendored
View file

@ -6,3 +6,11 @@
/mod_auth_mellon-0.12.0.tar.gz
/mod_auth_mellon-0.13.1.tar.gz
/mod_auth_mellon-0.14.0.tar.gz
/mod_auth_mellon-0.14.2.tar.gz
/mod_auth_mellon-0.15.0.tar.gz
/mod_auth_mellon-0.16.0.tar.gz
/mod_auth_mellon-0.17.0.tar.gz
/v0.18.0.tar.gz
/v0.18.1.tar.gz
/mod_auth_mellon-0.19.0.tar.gz
/mod_auth_mellon-0.19.1.tar.gz

5884
0000-configure.patch Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,33 +0,0 @@
commit 5ba9bb72707a90503cd4d042083ea074a0cb6b8a
Author: John Dennis <jdennis@redhat.com>
Date: Fri Oct 30 15:46:33 2015 -0400
Role maybe unknown when assertion consumer url is looked up
Replace the call to lasso_provider_get_metadata_one() with
lasso_provider_get_metadata_one_for_role() so that we can exlicitly
pass the LASSO_PROVIDER_ROLE_SP role. The former call obtains the
role from the provider object and then calls
lasso_provider_get_metadata_one_for_role() using that role. However
the role will not have been set in the provider until the first request is
processed. This means the first time we call this routine it won't
work correctly because the role will not have been set yet, by
explicitly passing the role we avoid this problem.
Signed-off-by: John Dennis <jdennis@redhat.com>
diff --git a/auth_mellon_util.c b/auth_mellon_util.c
index 155bb1a..6c694b7 100644
--- a/auth_mellon_util.c
+++ b/auth_mellon_util.c
@@ -1827,7 +1827,9 @@ char *am_get_assertion_consumer_service_by_binding(LassoProvider *provider, cons
}
if (selected_descriptor) {
- url = lasso_provider_get_metadata_one(provider, selected_descriptor);
+ url = lasso_provider_get_metadata_one_for_role(provider,
+ LASSO_PROVIDER_ROLE_SP,
+ selected_descriptor);
}
lasso_release_list_of_strings(descriptors);

View file

@ -1,36 +0,0 @@
commit 040a1ae5cb2aab38b2bc716cc3d0d6fa7b998a7a
Author: John Dennis <jdennis@redhat.com>
Date: Mon Jan 16 09:02:06 2017 -0500
Use ap_set_content_type() to set "Content-Type" header
Formerly we were setting the response header "Content-Type" in
r->headers_out directly via the apr_table_setn() call. Although using
apr_table_setn() is appropriate for many HTTP headers Apache actively
manages a small set of headers in
http_filters.c:ap_http_header_filter(). These managed headers are
derived from values maintained in the request_rec. "Content-Type" is
one of the managed headers.
Because we didn't set r->content_type field via the
ap_set_content_type() call and instead directly updated the
r->headers_out table our value for "Content-Type" was overwriten when
the ap_http_header_filter() was run just prior to emitting the
response with the result the "Content-Type" header returned to the
client was incorrect.
Signed-off-by: John Dennis <jdennis@redhat.com>
diff --git a/auth_mellon_handler.c b/auth_mellon_handler.c
index a55828a..25365de 100644
--- a/auth_mellon_handler.c
+++ b/auth_mellon_handler.c
@@ -2655,7 +2655,7 @@ static int am_set_authn_request_post_content(request_rec *r, LassoLogin *login)
*/
static int am_set_authn_request_paos_content(request_rec *r, LassoLogin *login)
{
- apr_table_setn(r->headers_out, "Content-Type", MEDIA_TYPE_PAOS);
+ ap_set_content_type(r, MEDIA_TYPE_PAOS);
ap_rputs(LASSO_PROFILE(login)->msg_body, r);
return OK;

View file

@ -1,34 +0,0 @@
commit 912aa852ebd78577f59cf7958c709acea98ace4c
Author: John Dennis <jdennis@redhat.com>
Date: Fri Apr 8 09:01:22 2016 -0400
am_check_uid() should be no-op if mellon not enabled
mod_auth_mellon was interferring with other Apache authentication
modules (e.g. mod_auth_kerb) because when the Apache check_user_id
hook ran the logic in am_check_uid would execute even if mellon was
not enabled for the location. This short circuited the hook execution
and never allowed the authentication enabled for the location to
execute. It resulted in HTTP_UNAUTHORIZED being returned with the
client then expecting a WWW-Authenticate header field causing the
client to attempt to authenticate again.
Signed-off-by: John Dennis <jdennis@redhat.com>
diff --git a/auth_mellon_handler.c b/auth_mellon_handler.c
index a72e1ca..864396f 100644
--- a/auth_mellon_handler.c
+++ b/auth_mellon_handler.c
@@ -3625,6 +3625,12 @@ int am_check_uid(request_rec *r)
return OK;
}
+ /* Check that the user has enabled authentication for this directory. */
+ if(dir->enable_mellon == am_enable_off
+ || dir->enable_mellon == am_enable_default) {
+ return DECLINED;
+ }
+
#ifdef HAVE_ECP
am_req_cfg_rec *req_cfg = am_get_req_cfg(r);
if (req_cfg->ecp_authn_req) {

View file

@ -55,9 +55,9 @@ echo
umask 0077
TEMPLATEFILE="$(mktemp -t mellon_create_sp.XXXXXXXXXX)"
ERRORFILE="$(mktemp -t mellon_create_err.XXXXXXXXXX)"
cat >"$TEMPLATEFILE" <<EOF
RANDFILE = /dev/urandom
[req]
default_bits = 2048
default_keyfile = privkey.pem
@ -68,9 +68,14 @@ policy = policy_anything
commonName = $HOST
EOF
openssl req -utf8 -batch -config "$TEMPLATEFILE" -new -x509 -days 3652 -nodes -out "$OUTFILE.cert" -keyout "$OUTFILE.key" 2>/dev/null
openssl req -utf8 -batch -config "$TEMPLATEFILE" -new -x509 -days 3652 -nodes -out "$OUTFILE.cert" -keyout "$OUTFILE.key" 2>"$ERRORFILE" || (
echo "Failed to generate certificate!" >&2
cat "$ERRORFILE" >&2;
rm -f "$TEMPLATEFILE" "$ERRORFILE"
exit 1
)
rm -f "$TEMPLATEFILE"
rm -f "$TEMPLATEFILE" "$ERRORFILE"
CERT="$(grep -v '^-----' "$OUTFILE.cert")"

View file

@ -1,26 +1,32 @@
%{!?_httpd_mmn: %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn 2>/dev/null || echo 0-0)}}
Summary: A SAML 2.0 authentication module for the Apache Httpd Server
Name: mod_auth_mellon
Version: 0.14.0
Release: 4%{?dist}
Group: System Environment/Daemons
Source0: https://github.com/UNINETT/mod_auth_mellon/releases/download/v%{version}/%{name}-%{version}.tar.gz
Version: 0.19.1
Release: 1%{?dist}
Source0: https://github.com/latchset/mod_auth_mellon/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: auth_mellon.conf
Source2: 10-auth_mellon.conf
Source3: mod_auth_mellon.conf
Source4: mellon_create_metadata.sh
Source5: README.redhat.rst
License: GPLv2+
BuildRequires: gcc
Patch0: 0000-configure.patch
License: GPL-2.0-or-later
BuildRequires: make
BuildRequires: gcc
BuildRequires: curl-devel
BuildRequires: glib2-devel
BuildRequires: httpd-devel
BuildRequires: lasso-devel >= 2.5.1-13
BuildRequires: openssl-devel
BuildRequires: xmlsec1-devel
BuildRequires: xmlsec1-openssl-devel
BuildRequires: rubygem-asciidoctor
BuildRequires: libtool-ltdl-devel
BuildRequires: systemd-rpm-macros
Requires: httpd-mmn = %{_httpd_mmn}
Requires: lasso >= 2.5.1-13
Url: https://github.com/UNINETT/mod_auth_mellon
Url: https://github.com/latchset/mod_auth_mellon
%description
@ -29,18 +35,19 @@ SAML 2.0 federation protocol. It grants access based on the attributes
received in assertions generated by a IdP server.
%prep
%setup -q -n %{name}-%{version}
%autosetup -n %{name}-%{version} -p1
chmod +x configure
%build
export APXS=%{_httpd_apxs}
%configure --enable-diagnostics
make clean
make %{?_smp_mflags}
%{make_build}
cp .libs/%{name}.so %{name}-diagnostics.so
%configure
make clean
make %{?_smp_mflags}
%{make_build}
pushd doc/user_guide
asciidoctor -a data-uri mellon_user_guide.adoc
popd
@ -86,11 +93,7 @@ in the doc directory for instructions on using the diagnostics build.
%{_httpd_moddir}/%{name}-diagnostics.so
%files
%if 0%{?rhel} && 0%{?rhel} < 7
%doc COPYING
%else
%license COPYING
%endif
%doc README.md NEWS ECP.rst
%doc %{_pkgdocdir}/README.redhat.rst
%doc %{_pkgdocdir}/user_guide
@ -102,6 +105,105 @@ in the doc directory for instructions on using the diagnostics build.
%dir /run/%{name}/
%changelog
* Mon Dec 08 2025 Xavier Bachelot <xavier@bachelot.org> - 0.19.1-1
- Update to 0.19.1
- Fix bogus date in changelog
- Drop support for EOL releases
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.19.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Thu Jan 25 2024 Tomas Halman <thalman@redhat.com> - 0.19.0-1
- Resolves: rhbz#2258342 - new version is available
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Tue Mar 7 2023 Tomas Halman <thalman@redhat.com> - 0.18.1-3
- migrated to SPDX license
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jan 6 2023 Tomas Halman <thalman@redhat.com> - 0.18.1-1
- Resolves: rhbz#2158456 - new version is available
* Wed Oct 5 2022 Tomas Halman <thalman@redhat.com> - 0.18.0-5
- Resolves: rhbz#1306445 Support HTTP-POST binding for SingleLogoutService
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jun 1 2022 Tomas Halman <thalman@redhat.com> - 0.18.0-2
- Update mellon_create_metadata.sh to work with new openssl
- Resolves: rhbz#2097703 Use of RANDFILE = /dev/urandom in openssl config
break in OpenSSL 3
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Dec 17 2021 Tomas Halman <thalman@redhat.com> - 0.18.0-1
- New upstream version 0.18.0
- Resolves: rhbz#1988235 CVE-2021-3639 mod_auth_mellon: Open Redirect
vulnerability in logout URLs
- Resolves: rhbz#1988664 mod_auth_mellon-0.18.0 is available
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 0.17.0-4
- Rebuilt with OpenSSL 3.0.0
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Sep 16 2020 Jakub Hrozek <jhrozek@redhat.com> - 0.17.0-1
- New upstream version 0.17.0
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Feb 13 2020 Tom Stellard <tstellar@redhat.com> - 0.16.0-2
- Use make_build macro instead of just make
- https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make
* Mon Feb 3 2020 Jakub Hrozek <jhrozek@redhat.com> - 0.16.0-1
- New upstream version 0.16.0
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Nov 19 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.15.0-1
- New upstream version 0.15.0
- Resolves: rhbz#1725742 - CVE-2019-13038 mod_auth_mellon: an Open Redirect
via the login?ReturnTo= substring which could
facilitate information theft [fedora-all]
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Mar 22 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.14.2-1
- Upgrade to 0.14.2
- Related: rhbz#1691771 - CVE-2019-3877 mod_auth_mellon: open redirect in
logout url when using URLs with backslashes
- Related: rhbz#1691136 - CVE-2019-3878 mod_auth_mellon: authentication
bypass in ECP flow
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

View file

@ -1 +1 @@
SHA512 (mod_auth_mellon-0.14.0.tar.gz) = db1bf70c234fe89914b1bb34fc6afb5b901193a8c8c7e9946485a3e20a7d129c36427717eab53764edf5a5cff5c45dfe412e400cb1f50c49ef24dbbfd6ecbf25
SHA512 (mod_auth_mellon-0.19.1.tar.gz) = d512cf0eb52b91c7f6671e5e9425eb62263e58e0d3c5daea0fab13315e6310e228fd2f736a1793dc67037dbd717727a61908eb87e7b6654d7da4c62434c9301d