cracklib/cracklib.spec

219 lines
7.6 KiB
RPMSpec
Raw Permalink Normal View History

# Note: if you change CRACKLIB_DICT_PATH you have to change it in the
# pam cracklib module as well
%define CRACKLIB_DICT_PATH %{_datadir}/dict
%define CRACKLIB_DICT_PATHNAME %{CRACKLIB_DICT_PATH}/cracklib_dict
Name: cracklib
Version: 2.9.7
Release: 1mamba
Summary: A password-checking library
Group: System/Libraries
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
Source0: https://github.com/cracklib/cracklib.git/v%{version}/cracklib-%{version}.tar.bz2
Patch0: cracklib-2.7-redhat.patch.bz2
URL: http://sourceforge.net/projects/cracklib
License: Artistic
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libpython-devel
BuildRequires: libz-devel
## AUTOBUILDREQ-END
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if "%{_build}" == "%{_host}"
BuildRequires: python >= 2.4.4
%endif
%description
CrackLib tests passwords to determine whether they match certain security-oriented characteristics.
You can use CrackLib to stop users from choosing passwords which would be easy to guess.
CrackLib performs certain tests:
* It tries to generate words from a username and gecos entry and checks those words against the password;
* It checks for simplistic patterns in passwords;
* It checks for the password in a dictionary.
CrackLib is actually a library containing a particular C function which is used to check the password, as well as other C functions.
CrackLib is not a replacement for a passwd program; it must be used in conjunction with an existing passwd program.
Install the cracklib package if you need a program to check users' passwords to see if they are at least minimally secure.
If you install CrackLib, you'll also want to install the cracklib-dicts package.
%package -n libcrack
Summary: A password-checking library
Group: System/Libraries
Obsoletes: cracklib
Provides: cracklib == %{version}
Requires: libcrack-dicts == %{version}-%{release}
%description -n libcrack
CrackLib tests passwords to determine whether they match certain security-oriented characteristics.
You can use CrackLib to stop users from choosing passwords which would be easy to guess.
CrackLib performs certain tests:
* It tries to generate words from a username and gecos entry and checks those words against the password;
* It checks for simplistic patterns in passwords;
* It checks for the password in a dictionary.
CrackLib is actually a library containing a particular C function which is used to check the password, as well as other C functions.
CrackLib is not a replacement for a passwd program; it must be used in conjunction with an existing passwd program.
Install the cracklib package if you need a program to check users' passwords to see if they are at least minimally secure.
If you install CrackLib, you'll also want to install the cracklib-dicts package.
%package -n libcrack-devel
Summary: cracklib link library & header file
Group: Development/Libraries
Requires: libcrack = %{version}-%{release}
Obsoletes: cracklib-devel
Provides: cracklib-devel == %{version}
%description -n libcrack-devel
The cracklib devel package include the needed library link and header files for development.
%package -n libcrack-dicts
Summary: The standard CrackLib dictionaries
Group: System/Libraries
Obsoletes: cracklib-dicts
Provides: cracklib-dicts == %{version}
%description -n libcrack-dicts
The cracklib-dicts package includes the CrackLib dictionaries.
CrackLib will need to use the dictionary appropriate to your system, which is normally put in /usr/share/dict/words.
Cracklib-dicts also contains the utilities necessary for the creation of new dictionaries.
If you are installing CrackLib, you should also install cracklib-dicts.
%package -n python-cracklib
Summary: Python cracklib library module
Group: System/Libraries
Requires: libcrack = %{version}
%description -n python-cracklib
Python cracklib library module.
%prep
%setup -q
#chmod +x util/cracklib-format
%build
cd src
./autogen.sh
%configure
%make DEFAULT_CRACKLIB_DICT=%{CRACKLIB_DICT_PATHNAME}
%install
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
#install -d %{buildroot}%{_includedir}
#install -d %{buildroot}%{_libdir}
#install -d %{buildroot}%{_sbindir}
#install -m 644 %{SOURCE1} %{buildroot}%{_libdir}/pw_dict
cd src
%makeinstall DEFAULT_CRACKLIB_DICT=%{CRACKLIB_DICT_PATHNAME}
# install dict
mkdir -p %{buildroot}%{CRACKLIB_DICT_PATH}
make -C util clean
%if "%{_build}" != "%{_host}"
make -C util DEFAULT_CRACKLIB_DICT=%{buildroot}%{CRACKLIB_DICT_PATHNAME} CC=%{_build}-gcc LDADD="-lcrack"
export PATH=%{_sbindir}:%{_bindir}:./util:$PATH
./util/create-cracklib-dict -o %{buildroot}%{CRACKLIB_DICT_PATHNAME} ./dicts/*
%else
make dict DEFAULT_CRACKLIB_DICT=%{buildroot}%{CRACKLIB_DICT_PATHNAME}
%endif
# rm -f %{buildroot}%{_libdir}/pw_dict
cd ..
%find_lang %{name}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%clean
[ "%{buildroot}" != / ] && rm -rf %{buildroot}
%files -n libcrack -f %{name}.lang
%defattr(-,root,root)
%{_sbindir}/cracklib-*
%{_datadir}/cracklib/cracklib.magic
%{_datadir}/cracklib/cracklib-small
%{_libdir}/libcrack.so.*
%files -n libcrack-devel
%defattr(-,root,root)
%{_sbindir}/create-cracklib-dict
%{_libdir}/libcrack.so
%{_includedir}/crack.h
%{_includedir}/packer.h
%{_libdir}/libcrack.a
%{_libdir}/libcrack.la
%if "%{_build}" == "%{_host}"
%files -n python-cracklib
%defattr(-,root,root)
%{python_sitelib}/cracklib.*
%{python_sitearch}/_cracklib.a
%{python_sitearch}/_cracklib.la
%{python_sitearch}/_cracklib.so
%{python_sitelib}/test_cracklib.py*
%endif
%files -n libcrack-dicts
%defattr(-,root,root)
%{CRACKLIB_DICT_PATHNAME}.hwm
%{CRACKLIB_DICT_PATHNAME}.pwd
%{CRACKLIB_DICT_PATHNAME}.pwi
%changelog
* Sat Oct 26 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 2.9.7-1mamba
- update to 2.9.7
* Sat Apr 30 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 2.9.6-1mamba
- update to 2.9.6
* Sun May 03 2015 Automatic Build System <autodist@mambasoft.it> 2.9.4-1mamba
- automatic update by autodist
* Mon Aug 18 2014 Automatic Build System <autodist@mambasoft.it> 2.9.1-1mamba
- automatic version update by autodist
* Sat Jun 08 2013 Automatic Build System <autodist@mambasoft.it> 2.9.0-1mamba
- automatic version update by autodist
* Mon Dec 17 2012 Automatic Build System <autodist@mambasoft.it> 2.8.22-1mamba
- automatic version update by autodist
* Tue Nov 09 2010 Automatic Build System <autodist@mambasoft.it> 2.8.18-1mamba
- automatic update by autodist
* Sat Aug 21 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.16-2mamba
- libcrack-dicts: do not require libcrack
* Tue Jun 22 2010 Automatic Build System <autodist@mambasoft.it> 2.8.16-1mamba
- automatic update by autodist
* Tue Jan 27 2009 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.13-1mamba
- automatic update by autodist
* Sun Jun 24 2007 Silvan Calarco <silvan.calarco@mambasoft.it> 2.8.10-1mamba
- update to 2.8.10
* Sat Oct 28 2006 Silvan Calarco <silvan.calarco@mambasoft.it> 2.7-5qilnx
- rename as libcrack (obsolete cracklib-*)
- fix libcrack.so: make it a symlink to libcrack.so.2.7 file
* Mon Dec 13 2004 Silvan Calarco <silvan.calarco@mambasoft.it> 2.7-4qilnx
- include libcrack.so.* in main package, not just libcrack.so.2.7
* Tue Jul 27 2004 Davide Madrisan <davide.madrisan@qilinux.it> 2.7-3qilnx
- trivial fixes in the specfile needed by the QiLinux distromatic parser
* Fri May 28 2004 Davide Madrisan <davide.madrisan@qilinux.it> 2.7-2qilnx
- added missing ldconfig calls
* Wed May 07 2003 Alessandro Ramazzina <alessandro.ramazzina@qinet.it> 2.7-1qilnx
- creation of cracklib package