# HG changeset patch # User Michael Schloh von Bennewitz # Date 1346171690 -7200 # Node ID 97e49dc59b234df0f85e3dfaf451341f6ed9c74b # Parent 175768f4868bc933858cecabe15f1d04f853d813 Import package vendor original specs for necessary manipulations. diff -r 175768f4868b -r 97e49dc59b23 cracklib/Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cracklib/Makefile Tue Aug 28 18:34:50 2012 +0200 @@ -0,0 +1,10 @@ + +PREFIX = @l_prefix@ +LIBDIR = $(PREFIX)/lib/cracklib +DICTDIR = $(PREFIX)/share/cracklib +FORMAT = $(PREFIX)/sbin/cracklib-format +PACKER = $(PREFIX)/sbin/cracklib-packer + +all: + $(FORMAT) $(DICTDIR)/*.txt | $(PACKER) $(LIBDIR)/pw_dict + diff -r 175768f4868b -r 97e49dc59b23 cracklib/cracklib.spec --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cracklib/cracklib.spec Tue Aug 28 18:34:50 2012 +0200 @@ -0,0 +1,129 @@ +## +## cracklib.spec -- OpenPKG RPM Package Specification +## Copyright (c) 2000-2012 OpenPKG Foundation e.V. +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +## SUCH DAMAGE. +## + +# package information +Name: cracklib +Summary: Filter Guessable Passwords +URL: http://cracklib.sourceforge.net/ +Vendor: Alec Muffett et al. +Packager: OpenPKG Foundation e.V. +Distribution: OpenPKG Community +Class: PLUS +Group: Security +License: Artistic +Version: 2.8.19 +Release: 20120519 + +# list of sources +Source0: http://switch.dl.sourceforge.net/cracklib/cracklib-%{version}.tar.gz +Source1: http://switch.dl.sourceforge.net/cracklib/cracklib-words.gz +Source2: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/computer/common-passwords.txt.gz +Source3: ftp://ftp.cerias.purdue.edu/pub/dict/wordlists/computer/Jargon.gz +Source4: http://www.freebsd.org/cgi/cvsweb.cgi/~checkout~/src/share/dict/web2 +Source5: http://www.freebsd.org/cgi/cvsweb.cgi/~checkout~/src/share/dict/web2a +Source6: http://www.freebsd.org/cgi/cvsweb.cgi/~checkout~/src/share/dict/propernames +Source7: Makefile + +# build information +BuildPreReq: OpenPKG, openpkg >= 20100101, make +PreReq: OpenPKG, openpkg >= 20100101, make + +%description + CrackLib is a library which may be used in a "passwd"-like program. + The idea is simple: try to prevent users from choosing passwords + that could be guessed by "Crack" by filtering them out, at source. + +%track + prog cracklib = { + version = %{version} + url = http://sourceforge.net/projects/cracklib/files/ + regex = cracklib-(__VER__)\.tar\.gz + } + +%prep + %setup -q + +%build + # configure library + CC="%{l_cc}" \ + CFLAGS="%{l_cflags -O}" \ + ./configure \ + --prefix=%{l_prefix} \ + --with-default-dict=%{l_prefix}/lib/cracklib/pw_dict \ + --without-python \ + --disable-shared \ + --disable-nls + + # build library + %{l_make} %{l_mflags} + +%install + # install library + %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT + + # strip down installation files + rm -f $RPM_BUILD_ROOT%{l_prefix}/sbin/create-cracklib-dict + rm -f $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/cracklib.magic + + # install dictionaries + mv $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/cracklib-small \ + $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/cracklib-small.txt + %{l_gzip} -d -c %{SOURCE cracklib-words.gz} \ + >$RPM_BUILD_ROOT%{l_prefix}/share/cracklib/cracklib-large.txt + %{l_gzip} -d -c %{SOURCE common-passwords.txt.gz} \ + >$RPM_BUILD_ROOT%{l_prefix}/share/cracklib/common-passwords.txt + %{l_gzip} -d -c %{SOURCE Jargon.gz} \ + >$RPM_BUILD_ROOT%{l_prefix}/share/cracklib/jargon-words.txt + cp %{SOURCE web2} \ + $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/freebsd-web2.txt + cp %{SOURCE web2a} \ + $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/freebsd-web2a.txt + cp %{SOURCE propernames} \ + $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/freebsd-propernames.txt + + # install dictionary generation stuff + %{l_shtool} install -c -m 644 %{l_value -s -a} \ + %{SOURCE Makefile} $RPM_BUILD_ROOT%{l_prefix}/share/cracklib/ + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/lib/cracklib + + # determine installation files + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} + +%files -f files + +%clean + +%post + # (re-)generate run-time password dictionary + ( echo "(Re-)Generating run-time password dictionary" + ) | %{l_rpmtool} msg -b -t warn + ( cd $RPM_INSTALL_PREFIX/share/cracklib && \ + $RPM_INSTALL_PREFIX/bin/make + ) >/dev/null 2>&1 + +%preun + if [ $1 -eq 0 ]; then + rm -f $RPM_INSTALL_PREFIX/share/cracklib/* >/dev/null 2>&1 || true + fi +