mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-22 14:11:07 +02:00
sys-libs/cracklib: Sync with Gentoo
It's from Gentoo commit b7a013abfee8f7264833b97631a986f129ff33da.
This commit is contained in:
parent
6eb38bd0c5
commit
faf8a49325
@ -1,3 +1,2 @@
|
||||
DIST cracklib-2.10.2.tar.xz 465152 BLAKE2B 87ea88085fee30cbd6e59485f157b7c6213e21619ff8af20ed33c118fd4be78cc9fc5b8ac5d583391df7a3bd527671044410d0e5cfe1cf864c0608cd24a8ca0b SHA512 b58f513bb3094821a69e45c092483d7445ecd1ea2d4d70b6cc422c58e478146f4656fc1ddc0b276f1da31a858d2baea4cca233c9232e2acd05085d55873f3273
|
||||
DIST cracklib-2.10.3.tar.xz 466704 BLAKE2B 714b904a4f890f399fc2acd3c8ed91173cbce19d04f386cd594388e1d35197b135d760616998979051de9154f9e94c587d21f80979fe4e00ada66010006c7216 SHA512 5a86116b888dd324d17495c3ccefb061bfc6b31a7dcebc394324d87878dec5dec268591f9d7ef30cf60f70df9ff3bbf3d891c60efc198dba80f83cc43a08273c
|
||||
DIST cracklib-2.9.11.tar.xz 461116 BLAKE2B 46b499e465c1c268b772781a9c8ce573a5167ae2e0ac919b403acdb9a14c35140dfb53909eef6e41600e26c2f87d905b3d6d05380c66f053d091765b58a264f4 SHA512 c32e509f757344a1f0b7032ad3b6dc47a8759852a94e511c92073d85bce55f45d48c389d9eb34c993e1d61ad5c1542150672f3e8bc147148ebbb04d3319a2409
|
||||
|
@ -18,7 +18,7 @@ S="${WORKDIR}"/${MY_P}
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="nls python static-libs zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
|
@ -1,134 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Note: ideally bump with sys-apps/cracklib-words
|
||||
DISTUTILS_EXT=1
|
||||
DISTUTILS_OPTIONAL=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
inherit distutils-r1 libtool multilib-minimal usr-ldscript
|
||||
|
||||
MY_P=${P/_}
|
||||
DESCRIPTION="Password Checking Library"
|
||||
HOMEPAGE="https://github.com/cracklib/cracklib/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz"
|
||||
S="${WORKDIR}"/${MY_P}
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
|
||||
IUSE="nls python static-libs zlib"
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
|
||||
RDEPEND="
|
||||
python? ( ${PYTHON_DEPS} )
|
||||
zlib? ( >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
BDEPEND="
|
||||
nls? ( sys-devel/gettext )
|
||||
python? ( ${DISTUTILS_DEPS} )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-py3.12-tests.patch
|
||||
)
|
||||
|
||||
distutils_enable_tests unittest
|
||||
|
||||
pkg_setup() {
|
||||
# Workaround bug #195017
|
||||
if has unmerge-orphans ${FEATURES} && has_version "<${CATEGORY}/${PN}-2.8.10" ; then
|
||||
eerror "Upgrade path is broken with FEATURES=unmerge-orphans"
|
||||
eerror "Please run: FEATURES=-unmerge-orphans emerge cracklib"
|
||||
die "Please run: FEATURES=-unmerge-orphans emerge cracklib"
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# bug #269003
|
||||
elibtoolize
|
||||
|
||||
if use python ; then
|
||||
distutils-r1_src_prepare
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local myeconfargs=(
|
||||
# use /usr/lib so that the dictionary is shared between ABIs
|
||||
--with-default-dict="/usr/lib/cracklib_dict"
|
||||
--without-python
|
||||
$(use_enable nls)
|
||||
$(use_enable static-libs static)
|
||||
)
|
||||
|
||||
export ac_cv_header_zlib_h=$(usex zlib)
|
||||
export ac_cv_search_gzopen=$(usex zlib -lz no)
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
local -x CFLAGS="${CFLAGS} -DLOCALEDIR='\"${EPREFIX}/usr/share/locale\"' -DDEFAULT_CRACKLIB_DICT=\'${EPREFIX}/usr/lib/cracklib_dict\'"
|
||||
cd python || die
|
||||
distutils-r1_src_compile
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
default
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
distutils-r1_src_test
|
||||
fi
|
||||
}
|
||||
|
||||
python_test() {
|
||||
cd "${S}"/python || die
|
||||
|
||||
# Make sure we load the freshly built library
|
||||
local -x LD_LIBRARY_PATH="${BUILD_DIR/-${EPYTHON/./_}}/lib/.libs:${BUILD_DIR}/lib:${LD_LIBRARY_PATH}"
|
||||
|
||||
eunittest
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
default
|
||||
|
||||
# Move shared libs to /
|
||||
gen_usr_ldscript -a crack
|
||||
|
||||
if multilib_is_native_abi && use python ; then
|
||||
cd python || die
|
||||
distutils-r1_src_install
|
||||
fi
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
rm -r "${ED}"/usr/share/cracklib || die
|
||||
|
||||
insinto /usr/share/dict
|
||||
doins dicts/cracklib-small
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${ROOT} ]] ; then
|
||||
ebegin "Regenerating cracklib dictionary"
|
||||
create-cracklib-dict "${EPREFIX}"/usr/share/dict/* > /dev/null
|
||||
eend $?
|
||||
fi
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
https://github.com/cracklib/cracklib/commit/a77a392272df3677f71c68e81fcdad1bc722732e
|
||||
|
||||
From a77a392272df3677f71c68e81fcdad1bc722732e Mon Sep 17 00:00:00 2001
|
||||
From: Olivier Gayot <olivier.gayot@canonical.com>
|
||||
Date: Thu, 30 Nov 2023 18:36:17 +0100
|
||||
Subject: [PATCH] Fix test-suite so it can run with Python 3.12
|
||||
|
||||
The test suite still used the obsolete assertEquals() function which was
|
||||
a deprecated alias for assertEqual() (without the s) and got dropped
|
||||
from Python 3.12.
|
||||
|
||||
Use the replacement instead so the test-suite can run with Python 3.12.
|
||||
|
||||
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
|
||||
--- a/python/test_cracklib.py
|
||||
+++ b/python/test_cracklib.py
|
||||
@@ -69,52 +69,52 @@ def test_simple(self):
|
||||
def test_simple_lower(self):
|
||||
for passwd in ['t' * i for i in range(
|
||||
cracklib.MIN_LENGTH - cracklib.LOW_CREDIT)]:
|
||||
- self.assertEquals(
|
||||
+ self.assertEqual(
|
||||
1, cracklib.simple(passwd),
|
||||
'password {0} should be detected as too simple'.format(
|
||||
passwd))
|
||||
- self.assertEquals(0, cracklib.simple(
|
||||
+ self.assertEqual(0, cracklib.simple(
|
||||
't' * (cracklib.MIN_LENGTH - cracklib.LOW_CREDIT)))
|
||||
|
||||
def test_simple_upper(self):
|
||||
for passwd in ['T' * i for i in range(
|
||||
cracklib.MIN_LENGTH - cracklib.UP_CREDIT)]:
|
||||
- self.assertEquals(
|
||||
+ self.assertEqual(
|
||||
1, cracklib.simple(passwd),
|
||||
'password {0} should be detected as too simple'.format(
|
||||
passwd))
|
||||
- self.assertEquals(0, cracklib.simple(
|
||||
+ self.assertEqual(0, cracklib.simple(
|
||||
'T' * (cracklib.MIN_LENGTH - cracklib.UP_CREDIT)))
|
||||
|
||||
def test_simple_digit(self):
|
||||
for passwd in ['1' * i for i in range(
|
||||
cracklib.MIN_LENGTH - cracklib.DIG_CREDIT)]:
|
||||
- self.assertEquals(
|
||||
+ self.assertEqual(
|
||||
1, cracklib.simple(passwd),
|
||||
'password {0} should be detected as too simple'.format(
|
||||
passwd))
|
||||
- self.assertEquals(0, cracklib.simple(
|
||||
+ self.assertEqual(0, cracklib.simple(
|
||||
'1' * (cracklib.MIN_LENGTH - cracklib.DIG_CREDIT)))
|
||||
|
||||
def test_simple_other(self):
|
||||
for passwd in ['#' * i for i in range(
|
||||
cracklib.MIN_LENGTH - cracklib.OTH_CREDIT)]:
|
||||
- self.assertEquals(
|
||||
+ self.assertEqual(
|
||||
1, cracklib.simple(passwd),
|
||||
'password {0} should be detected as too simple'.format(
|
||||
passwd))
|
||||
- self.assertEquals(0, cracklib.simple(
|
||||
+ self.assertEqual(0, cracklib.simple(
|
||||
'#' * (cracklib.MIN_LENGTH - cracklib.OTH_CREDIT)))
|
||||
|
||||
def test_simple_combinations(self):
|
||||
testset = '#a' * (cracklib.MIN_LENGTH // 2)
|
||||
for passwd in [testset[:i] for i in range(
|
||||
cracklib.MIN_LENGTH - cracklib.LOW_CREDIT - cracklib.OTH_CREDIT)]:
|
||||
- self.assertEquals(
|
||||
+ self.assertEqual(
|
||||
1, cracklib.simple(passwd),
|
||||
'password {0} should be detected as too simple'.format(
|
||||
passwd))
|
||||
- self.assertEquals(0, cracklib.simple(
|
||||
+ self.assertEqual(0, cracklib.simple(
|
||||
testset[:(cracklib.MIN_LENGTH - cracklib.LOW_CREDIT -
|
||||
cracklib.OTH_CREDIT)]))
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user