Compare commits

..

No commits in common. "c9s" and "c8" have entirely different histories.
c9s ... c8

22 changed files with 78 additions and 503 deletions

5
.cracklib.metadata Normal file
View File

@ -0,0 +1,5 @@
9199e7b8830717565a844430653f5a90a04fcd65 SOURCES/cracklib-2.9.6.tar.gz
b0739c990431a0971545dff347b50f922604c1cd SOURCES/cracklib-words-2.9.6.gz
b3b701e951362b23c8abb948936e8534d0c9b9a2 SOURCES/cracklib2_2.8.19-1.debian.tar.gz
d5941a3aa514245922433978a7d07c749d76d000 SOURCES/cracklib2_2.8.19-1.dsc
9b407fa41faaf4138e875f168158e5f4568ea33e SOURCES/missing-words.gz

61
.gitignore vendored
View File

@ -1,56 +1,5 @@
ASSurnames.gz SOURCES/cracklib-2.9.6.tar.gz
Congress.gz SOURCES/cracklib-words-2.9.6.gz
Domains.gz SOURCES/cracklib2_2.8.19-1.debian.tar.gz
Dosref.gz SOURCES/cracklib2_2.8.19-1.dsc
Family-Names.gz SOURCES/missing-words.gz
Ftpsites.gz
Given-Names.gz
Jargon.gz
LCarrol.gz
Movies.gz
Paradise.Lost.gz
Python.gz
Trek.gz
cartoon.gz
common-passwords.txt.gz
cracklib,2.7.tgz
etc-hosts.gz
famous.gz
fast-names.gz
female-names.gz
male-names.gz
myths-legends.gz
names.french.gz
names.hp.gz
other-names.gz
sf.gz
shakespeare.gz
surnames.finnish.gz
cracklib-words.gz
cracklib-2.8.1.tar.gz
cracklib-2.8.2.tar.gz
cracklib-2.8.3.tar.gz
cracklib-2.8.4.tar.gz
cracklib-2.8.5.tar.gz
cracklib-2.8.6.tar.gz
cracklib-2.8.9.tar.gz
pass_file.gz
cracklib-2.8.10.tar.gz
cracklib-2.8.12.tar.gz
cracklib-2.8.13.tar.gz
cracklib-2.8.15.tar.gz
cracklib-words-20080507.gz
cracklib-2.8.16.tar.gz
/cracklib2_2.8.18-1.debian.tar.gz
/cracklib-2.8.18.tar.gz
/cracklib-2.8.19.tar.gz
/cracklib2_2.8.19-1.debian.tar.gz
/cracklib2_2.8.19-1.dsc
/cracklib-2.8.20.tar.gz
/cracklib-2.8.21.tar.gz
/cracklib-2.8.22.tar.gz
/cracklib-2.9.0.tar.gz
/cracklib-2.9.1.tar.gz
/cracklib-2.9.6.tar.gz
/cracklib-words-2.9.6.gz
/missing-words.gz

View File

@ -5,7 +5,8 @@
Summary: A password-checking library Summary: A password-checking library
Name: cracklib Name: cracklib
Version: 2.9.6 Version: 2.9.6
Release: 27%{?dist} Release: 15%{?dist}
Group: System Environment/Libraries
Source0: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-%{version}.tar.gz Source0: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-%{version}.tar.gz
Source1: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-words-%{version}.gz Source1: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-words-%{version}.gz
@ -25,14 +26,17 @@ Patch4: cracklib-2.9.6-packlib-reentrant.patch
Patch6: cracklib-2.9.6-simplistic.patch Patch6: cracklib-2.9.6-simplistic.patch
Patch7: cracklib-2.9.6-translation-updates.patch Patch7: cracklib-2.9.6-translation-updates.patch
Patch8: cracklib-2.9.6-cve-2016-6318.patch Patch8: cracklib-2.9.6-cve-2016-6318.patch
Patch9: cracklib-2.9.6-coverity.patch Patch9: cracklib-2.9.6-lookup.patch
Patch10: cracklib-2.9.6-lookup.patch
URL: http://sourceforge.net/projects/cracklib/ URL: http://sourceforge.net/projects/cracklib/
License: LGPLv2+ License: LGPLv2+
Buildroot: %{_tmppath}/%{name}-%{version}-root
BuildRequires: gcc BuildRequires: gcc
BuildRequires: words, gettext BuildRequires: words, gettext
BuildRequires: gettext-autopoint BuildRequires: gettext-autopoint
BuildRequires: zlib-devel BuildRequires: zlib-devel
%if 0%{?rhel} == 0
BuildRequires: python2-devel
%endif
Conflicts: cracklib-dicts < 2.8 Conflicts: cracklib-dicts < 2.8
# The cracklib-format script calls gzip, but without a specific path. # The cracklib-format script calls gzip, but without a specific path.
Requires: gzip Requires: gzip
@ -57,16 +61,33 @@ CrackLib, you will also want to install the cracklib-dicts package.
%package devel %package devel
Summary: Development files needed for building applications which use cracklib Summary: Development files needed for building applications which use cracklib
Group: Development/Libraries
Requires: %{name} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
%description devel %description devel
The cracklib-devel package contains the header files and libraries needed The cracklib-devel package contains the header files and libraries needed
for compiling applications which use cracklib. for compiling applications which use cracklib.
%if 0%{?rhel} == 0
%package -n python2-cracklib
Summary: Python bindings for applications which use cracklib
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%{?python_provide:%python_provide python2-cracklib}
# Remove before F30
Provides: %{name}-python = %{version}-%{release}
Provides: %{name}-python%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-python < %{version}-%{release}
%description -n python2-cracklib
The cracklib-python package contains a module which permits applications
written in the Python programming language to use cracklib.
%endif
%package dicts %package dicts
Summary: The standard CrackLib dictionaries Summary: The standard CrackLib dictionaries
Group: System Environment/Libraries
BuildRequires: words >= 2-13 BuildRequires: words >= 2-13
BuildRequires: make
Requires: cracklib = %{version}-%{release} Requires: cracklib = %{version}-%{release}
%description dicts %description dicts
@ -90,8 +111,7 @@ install -p -m 644 %{SOURCE3} po/zh_CN.po
%patch6 -p1 -b .simplistic %patch6 -p1 -b .simplistic
%patch7 -p1 -b .translations %patch7 -p1 -b .translations
%patch8 -p1 -b .overflow %patch8 -p1 -b .overflow
%patch9 -p1 -b .coverity %patch9 -p1 -b .lookup
%patch10 -p1 -b .lookup
mkdir cracklib-dicts mkdir cracklib-dicts
for dict in %{SOURCE10} %{SOURCE1} for dict in %{SOURCE10} %{SOURCE1}
@ -104,14 +124,18 @@ chmod +x util/cracklib-format
# Use the dictionary from the build to test # Use the dictionary from the build to test
sed -i 's,util/cracklib-check <,util/cracklib-check $(DESTDIR)/$(DEFAULT_CRACKLIB_DICT) <,' Makefile.in sed -i 's,util/cracklib-check <,util/cracklib-check $(DESTDIR)/$(DEFAULT_CRACKLIB_DICT) <,' Makefile.in
%configure --with-pic \ %configure --with-pic \
%if 0%{?rhel} == 0
--with-python \
%else
--without-python \ --without-python \
%endif
--with-default-dict=%{dictpath} --disable-static --with-default-dict=%{dictpath} --disable-static
make -C po update-gmo make -C po update-gmo
make make
%install %install
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
%make_install 'pythondir=${pyexecdir}' make install DESTDIR=$RPM_BUILD_ROOT 'pythondir=${pyexecdir}'
./util/cracklib-format cracklib-dicts/* | \ ./util/cracklib-format cracklib-dicts/* | \
./util/cracklib-packer $RPM_BUILD_ROOT/%{dictpath} ./util/cracklib-packer $RPM_BUILD_ROOT/%{dictpath}
./util/cracklib-format $RPM_BUILD_ROOT/%{dictdir}/cracklib-small | \ ./util/cracklib-format $RPM_BUILD_ROOT/%{dictdir}/cracklib-small | \
@ -150,6 +174,35 @@ fi
%check %check
make test DESTDIR=$RPM_BUILD_ROOT make test DESTDIR=$RPM_BUILD_ROOT
%if 0%{?rhel} == 0
# We want to check that the new library is able to open the new dictionaries,
# using the new python module.
LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{_libdir} %{__python2} 2>&1 << EOF
import string, sys
# Prepend buildroot-specific variations of the python path to the python path.
syspath2=[]
for element in sys.path:
syspath2.append("$RPM_BUILD_ROOT/" + element)
syspath2.reverse()
for element in syspath2:
sys.path.insert(0,element)
# Now actually do the test. If we get a different result, or throw an
# exception, the script will end with the error.
import cracklib
try:
s = cracklib.FascistCheck("cracklib", "$RPM_BUILD_ROOT/%{dictpath}")
except ValueError, message:
expected = "it is based on a dictionary word"
if message != expected:
print "Got unexpected result \"%s\"," % messgae,
print "instead of expected value of \"%s\"." % expected
sys.exit(1)
print "Got expected result \"%s\"," % message
sys.exit(0)
finally:
sys.exit(0)
EOF
%endif
%ldconfig_scriptlets %ldconfig_scriptlets
@ -175,51 +228,19 @@ make test DESTDIR=$RPM_BUILD_ROOT
%{_sbindir}/mkdict %{_sbindir}/mkdict
%{_sbindir}/packer %{_sbindir}/packer
%if 0%{?rhel} == 0
%files -n python2-cracklib
%{_libdir}/python*/site-packages/_cracklib*.so
%{_libdir}/python*/site-packages/*.py*
%endif
%changelog %changelog
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.9.6-27 * Mon Nov 26 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-15
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 2.9.6-26
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 2.9.6-23
- Use make macros
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Aug 9 2019 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-21
- Drop Python 2 bindings completely
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Nov 26 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-18
- Fix regression in dictionary creation and lookup - Fix regression in dictionary creation and lookup
* Wed Oct 10 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-17 * Tue Oct 9 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-14
- Fix minor bug found in the Coverity scan
* Tue Oct 9 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-16
- Updated translations - Updated translations
* Fri Jul 13 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-15
- The test must use the dictionary from the build
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.6-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Feb 21 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-13 * Wed Feb 21 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-13
- Drop Python 2 support in RHEL - Drop Python 2 support in RHEL

View File

@ -1,20 +0,0 @@
diff -up cracklib-2.9.6/lib/rules.c.coverity cracklib-2.9.6/lib/rules.c
--- cracklib-2.9.6/lib/rules.c.coverity 2018-10-09 12:15:31.455187555 +0200
+++ cracklib-2.9.6/lib/rules.c 2018-10-10 14:28:43.472740618 +0200
@@ -774,6 +774,8 @@ Mangle(input, control, area) /* returns
}
}
}
+ break;
+
case RULE_MLAST:
if (!ptr[1] || (ptr[1] == RULE_CLASS && !ptr[2]))
{
@@ -809,6 +811,7 @@ Mangle(input, control, area) /* returns
}
}
}
+ break;
default:
Debug(1, "Mangle: unknown command %c in %s\n", *ptr, control);

View File

@ -1,8 +0,0 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tedude.validation}

View File

@ -1,5 +0,0 @@
12936e97cc34a28f2efec62e115a60e1 cracklib2_2.8.19-1.debian.tar.gz
bf8714368e0a485472b6ad7c4dba06a3 cracklib2_2.8.19-1.dsc
c52f463585d85924b28cdc1e373ae06d cracklib-2.9.6.tar.gz
cae1257e3a9f95c917cc9dbbab852316 cracklib-words-2.9.6.gz
8405c72b4f68fe569da831abff4c0544 missing-words.gz

View File

@ -1,64 +0,0 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /CoreOS/cracklib/Sanity/ABI-compatibility
# Description: Test if the ABI hasn't changed
# Author: Hubert Kario <hkario@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/CoreOS/cracklib/Sanity/ABI-compatibility
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Hubert Kario <hkario@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Test if the ABI hasn't changed" >> $(METADATA)
@echo "Type: Sanity" >> $(METADATA)
@echo "TestTime: 5m" >> $(METADATA)
@echo "RunFor: cracklib" >> $(METADATA)
@echo "Requires: cracklib cracklib-devel gcc words ltrace" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
@echo "Releases: -RHEL3 -RHEL4" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -1,3 +0,0 @@
PURPOSE of /CoreOS/cracklib/Sanity/ABI-compatibility
Description: Test if the ABI hasn't changed
Author: Hubert Kario <hkario@redhat.com>

View File

@ -1,81 +0,0 @@
#!/bin/bash
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /CoreOS/cracklib/Sanity/ABI-compatibility
# Description: Test if the ABI hasn't changed
# Author: Hubert Kario <hkario@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2013 Red Hat, Inc. All rights reserved.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/bin/rhts-environment.sh || exit 1
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="cracklib"
if rlIsRHEL 5; then
PACKAGES="cracklib gcc words ltrace"
else
PACKAGES="cracklib cracklib-devel gcc words ltrace"
fi
rlJournalStart
rlPhaseStartSetup
for PKG in $PACKAGES; do
rlAssertRpm $PKG
done
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "if [ ! -e /usr/share/cracklib/pw_dict.pwi ]; then create-cracklib-dict /usr/share/dict/words; fi" 0 "Create a cracklib dictionary if not already present"
rlRun "pushd $TmpDir"
rlRun "cat > test.c <<_EOF_
#include <stdio.h>
#include <crack.h>
int main(int argc, char **argv)
{
char const *dict = \"/usr/share/cracklib/pw_dict\";
char const *msg = NULL;
msg = FascistCheck(\"AAAAAAAA\", dict);
if (msg == 0)
return 1;
else
{
printf(\"%s\\n\", msg);
return 0;
}
}
_EOF_" 0 "Create test application"
rlPhaseEnd
rlPhaseStartTest
rlRun "gcc -O0 test.c -lcrack -Wall -o test" 0 "Compile the program"
rlRun "./test" 0 "Run the program"
rlRun "ltrace -o ltrace.out ./test" 0 "Run the program with ltrace"
rlRun "grep FascistCheck ltrace.out" 0 "Check if it actually uses the library function"
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -1,63 +0,0 @@
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Makefile of /CoreOS/cracklib/Sanity/Localization
# Description: Check if package localization is correct
# Author: Hubert Kario <hkario@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2014 Red Hat, Inc.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
export TEST=/CoreOS/cracklib/Sanity/Localization
export TESTVERSION=1.0
BUILT_FILES=
FILES=$(METADATA) runtest.sh Makefile PURPOSE
.PHONY: all install download clean
run: $(FILES) build
./runtest.sh
build: $(BUILT_FILES)
test -x runtest.sh || chmod a+x runtest.sh
clean:
rm -f *~ $(BUILT_FILES)
include /usr/share/rhts/lib/rhts-make.include
$(METADATA): Makefile
@echo "Owner: Hubert Kario <hkario@redhat.com>" > $(METADATA)
@echo "Name: $(TEST)" >> $(METADATA)
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
@echo "Path: $(TEST_DIR)" >> $(METADATA)
@echo "Description: Check if package localization is correct" >> $(METADATA)
@echo "Type: Sanity" >> $(METADATA)
@echo "TestTime: 5m" >> $(METADATA)
@echo "RunFor: cracklib" >> $(METADATA)
@echo "Requires: cracklib" >> $(METADATA)
@echo "Priority: Normal" >> $(METADATA)
@echo "License: GPLv2" >> $(METADATA)
@echo "Confidential: no" >> $(METADATA)
@echo "Destructive: no" >> $(METADATA)
rhts-lint $(METADATA)

View File

@ -1,3 +0,0 @@
PURPOSE of /CoreOS/cracklib/Sanity/Localization
Description: Check if package localization is correct
Author: Hubert Kario <hkario@redhat.com>

View File

@ -1,125 +0,0 @@
#!/bin/bash
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /CoreOS/cracklib/Sanity/Localization
# Description: Check if package localization is correct
# Author: Hubert Kario <hkario@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2014 Red Hat, Inc.
#
# This copyrighted material is made available to anyone wishing
# to use, modify, copy, or redistribute it subject to the terms
# and conditions of the GNU General Public License version 2.
#
# This program is distributed in the hope that it will be
# useful, but WITHOUT ANY WARRANTY; without even the implied
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
# PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public
# License along with this program; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/bin/rhts-environment.sh || exit 1
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="cracklib"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlAssertRpm grep
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "pushd $TmpDir"
rlPhaseEnd
rlPhaseStartTest "Sanity"
rlRun "echo 'aVk(|vDTRz$xVE-W6(Z2' | LANG=C cracklib-check | grep ': OK'" 0 "Check if cracklib-check accepts complex passwords"
rlRun "echo AAAAAAAAAAAA | LANG=C cracklib-check | grep ': OK'" 1 "Verify that cracklib-check rejects simple passwords"
rlRun "echo AAAAAAAAAAAA | LANG=C cracklib-check | grep 'DIFFERENT'" 0 "Verify that rejection message contains string 'DIFFERENT'"
rlPhaseEnd
NAME[0]="Assamese"
CODE[0]="as_IN.utf8"
NAME[1]="Bengali"
CODE[1]="bn_IN.utf8"
NAME[2]="German"
CODE[2]="de_DE.utf8"
NAME[3]="Spanish"
CODE[3]="es_ES.utf8"
NAME[4]="French"
CODE[4]="fr_FR.utf8"
NAME[5]="Gujarati"
CODE[5]="gu_IN.utf8"
NAME[6]="Hindi"
CODE[6]="hi_IN.utf8"
NAME[7]="Italian"
CODE[7]="it_IT.utf8"
NAME[8]="Japanese"
CODE[8]="ja_JP.utf8"
NAME[9]="Kannada"
CODE[9]="kn_IN.utf8"
NAME[10]="Korean"
CODE[10]="ko_KR.utf8"
NAME[11]="Malayalam"
CODE[11]="ml_IN.utf8"
NAME[12]="Marathi"
CODE[12]="mr_IN.utf8"
NAME[13]="Oriya"
CODE[13]="or_IN.utf8"
NAME[14]="Punjabi"
CODE[14]="pa_IN.utf8"
NAME[15]="Brazil Portugese"
CODE[15]="pt_BR.utf8"
NAME[16]="Russian"
CODE[16]="ru_RU.utf8"
NAME[17]="Tamil"
CODE[17]="ta_IN.utf8"
NAME[18]="Telugu"
CODE[18]="te_IN.utf8"
NAME[19]="Chinese"
CODE[19]="zh_CN.utf8"
NAME[20]="Taiwanese Chinese"
CODE[20]="zh_TW.utf8"
for i in ${!NAME[@]}; do
rlPhaseStartTest "${NAME[$i]}"
rlRun "echo AAAAAAAAAAAA | LANG=${CODE[$i]} cracklib-check | grep -Ev DIFFERENT\>" 0 "Check if fallback message isn't used"
rlRun "echo AAAAAAAAAAAA | LANG=${CODE[$i]} cracklib-check | grep '???????'" 1 "Check if message isn't clobbered"
rlPhaseEnd
done
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd

View File

@ -1,3 +0,0 @@
#!/bin/bash
export TEST_DOCKER_EXTRA_ARGS="--security-opt seccomp:unconfined"
exec merge-standard-inventory "$@"

View File

@ -1,25 +0,0 @@
---
# Tests for Docker and Classic Context
- hosts: localhost
roles:
- role: standard-test-beakerlib
tags:
- classic
- container
tests:
- ABI-compatibility
- Localization
required_packages:
- words # required for ABI-compatibility
- cracklib-devel # required for ABI-compatibility
- ltrace # required for ABI-compatibility
- gcc # required for ABI-compatibility
# Tests for Atomic
- hosts: localhost
roles:
- role: standard-test-beakerlib
tags:
- atomic
tests:
- Localization