Rebase to FreeRADIUS v3.0.20

Introduces the experimental rlm_python3 that is largely based off the
existing python2 module.

Signed-off-by: Alexander Scheel <ascheel@redhat.com>
This commit is contained in:
Alexander Scheel 2019-11-15 15:03:30 -05:00
parent f6335be9a2
commit 1ef8514cc3
No known key found for this signature in database
GPG Key ID: C0D6C737D0003143
3 changed files with 53 additions and 6 deletions

1
.gitignore vendored
View File

@ -32,3 +32,4 @@ freeradius-*.src.rpm
/freeradius-server-3.0.18.tar.gz /freeradius-server-3.0.18.tar.gz
/freeradius-server-3.0.18.tar.bz2 /freeradius-server-3.0.18.tar.bz2
/freeradius-server-3.0.19.tar.bz2 /freeradius-server-3.0.19.tar.bz2
/freeradius-server-3.0.20.tar.bz2

View File

@ -1,7 +1,7 @@
Summary: High-performance and highly configurable free RADIUS server Summary: High-performance and highly configurable free RADIUS server
Name: freeradius Name: freeradius
Version: 3.0.19 Version: 3.0.20
Release: 5%{?dist} Release: 1%{?dist}
License: GPLv2+ and LGPLv2+ License: GPLv2+ and LGPLv2+
URL: http://www.freeradius.org/ URL: http://www.freeradius.org/
@ -132,7 +132,7 @@ This plugin provides the Perl support for the FreeRADIUS server project.
%if 0%{?fedora} <= 30 %if 0%{?fedora} <= 30
%package -n python2-freeradius %package -n python2-freeradius
Summary: Python support for freeradius Summary: Python 2 support for freeradius
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
BuildRequires: python2-devel BuildRequires: python2-devel
%{?python_provide:%python_provide python2-freeradius} %{?python_provide:%python_provide python2-freeradius}
@ -142,9 +142,18 @@ Provides: %{name}-python%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-python < %{version}-%{release} Obsoletes: %{name}-python < %{version}-%{release}
%description -n python2-freeradius %description -n python2-freeradius
This plugin provides the Python support for the FreeRADIUS server project. This plugin provides the Python 2 support for the FreeRADIUS server project.
%endif %endif
%package -n python3-freeradius
Summary: Python 3 support for freeradius
Requires: %{name} = %{version}-%{release}
BuildRequires: python3-devel
%{?python_provide:%python_provide python3-freeradius}
%description -n python3-freeradius
This plugin provides the Python 3 support for the FreeRADIUS server project.
%package mysql %package mysql
Summary: MySQL support for freeradius Summary: MySQL support for freeradius
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
@ -199,10 +208,26 @@ This plugin provides the REST support for the FreeRADIUS server project.
# Force compile/link options, extra security for network facing daemon # Force compile/link options, extra security for network facing daemon
%global _hardened_build 1 %global _hardened_build 1
# Hack: rlm_python3 as stable; prevents building other unstable modules.
sed 's/rlm_python/rlm_python3/g' src/modules/stable -i
# python3-config is broken:
# https://bugzilla.redhat.com/show_bug.cgi?id=1772988
export PY3_LIB_DIR=%{_libdir}/"$(python3-config --configdir | sed 's#/usr/lib/##g')"
export PY3_INC_DIR="$(python3 -c 'import sysconfig; print(sysconfig.get_config_var("INCLUDEPY"))')"
# Hack: rlm_python3 configure.ac script is broken because it doesn't
# respect --with-rlm-python3-include-dir.
sed -i 's#smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION[m]*"#smart_try_dir=$PY_INC_DIR#g' src/modules/rlm_python3/configure.ac
# In order for the above hack to stick, do a fake configure so
# we can run reconfig before cleaning up after ourselves and running
# configure for real.
./configure && make reconfig && (make clean distclean || true)
%configure \ %configure \
--libdir=%{_libdir}/freeradius \ --libdir=%{_libdir}/freeradius \
--enable-reproducible-builds \ --enable-reproducible-builds \
--with-package \
--disable-openssl-version-check \ --disable-openssl-version-check \
--with-openssl \ --with-openssl \
--with-udpfromto \ --with-udpfromto \
@ -215,6 +240,9 @@ This plugin provides the REST support for the FreeRADIUS server project.
--with-unixodbc-lib-dir=%{_libdir} \ --with-unixodbc-lib-dir=%{_libdir} \
--with-rlm-dbm-lib-dir=%{_libdir} \ --with-rlm-dbm-lib-dir=%{_libdir} \
--with-rlm-krb5-include-dir=/usr/kerberos/include \ --with-rlm-krb5-include-dir=/usr/kerberos/include \
--with-rlm_python3 \
--with-rlm-python3-lib-dir=$PY3_LIB_DIR \
--with-rlm-python3-include-dir=$PY3_INC_DIR \
--without-rlm_eap_ikev2 \ --without-rlm_eap_ikev2 \
--without-rlm_eap_tnc \ --without-rlm_eap_tnc \
--without-rlm_sql_iodbc \ --without-rlm_sql_iodbc \
@ -288,6 +316,10 @@ rm $RPM_BUILD_ROOT/%{_libdir}/freeradius/rlm_test.so
# remove unsupported config files # remove unsupported config files
rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/experimental.conf rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/experimental.conf
# Mongo will never be supported on Fedora or RHEL
rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/mods-config/sql/ippool/mongo/queries.conf
rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/raddb/mods-config/sql/main/mongo/queries.conf
# install doc files omitted by standard install # install doc files omitted by standard install
for f in COPYRIGHT CREDITS INSTALL.rst README.rst VERSION; do for f in COPYRIGHT CREDITS INSTALL.rst README.rst VERSION; do
cp $f $RPM_BUILD_ROOT/%{docdir} cp $f $RPM_BUILD_ROOT/%{docdir}
@ -406,6 +438,7 @@ exit 0
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/robust-proxy-accounting %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/robust-proxy-accounting
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/soh %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/soh
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/coa %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/coa
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/coa-relay
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/example %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/example
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/inner-tunnel %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/inner-tunnel
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/dhcp %attr(640,root,radiusd) %config(noreplace) /etc/raddb/sites-available/dhcp
@ -471,6 +504,7 @@ exit 0
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/passwd %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/passwd
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/preprocess %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/preprocess
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/python %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/python
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/python3
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/radutmp %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/radutmp
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/realm %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/realm
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/redis %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/redis
@ -692,6 +726,12 @@ exit 0
%{_libdir}/freeradius/rlm_python.so %{_libdir}/freeradius/rlm_python.so
%endif %endif
%files -n python3-freeradius
%dir %attr(750,root,radiusd) /etc/raddb/mods-config/python3
/etc/raddb/mods-config/python3/example.py*
/etc/raddb/mods-config/python3/radiusd.py*
%{_libdir}/freeradius/rlm_python3.so
%files mysql %files mysql
%dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/counter/mysql %dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/counter/mysql
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/counter/mysql/dailycounter.conf
@ -706,6 +746,7 @@ exit 0
%dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/ippool/mysql %dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/ippool/mysql
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool/mysql/queries.conf %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool/mysql/queries.conf
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool/mysql/schema.sql %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool/mysql/schema.sql
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool/mysql/procedure.sql
%dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/ippool-dhcp/mysql %dir %attr(750,root,radiusd) /etc/raddb/mods-config/sql/ippool-dhcp/mysql
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool-dhcp/mysql/queries.conf %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-config/sql/ippool-dhcp/mysql/queries.conf
@ -792,6 +833,11 @@ exit 0
%attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/rest %attr(640,root,radiusd) %config(noreplace) /etc/raddb/mods-available/rest
%changelog %changelog
* Fri Nov 15 2019 Alexander Scheel <ascheel@redhat.com> - 3.0.20-1
- Rebased to 3.0.20
Resolves: bz#1772710
- Introduced new rlm_python3 module
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.19-5 * Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.19-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (freeradius-server-3.0.19.tar.bz2) = 9bb3401a52288de541a2272149f4341840dc1df7203583746bef46c0b1b1f2b8886931c9f6f9ce3d92951e271ab5a84a50a8587a3acd69cc20bc86f5817d28e1 SHA512 (freeradius-server-3.0.20.tar.bz2) = d5e0732a75268480092b46822a0e0fffb683adb93be13932eb170d2dc783a46d0daff4cadd0de69fd5ce4578083c9f69a9cccc485ea9c0c2eecf82c772f54b8e