Compare commits
No commits in common. "c8" and "c9s" have entirely different histories.
@ -1,5 +0,0 @@
|
|||||||
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
61
.gitignore
vendored
@ -1,5 +1,56 @@
|
|||||||
SOURCES/cracklib-2.9.6.tar.gz
|
ASSurnames.gz
|
||||||
SOURCES/cracklib-words-2.9.6.gz
|
Congress.gz
|
||||||
SOURCES/cracklib2_2.8.19-1.debian.tar.gz
|
Domains.gz
|
||||||
SOURCES/cracklib2_2.8.19-1.dsc
|
Dosref.gz
|
||||||
SOURCES/missing-words.gz
|
Family-Names.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
|
||||||
|
20
cracklib-2.9.6-coverity.patch
Normal file
20
cracklib-2.9.6-coverity.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
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);
|
@ -5,8 +5,7 @@
|
|||||||
Summary: A password-checking library
|
Summary: A password-checking library
|
||||||
Name: cracklib
|
Name: cracklib
|
||||||
Version: 2.9.6
|
Version: 2.9.6
|
||||||
Release: 15%{?dist}
|
Release: 27%{?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
|
||||||
|
|
||||||
@ -26,17 +25,14 @@ 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-lookup.patch
|
Patch9: cracklib-2.9.6-coverity.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
|
||||||
@ -61,33 +57,16 @@ 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
|
||||||
@ -111,7 +90,8 @@ 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 .lookup
|
%patch9 -p1 -b .coverity
|
||||||
|
%patch10 -p1 -b .lookup
|
||||||
|
|
||||||
mkdir cracklib-dicts
|
mkdir cracklib-dicts
|
||||||
for dict in %{SOURCE10} %{SOURCE1}
|
for dict in %{SOURCE10} %{SOURCE1}
|
||||||
@ -124,18 +104,14 @@ 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 DESTDIR=$RPM_BUILD_ROOT 'pythondir=${pyexecdir}'
|
%make_install '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 | \
|
||||||
@ -174,35 +150,6 @@ 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
|
||||||
|
|
||||||
@ -228,19 +175,51 @@ EOF
|
|||||||
%{_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 Nov 26 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-15
|
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.9.6-27
|
||||||
|
- 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
|
||||||
|
|
||||||
* Tue Oct 9 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-14
|
* Wed Oct 10 2018 Tomáš Mráz <tmraz@redhat.com> - 2.9.6-17
|
||||||
|
- 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
|
||||||
|
|
8
gating.yaml
Normal file
8
gating.yaml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
--- !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}
|
5
sources
Normal file
5
sources
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
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
|
64
tests/ABI-compatibility/Makefile
Normal file
64
tests/ABI-compatibility/Makefile
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
#
|
||||||
|
# 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)
|
3
tests/ABI-compatibility/PURPOSE
Normal file
3
tests/ABI-compatibility/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
PURPOSE of /CoreOS/cracklib/Sanity/ABI-compatibility
|
||||||
|
Description: Test if the ABI hasn't changed
|
||||||
|
Author: Hubert Kario <hkario@redhat.com>
|
81
tests/ABI-compatibility/runtest.sh
Executable file
81
tests/ABI-compatibility/runtest.sh
Executable file
@ -0,0 +1,81 @@
|
|||||||
|
#!/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
|
63
tests/Localization/Makefile
Normal file
63
tests/Localization/Makefile
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
#
|
||||||
|
# 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)
|
3
tests/Localization/PURPOSE
Normal file
3
tests/Localization/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
PURPOSE of /CoreOS/cracklib/Sanity/Localization
|
||||||
|
Description: Check if package localization is correct
|
||||||
|
Author: Hubert Kario <hkario@redhat.com>
|
125
tests/Localization/runtest.sh
Executable file
125
tests/Localization/runtest.sh
Executable file
@ -0,0 +1,125 @@
|
|||||||
|
#!/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
|
3
tests/inventory
Executable file
3
tests/inventory
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
export TEST_DOCKER_EXTRA_ARGS="--security-opt seccomp:unconfined"
|
||||||
|
exec merge-standard-inventory "$@"
|
25
tests/tests.yml
Normal file
25
tests/tests.yml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
# 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
|
Loading…
Reference in New Issue
Block a user