diff --git a/.cvsignore b/.cvsignore index d16488e..955d5bc 100644 --- a/.cvsignore +++ b/.cvsignore @@ -26,3 +26,5 @@ other-names.gz sf.gz shakespeare.gz surnames.finnish.gz +cracklib-words.gz +cracklib-2.8.1.tar.gz diff --git a/cracklib.spec b/cracklib.spec index 9e29c75..901c81e 100644 --- a/cracklib.spec +++ b/cracklib.spec @@ -1,10 +1,14 @@ +# Reflects the values hard-coded in various Makefile.am's in the source tree. +%define dictpath %{_datadir}/cracklib/pw_dict + Summary: A password-checking library. Name: cracklib -Version: 2.7 -Release: 30 +Version: 2.8.1 +Release: 1 Group: System Environment/Libraries -Source0: http://www.crypticide.org/users/alecm/security/cracklib,%{version}.tgz -Source1: crack.h +Source0: http://prdownloads.sourceforge.net/cracklib/cracklib-%{version}.tar.gz +Source1: http://prdownloads.sourceforge.net/cracklib/cracklib-words.gz + Source10: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/computer/Domains.gz Source11: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/computer/Dosref.gz Source12: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/computer/Ftpsites.gz @@ -32,16 +36,11 @@ Source33: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/names/names.french.gz Source34: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/names/names.hp.gz Source35: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/names/other-names.gz Source36: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/names/surnames.finnish.gz -Source37: cracklib.magic Url: http://www.crypticide.org/users/alecm/ License: Artistic -Patch0: cracklib-2.7-rh.patch -Patch1: cracklib-2.7-nss.patch -Patch2: cracklib-2.7-check.patch -Patch3: cracklib-2.7-64.patch -Buildroot: %{_tmppath}/%{name}-root +Buildroot: %{_tmppath}/%{name}-%{version}-root BuildPrereq: gzip, words -Requires: cracklib-dicts@%{_arch} = %{version}-%{release} +Conflicts: cracklib-dicts < 2.8 %description CrackLib tests passwords to determine whether they match certain @@ -65,8 +64,6 @@ CrackLib, you will also want to install the cracklib-dicts package. Summary: The standard CrackLib dictionaries. Group: System Environment/Libraries BuildRequires: words >= 2-13 -# Note to other packagers: do NOT require this, it will eventually go away. -Provides: cracklib-dicts@%{_arch} = %{version}-%{release} %description dicts The cracklib-dicts package includes the CrackLib dictionaries. @@ -77,41 +74,44 @@ contains the utilities necessary for the creation of new dictionaries. If you are installing CrackLib, you should also install cracklib-dicts. %prep -%setup -n cracklib,%{version} -q -%patch0 -p1 -b .rh -%patch1 -p1 -b .nss -%patch2 -p1 -b .check -%patch3 -p1 -b .64 -cp %{SOURCE1} cracklib/crack.h +%setup -q mkdir cracklib-dicts for dict in %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} \ %{SOURCE15} %{SOURCE16} %{SOURCE17} %{SOURCE18} %{SOURCE19} \ %{SOURCE20} %{SOURCE21} %{SOURCE22} %{SOURCE23} %{SOURCE24} \ %{SOURCE25} %{SOURCE26} %{SOURCE27} %{SOURCE28} %{SOURCE29} \ %{SOURCE30} %{SOURCE31} %{SOURCE32} %{SOURCE33} %{SOURCE34} \ - %{SOURCE35} %{SOURCE36} + %{SOURCE35} %{SOURCE36} %{SOURCE1} do cp -fv ${dict} cracklib-dicts/ done -gunzip cracklib-dicts/* %build -make all \ - DICTPATH=%{_libdir}/cracklib_dict \ - libdir=%{_libdir} +%configure --with-pic +make %clean [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT{%{_includedir},%{_libdir},%{_sbindir}} -make install \ - ROOT=$RPM_BUILD_ROOT \ - includedir=%{_includedir} \ - DICTPATH=%{_libdir}/cracklib_dict \ - libdir=%{_libdir} \ - sbindir=%{_sbindir} +make install DESTDIR=$RPM_BUILD_ROOT +./util/cracklib-format cracklib-dicts/* | \ +./util/cracklib-packer $RPM_BUILD_ROOT/%{dictpath} +sed s,/usr/lib/cracklib_dict,%{dictpath},g lib/crack.h > $RPM_BUILD_ROOT/%{_includedir}/crack.h +ln -s cracklib-format $RPM_BUILD_ROOT/%{_sbindir}/mkdict +ln -s cracklib-packer $RPM_BUILD_ROOT/%{_sbindir}/packer +touch $RPM_BUILD_ROOT/top + +toprelpath=.. +touch $RPM_BUILD_ROOT/top +while ! test -f $RPM_BUILD_ROOT/%{_libdir}/$toprelpath/top ; do + toprelpath=../$toprelpath +done +rm -f $RPM_BUILD_ROOT/top +ln -s $toprelpath%{dictpath}.hwm $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.hwm +ln -s $toprelpath%{dictpath}.pwd $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.pwd +ln -s $toprelpath%{dictpath}.pwi $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.pwi %post -p /sbin/ldconfig @@ -122,16 +122,32 @@ make install \ %files %defattr(-,root,root) -%doc README MANIFEST LICENCE HISTORY POSTER $RPM_SOURCE_DIR/cracklib.magic +%doc README README-WORDS NEWS doc/LICENCE AUTHORS %{_includedir}/* -%{_libdir}/lib* +%{_libdir}/libcrack.* +%dir %{_datadir}/cracklib +%{_datadir}/cracklib/cracklib.magic +%{_sbindir}/*cracklib* %files dicts %defattr(-,root,root) -%{_sbindir}/* -%{_libdir}/cracklib_dict* +%dir %{_datadir}/cracklib +%{_datadir}/cracklib/pw_dict.* +%{_libdir}/cracklib_dict.* +%{_sbindir}/mkdict +%{_sbindir}/packer %changelog +* Wed Mar 16 2005 Nalin Dahyabhai 2.8.1-1 +- update to 2.8.1 + - moves dictionary to new default location under %%{_datadir} -- the + dictionary format is the same across all architectures + - renames "packer" to "cracklib-packer" +- conflict with cracklib-dicts < 2.8, where the on-disk format was not + compatible on 64-bit arches due to now-fixed cleanliness bugs +- move binaries for manipulating and checking words against dictionaries + from -dicts into the main package + * Mon Jan 3 2005 Nalin Dahyabhai 2.7-30 - rebuild diff --git a/sources b/sources index e219307..bcd96e5 100644 --- a/sources +++ b/sources @@ -13,7 +13,6 @@ c575d3302d3a6beb9daef6a492ba024a Python.gz d2af1d5bfb80515129632a5d5cd106f7 Trek.gz c262148af56614d9b33946c4758e101b cartoon.gz 5e35a78582c233f8b703f1dabf264788 common-passwords.txt.gz -7f810e310c7f2df33d1eaa2b41ab2435 cracklib,2.7.tgz 9296e6866c48522d35440c921dfac538 etc-hosts.gz 056193ded99b178046e87e6fb4300ebf famous.gz 5857e228e763eb8300a8f2d3a424d766 fast-names.gz @@ -26,3 +25,5 @@ f70810a2ba08f95df6787afe0eba2907 other-names.gz a2bd31ce25a3057b61d2e5a1182d93a9 sf.gz 15ec61296de799eaa8111cfabbcbb44f shakespeare.gz c03b38448aefcde059e6fcfb20784f2c surnames.finnish.gz +575a44add4db95b43c7abb46b307950f cracklib-words.gz +a9bbfaeb86a577ee8d2779a5a66f9245 cracklib-2.8.1.tar.gz