Toshaan Bharvani
3 years ago
commit
b2a9def00f
2 changed files with 894 additions and 0 deletions
@ -0,0 +1,311 @@ |
|||||||
|
%if 0%{?fedora} || 0%{?rhel} > 7 |
||||||
|
# Enable python3 build by default |
||||||
|
%bcond_without python3 |
||||||
|
%else |
||||||
|
%bcond_with python3 |
||||||
|
%endif |
||||||
|
|
||||||
|
%if 0%{?rhel} > 7 || 0%{?fedora} > 30 |
||||||
|
# Disable python2 build by default |
||||||
|
%bcond_with python2 |
||||||
|
%else |
||||||
|
%bcond_without python2 |
||||||
|
%endif |
||||||
|
|
||||||
|
Summary: A library for password generation and password quality checking |
||||||
|
Name: libpwquality |
||||||
|
Version: 1.4.4 |
||||||
|
Release: 8%{?dist} |
||||||
|
# The package is BSD licensed with option to relicense as GPLv2+ |
||||||
|
# - this option is redundant as the BSD license allows that anyway. |
||||||
|
License: BSD or GPLv2+ |
||||||
|
Source0: https://github.com/libpwquality/libpwquality/releases/download/libpwquality-%{version}/libpwquality-%{version}.tar.bz2 |
||||||
|
|
||||||
|
Patch100: libpwquality-1.4.4-rhel9-i18n.patch |
||||||
|
|
||||||
|
%global _pwqlibdir %{_libdir} |
||||||
|
%global _moduledir %{_libdir}/security |
||||||
|
%global _secconfdir %{_sysconfdir}/security |
||||||
|
|
||||||
|
Requires: cracklib-dicts >= 2.8 |
||||||
|
Requires: pam%{?_isa} |
||||||
|
Requires: cracklib |
||||||
|
BuildRequires: make |
||||||
|
BuildRequires: gcc |
||||||
|
BuildRequires: cracklib-devel |
||||||
|
BuildRequires: gettext |
||||||
|
BuildRequires: pam-devel |
||||||
|
%if %{with python2} |
||||||
|
BuildRequires: python2-devel |
||||||
|
%endif |
||||||
|
%if %{with python3} |
||||||
|
BuildRequires: python3-devel |
||||||
|
BuildRequires: python3-setuptools |
||||||
|
%endif |
||||||
|
|
||||||
|
URL: https://github.com/libpwquality/libpwquality/ |
||||||
|
|
||||||
|
# we don't want to provide private python extension libs |
||||||
|
%define __provides_exclude_from ^(%{python_sitearch}|%{python3_sitearch})/.*\.so$. |
||||||
|
|
||||||
|
%description |
||||||
|
This is a library for password quality checks and generation |
||||||
|
of random passwords that pass the checks. |
||||||
|
This library uses the cracklib and cracklib dictionaries |
||||||
|
to perform some of the checks. |
||||||
|
|
||||||
|
%package devel |
||||||
|
Summary: Support for development of applications using the libpwquality library |
||||||
|
Requires: libpwquality%{?_isa} = %{version}-%{release} |
||||||
|
Requires: pkgconfig |
||||||
|
|
||||||
|
%description devel |
||||||
|
Files needed for development of applications using the libpwquality |
||||||
|
library. |
||||||
|
See the pwquality.h header file for the API. |
||||||
|
|
||||||
|
%if %{with python2} |
||||||
|
%package -n python2-pwquality |
||||||
|
%{?python_provide:%python_provide python2-pwquality} |
||||||
|
Summary: Python bindings for the libpwquality library |
||||||
|
Requires: libpwquality%{?_isa} = %{version}-%{release} |
||||||
|
|
||||||
|
%description -n python2-pwquality |
||||||
|
This is pwquality Python module that provides Python bindings |
||||||
|
for the libpwquality library. These bindings can be used |
||||||
|
for easy password quality checking and generation of random |
||||||
|
pronounceable passwords from Python applications. |
||||||
|
%endif |
||||||
|
|
||||||
|
%if %{with python3} |
||||||
|
%package -n python3-pwquality |
||||||
|
Summary: Python bindings for the libpwquality library |
||||||
|
Requires: libpwquality%{?_isa} = %{version}-%{release} |
||||||
|
|
||||||
|
%description -n python3-pwquality |
||||||
|
This is pwquality Python module that provides Python bindings |
||||||
|
for the libpwquality library. These bindings can be used |
||||||
|
for easy password quality checking and generation of random |
||||||
|
pronounceable passwords from Python applications. |
||||||
|
%endif |
||||||
|
|
||||||
|
%prep |
||||||
|
%setup -q |
||||||
|
|
||||||
|
%if %{with python3} && %{with python2} |
||||||
|
rm -rf %{py3dir} |
||||||
|
cp -a . %{py3dir} |
||||||
|
%endif |
||||||
|
%patch100 -p1 -b .rhel9-i18n |
||||||
|
|
||||||
|
%build |
||||||
|
%if %{with python2} |
||||||
|
%configure \ |
||||||
|
--with-securedir=%{_moduledir} \ |
||||||
|
--with-pythonsitedir=%{python2_sitearch} \ |
||||||
|
--with-python-binary=%{__python2} \ |
||||||
|
--disable-static |
||||||
|
|
||||||
|
%make_build |
||||||
|
%endif |
||||||
|
%if %{with python3} && %{with python2} |
||||||
|
pushd %{py3dir} |
||||||
|
%endif |
||||||
|
%if %{with python3} |
||||||
|
%configure \ |
||||||
|
--with-securedir=%{_moduledir} \ |
||||||
|
--with-pythonsitedir=%{python3_sitearch} \ |
||||||
|
--with-python-binary=%{__python3} \ |
||||||
|
--disable-static |
||||||
|
|
||||||
|
%make_build |
||||||
|
%endif |
||||||
|
%if %{with python3} && %{with python2} |
||||||
|
popd |
||||||
|
%endif |
||||||
|
|
||||||
|
%install |
||||||
|
%make_install |
||||||
|
|
||||||
|
%if %{with python3} && %{with python2} |
||||||
|
pushd %{py3dir} |
||||||
|
%make_install -C python |
||||||
|
popd |
||||||
|
%endif |
||||||
|
|
||||||
|
%if "%{_pwqlibdir}" != "%{_libdir}" |
||||||
|
pushd $RPM_BUILD_ROOT%{_libdir} |
||||||
|
mv libpwquality.so.* $RPM_BUILD_ROOT%{_pwqlibdir} |
||||||
|
ln -sf %{_pwqlibdir}/libpwquality.so.*.* libpwquality.so |
||||||
|
popd |
||||||
|
%endif |
||||||
|
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la |
||||||
|
rm -f $RPM_BUILD_ROOT%{_moduledir}/*.la |
||||||
|
|
||||||
|
mkdir $RPM_BUILD_ROOT%{_secconfdir}/pwquality.conf.d |
||||||
|
|
||||||
|
%find_lang libpwquality |
||||||
|
|
||||||
|
%check |
||||||
|
# Nothing yet |
||||||
|
|
||||||
|
%ldconfig_scriptlets |
||||||
|
|
||||||
|
%files -f libpwquality.lang |
||||||
|
%license COPYING |
||||||
|
%doc README NEWS AUTHORS |
||||||
|
%{_bindir}/pwmake |
||||||
|
%{_bindir}/pwscore |
||||||
|
%{_moduledir}/pam_pwquality.so |
||||||
|
%{_pwqlibdir}/libpwquality.so.* |
||||||
|
%config(noreplace) %{_secconfdir}/pwquality.conf |
||||||
|
%{_secconfdir}/pwquality.conf.d |
||||||
|
%{_mandir}/man1/* |
||||||
|
%{_mandir}/man5/* |
||||||
|
%{_mandir}/man8/* |
||||||
|
|
||||||
|
%files devel |
||||||
|
%{_includedir}/pwquality.h |
||||||
|
%{_libdir}/libpwquality.so |
||||||
|
%{_libdir}/pkgconfig/*.pc |
||||||
|
%{_mandir}/man3/* |
||||||
|
|
||||||
|
%if %{with python2} |
||||||
|
%files -n python2-pwquality |
||||||
|
%{python2_sitearch}/pwquality.so |
||||||
|
%{python2_sitearch}/*.egg-info |
||||||
|
%endif |
||||||
|
|
||||||
|
%if %{with python3} |
||||||
|
%files -n python3-pwquality |
||||||
|
%{python3_sitearch}/*.so |
||||||
|
%{python3_sitearch}/*.egg-info |
||||||
|
%endif |
||||||
|
|
||||||
|
%changelog |
||||||
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.4.4-8 |
||||||
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags |
||||||
|
Related: rhbz#1991688 |
||||||
|
|
||||||
|
* Wed Aug 04 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-7 |
||||||
|
- Explicitly rebuild the localization |
||||||
|
- Resolves: rhbz#1938621 |
||||||
|
|
||||||
|
* Mon Jul 26 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-6 |
||||||
|
- rebuilt |
||||||
|
|
||||||
|
* Mon Jul 26 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-5 |
||||||
|
- added i18n updates for de, fr, ja, ko, zh_CN |
||||||
|
- Resolves: rhbz#1963858 |
||||||
|
- Resolves: rhbz#1938621 |
||||||
|
|
||||||
|
* Thu Apr 29 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-4 |
||||||
|
- cracklib-dicts is a hard requirement, not a recomendation. |
||||||
|
- Resolves rhbz#1947882 |
||||||
|
|
||||||
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.4.4-3 |
||||||
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 |
||||||
|
|
||||||
|
* Tue Jan 26 10:55:14 EST 2021 Paul Wouters <pwouters@redhat.com> - 1.4.4-2 |
||||||
|
- Resolves rhbz#1919026 libpwquaily rpm requires cracklib-dict to function but RPM missing requirement |
||||||
|
|
||||||
|
* Tue Oct 13 2020 Tomáš Mráz <tmraz@redhat.com> 1.4.4-1 |
||||||
|
- Translation updates |
||||||
|
- Fix regression with enabling the cracklib check during build |
||||||
|
|
||||||
|
* Mon Oct 12 2020 Tomáš Mráz <tmraz@redhat.com> 1.4.3-1 |
||||||
|
- Multiple translation updates |
||||||
|
- Add usersubstr check for substrings of N characters from the username |
||||||
|
patch by Danny Sauer |
||||||
|
|
||||||
|
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 1.4.2-4 |
||||||
|
- Use make macros |
||||||
|
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro |
||||||
|
|
||||||
|
* Thu Oct 31 2019 Tomáš Mráz <tmraz@redhat.com> 1.4.2-1 |
||||||
|
- Fix previous release regression in handling retry, enforce_for_root, |
||||||
|
and local_users_only options |
||||||
|
|
||||||
|
* Tue Sep 17 2019 Tomáš Mráz <tmraz@redhat.com> 1.4.1-1 |
||||||
|
- Disable python2 bindings in Fedora 31 and above |
||||||
|
- Add conditionals for Python2 and Python3 |
||||||
|
- pam_pwquality: Abort the retry loop if user requests it |
||||||
|
- Allow setting retry, enforce_for_root, and local_users_only options |
||||||
|
in the pwquality.conf config file |
||||||
|
|
||||||
|
* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.4.0-5 |
||||||
|
- Switch to %%ldconfig_scriptlets |
||||||
|
|
||||||
|
* Sun Dec 17 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.0-4 |
||||||
|
- Python 2 binary package renamed to python2-pwquality |
||||||
|
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 |
||||||
|
|
||||||
|
* Fri May 26 2017 Tomáš Mráz <tmraz@redhat.com> 1.4.0-1 |
||||||
|
- Do not try to check presence of too short username in password |
||||||
|
- Make the user name check optional (via usercheck option) |
||||||
|
- Add an 'enforcing' option to make the checks to be warning-only |
||||||
|
in PAM |
||||||
|
- The difok = 0 setting will disable all old password similarity |
||||||
|
checks except new and old passwords being identical |
||||||
|
- Updated translations from Zanata |
||||||
|
|
||||||
|
* Mon Aug 24 2015 Tomáš Mráz <tmraz@redhat.com> 1.3.0-2 |
||||||
|
- Fix possible stack overflow in the generate function (#1255935) |
||||||
|
|
||||||
|
* Thu Jul 23 2015 Tomáš Mráz <tmraz@redhat.com> 1.3.0-1 |
||||||
|
- Change the defaults for credits, difok, and minlen |
||||||
|
- Make the cracklib check optional but on by default |
||||||
|
- Add implicit support for parsing <cfgfile>.d/*.conf files |
||||||
|
- Add libpwquality API manual page |
||||||
|
|
||||||
|
* Wed Aug 6 2014 Tomáš Mráz <tmraz@redhat.com> 1.2.4-1 |
||||||
|
- fix license handling (by Tom Callaway) |
||||||
|
- add Python3 module subpackage |
||||||
|
|
||||||
|
* Thu Sep 12 2013 Tomáš Mráz <tmraz@redhat.com> 1.2.3-1 |
||||||
|
- fix problem with parsing the pam_pwquality options |
||||||
|
patch by Vladimir Sorokin. |
||||||
|
- updated translations from Transifex |
||||||
|
- treat empty user or password as NULL |
||||||
|
- move the library to /usr |
||||||
|
|
||||||
|
* Wed Jun 19 2013 Tomas Mraz <tmraz@redhat.com> 1.2.2-1 |
||||||
|
- manual page fixes |
||||||
|
- make it possible to set the maxsequence configuration value |
||||||
|
- updated translations from Transifex |
||||||
|
|
||||||
|
* Thu Dec 20 2012 Tomas Mraz <tmraz@redhat.com> 1.2.1-1 |
||||||
|
- properly free pwquality settings |
||||||
|
- add extern "C" to public header |
||||||
|
- updated translations from Transifex |
||||||
|
|
||||||
|
* Thu Aug 16 2012 Tomas Mraz <tmraz@redhat.com> 1.2.0-1 |
||||||
|
- add maxsequence check for too long monotonic character sequence. |
||||||
|
- clarified alternative licensing to GPLv2+. |
||||||
|
- add local_users_only option to skip the pwquality checks for |
||||||
|
non-locals. (thanks to Stef Walter) |
||||||
|
|
||||||
|
* Wed Jun 13 2012 Tomas Mraz <tmraz@redhat.com> 1.1.1-1 |
||||||
|
- use rpm built-in filtering of provides (rhbz#830153) |
||||||
|
- remove strain debug fprintf() (rhbz#831567) |
||||||
|
|
||||||
|
* Thu May 24 2012 Tomas Mraz <tmraz@redhat.com> 1.1.0-1 |
||||||
|
- fix leak when throwing PWQError exception |
||||||
|
- added pkgconfig file |
||||||
|
- call the simplicity checks before the cracklib check |
||||||
|
- add enforce_for_root option to the PAM module |
||||||
|
- updated translations from Transifex |
||||||
|
|
||||||
|
* Thu Dec 8 2011 Tomas Mraz <tmraz@redhat.com> 1.0.0-1 |
||||||
|
- added a few additional password quality checks |
||||||
|
- bugfix in configuration file parsing |
||||||
|
|
||||||
|
* Fri Nov 11 2011 Tomas Mraz <tmraz@redhat.com> 0.9.9-1 |
||||||
|
- added python bindings and documentation |
||||||
|
|
||||||
|
* Mon Oct 10 2011 Tomas Mraz <tmraz@redhat.com> 0.9-2 |
||||||
|
- fixes for problems found in review (missing BR on pam-devel, |
||||||
|
License field, Source URL, Require pam, other cleanups) |
||||||
|
|
||||||
|
* Mon Oct 3 2011 Tomas Mraz <tmraz@redhat.com> 0.9-1 |
||||||
|
- first spec file for libpwquality |
Loading…
Reference in new issue