From e30ed8ec483e0a2c4033a39a6eed4e3c4287a1a7 Mon Sep 17 00:00:00 2001 From: yixiangzhike Date: Fri, 26 Jan 2024 09:44:47 +0800 Subject: [PATCH] Update to 20230614 --- ...-the-quirks-of-the-back-end-config-g.patch | 56 ----- ...-overriding-asciidoc-executable-name.patch | 36 ---- ...port-Makefile-update-for-asciidoc-10.patch | 38 ---- ...nerators-nss-output-sigalgs-nss-3-59.patch | 192 ------------------ backport-rewrite-test-nss-pl-in-python.patch | 115 ----------- crypto-policies-git5f3458e.tar.gz | Bin 0 -> 83077 bytes crypto-policies-git781bbd4.tar.gz | Bin 51107 -> 0 bytes ...uts-NEXT-nss-output-sigalgs-nss-3-59.patch | 24 --- crypto-policies.spec | 52 +++-- 9 files changed, 39 insertions(+), 474 deletions(-) delete mode 100644 backport-Describe-some-of-the-quirks-of-the-back-end-config-g.patch delete mode 100644 backport-Makefile-support-overriding-asciidoc-executable-name.patch delete mode 100644 backport-Makefile-update-for-asciidoc-10.patch delete mode 100644 backport-policygenerators-nss-output-sigalgs-nss-3-59.patch delete mode 100644 backport-rewrite-test-nss-pl-in-python.patch create mode 100644 crypto-policies-git5f3458e.tar.gz delete mode 100644 crypto-policies-git781bbd4.tar.gz delete mode 100644 crypto-policies-tests-outputs-NEXT-nss-output-sigalgs-nss-3-59.patch diff --git a/backport-Describe-some-of-the-quirks-of-the-back-end-config-g.patch b/backport-Describe-some-of-the-quirks-of-the-back-end-config-g.patch deleted file mode 100644 index 21390a7..0000000 --- a/backport-Describe-some-of-the-quirks-of-the-back-end-config-g.patch +++ /dev/null @@ -1,56 +0,0 @@ -From c40cedee6e5225dc72e590f9ff0282d876a2e5d5 Mon Sep 17 00:00:00 2001 -From: Tomas Mraz -Date: Thu, 2 Jul 2020 15:40:01 +0200 -Subject: [PATCH] Describe some of the quirks of the back-end config - generators. - ---- - crypto-policies.7.txt | 25 ++++++++++++++++++++++++- - 1 file changed, 24 insertions(+), 1 deletion(-) - -diff --git a/crypto-policies.7.txt b/crypto-policies.7.txt -index 0971935..2b583b8 100644 ---- a/crypto-policies.7.txt -+++ b/crypto-policies.7.txt -@@ -277,7 +277,7 @@ COMMANDS - NOTES - ----- - --*Exceptions:* -+*Exceptions* - - * *Go-language* applications do not yet follow the system-wide policy. - * *GnuPG-2* application does not follow the system-wide policy. -@@ -323,6 +323,29 @@ of individual applications: - * all *ECC* curves incompatible with *TLS 1.3*, including secp256k1 - * *IKEv1* - -+*Notable irregularities in the individual configuration generators* -+ -+* *OpenSSL*: The minimum length of the keys and some other parameters -+are enforced by the @SECLEVEL value which does not provide a fine -+granularity. The list of *TLS* ciphers is not generated as an exact list -+but by subtracting from all the supported ciphers for the enabled key -+exchange methods. For that reason there is no way to disable a random cipher. -+In particular all *AES-128* ciphers are disabled if the *AES-128-GCM* is not -+present in the list; all *AES-256* ciphers are disabled if the *AES-256-GCM* -+is not present. The *CBC* ciphers are disabled if there isn't *HMAC-SHA1* -+in the hmac list and *AES-256-CBC* in the cipher list. To disable the *CCM* -+ciphers both *AES-128-CCM* and *AES-256-CCM* must not be present in the cipher -+list. -+ -+* *GnuTLS*: The minimum length of the keys and some other parameters -+are enforced by min-verification-profile setting in the *GnuTLS* configuration -+file which does not provide fine granularity. -+ -+* *OpenSSH*: *DH* group 1 is always disabled on server even if the policy -+allows 1024 bit *DH* groups in general. The OpenSSH configuration option -+HostKeyAlgorithms is set only for the *SSH* server as otherwise the -+handling of the existing known hosts entries would be broken on client. -+ - HISTORY - ------- - --- -2.33.0 - diff --git a/backport-Makefile-support-overriding-asciidoc-executable-name.patch b/backport-Makefile-support-overriding-asciidoc-executable-name.patch deleted file mode 100644 index 9a5af46..0000000 --- a/backport-Makefile-support-overriding-asciidoc-executable-name.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 66c30b1e2de5fd37d610463a8fb6e70f6164fecc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= -Date: Mon, 7 Nov 2022 16:56:43 +0100 -Subject: [PATCH] Makefile: support overriding asciidoc executable name - -Support `ASCIIDOC` override to specify another name for the asciidoc -executable. On Gentoo, only `asciidoc` is installed and there is no -`asciidoc.py`. Furthermore, this makes it possible to easily use -asciidoctor in place of asciidoc. ---- - Makefile | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 0d93587..f99dc6d 100644 ---- a/Makefile -+++ b/Makefile -@@ -10,5 +10,6 @@ SCRIPTS=update-crypto-policies fips-finish-install fips-mode-setup - NUM_PROCS = $$(getconf _NPROCESSORS_ONLN) - PYVERSION = -3 -+ASCIIDOC?=asciidoc.py - - all: build - -@@ -109,7 +110,7 @@ clean: - rm -rf output - - %: %.txt -- asciidoc.py -v -d manpage -b docbook $< -+ $(ASCIIDOC) -v -d manpage -b docbook $< - xsltproc --nonet -o $@ /usr/share/asciidoc/docbook-xsl/manpage.xsl $@.xml - - dist: --- -2.27.0 - diff --git a/backport-Makefile-update-for-asciidoc-10.patch b/backport-Makefile-update-for-asciidoc-10.patch deleted file mode 100644 index a7694aa..0000000 --- a/backport-Makefile-update-for-asciidoc-10.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 8c7de0471c1de088ff3c332590ea91a71d4273c0 Mon Sep 17 00:00:00 2001 -From: Alexander Sosedkin -Date: Mon, 20 Feb 2023 11:39:28 +0100 -Subject: [PATCH] Makefile: update for asciidoc 10 - ---- - Makefile | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/Makefile b/Makefile -index f99dc6d..e99ca19 100644 ---- a/Makefile -+++ b/Makefile -@@ -10,6 +10,11 @@ SCRIPTS=update-crypto-policies fips-finish-install fips-mode-setup - NUM_PROCS = $$(getconf _NPROCESSORS_ONLN) - PYVERSION = -3 --ASCIIDOC?=asciidoc.py -+ASCIIDOC?=asciidoc -+ifneq ("$(wildcard /usr/lib/python*/*/asciidoc/resources/docbook-xsl/manpage.xsl)","") -+MANPAGEXSL?=$(wildcard /usr/lib/python*/*/asciidoc/resources/docbook-xsl/manpage.xsl) -+else -+MANPAGEXSL?=/usr/share/asciidoc/docbook-xsl/manpage.xsl -+endif - - all: build - -@@ -111,7 +116,7 @@ clean: - - %: %.txt - $(ASCIIDOC) -v -d manpage -b docbook $< -- xsltproc --nonet -o $@ /usr/share/asciidoc/docbook-xsl/manpage.xsl $@.xml -+ xsltproc --nonet -o $@ ${MANPAGEXSL} $@.xml - - dist: - rm -rf crypto-policies && git clone . crypto-policies && rm -rf crypto-policies/.git/ && tar -czf crypto-policies-git$(VERSION).tar.gz crypto-policies && rm -rf crypto-policies --- -2.27.0 - diff --git a/backport-policygenerators-nss-output-sigalgs-nss-3-59.patch b/backport-policygenerators-nss-output-sigalgs-nss-3-59.patch deleted file mode 100644 index d4e011c..0000000 --- a/backport-policygenerators-nss-output-sigalgs-nss-3-59.patch +++ /dev/null @@ -1,192 +0,0 @@ -From b21c8114995e07965c2ccde5f5767d0618d854bf Mon Sep 17 00:00:00 2001 -From: Alexander Sosedkin -Date: Mon, 18 Jan 2021 17:58:45 +0100 -Subject: [PATCH] policygenerators/nss: output sigalgs (nss >=3.59) - -Actually, checking for 3.60 because Fedora has reverted the change. ---- - python/policygenerators/nss.py | 36 ++++++++++++++++++++++++++++++++--- - tests/nss.py | 15 +++++++++++++++ - tests/outputs/DEFAULT-nss.txt | 2 +- - tests/outputs/FIPS-nss.txt | 2 +- - tests/outputs/FIPS:ECDHE-ONLY-nss.txt | 2 +- - tests/outputs/FIPS:OSPP-nss.txt | 2 +- - tests/outputs/FUTURE-nss.txt | 2 +- - tests/outputs/LEGACY-nss.txt | 2 +- - 9 files changed, 55 insertions(+), 10 deletions(-) - -diff --git a/python/policygenerators/nss.py b/python/policygenerators/nss.py -index ee10025..00935a2 100644 ---- a/python/policygenerators/nss.py -+++ b/python/policygenerators/nss.py -@@ -6,6 +6,8 @@ - from subprocess import call, CalledProcessError - from tempfile import mkstemp - -+import ctypes -+import ctypes.util - import os - - from .configgenerator import ConfigGenerator -@@ -86,6 +88,15 @@ class NSSGenerator(ConfigGenerator): - 'DTLS1.2':'dtls1.2' - } - -+ # Depends on a dict being ordered, -+ # impl. detail in CPython 3.6, guaranteed starting from Python 3.7. -+ sign_prefix_ordmap = { -+ 'RSA-PSS-':'RSA-PSS', # must come before RSA- -+ 'RSA-':'RSA-PKCS', -+ 'ECDSA-':'ECDSA', -+ 'DSA-':'DSA', -+ } -+ - @classmethod - def generate_config(cls, policy): - p = policy.props -@@ -126,9 +137,14 @@ class NSSGenerator(ConfigGenerator): - except KeyError: - pass - -- dsa = [i for i in p['sign'] if i.find('DSA-') == 0] -- if dsa: -- s = cls.append(s, 'DSA') -+ enabled_sigalgs = set() -+ for i in p['sign']: -+ for prefix, sigalg in cls.sign_prefix_ordmap.items(): -+ if i.startswith(prefix): -+ if sigalg not in enabled_sigalgs: -+ enabled_sigalgs.add(sigalg) -+ s = cls.append(s, sigalg) -+ break # limit to first match - - try: - minver = cls.protocol_map[p['min_tls_version']] -@@ -151,6 +167,20 @@ class NSSGenerator(ConfigGenerator): - - @classmethod - def test_config(cls, config): -+ try: -+ nss_path = ctypes.util.find_library('nss3') -+ nss_lib = ctypes.CDLL(nss_path) -+ if not nss_lib.NSS_VersionCheck(b'3.60'): -+ # Cannot validate with pre-3.59 NSS -+ # that doesn't know ECDSA/RSA-PSS/RSA-PKCS -+ # identifiers yet. -+ # 3.60 because Fedora's 3.59 has that reverted -+ cls.eprint('Skipping nss-policy-check due to ' -+ 'nss being older than 3.60') -+ return True -+ except AttributeError: -+ cls.eprint('Cannot determine nss version with ctypes') -+ - if not os.access('/usr/bin/nss-policy-check', os.X_OK): - return True - -diff --git a/tests/nss.py b/tests/nss.py -index 4d2cee1..a16d984 100755 ---- a/tests/nss.py -+++ b/tests/nss.py -@@ -1,5 +1,7 @@ - #!/usr/bin/python3 - -+import ctypes -+import ctypes.util - import glob - import os - import shutil -@@ -12,6 +14,19 @@ if shutil.which('nss-policy-check') is None: - sys.exit(0) - - -+# Cannot validate with pre-3.59 NSS that doesn't know ECDSA/RSA-PSS/RSA-PKCS -+# identifiers yet. Checking for 3.60 because Fedora has reverted the change. -+try: -+ nss = ctypes.CDLL(ctypes.util.find_library('nss3')) -+ if not nss.NSS_VersionCheck(b'3.60'): -+ print('Skipping nss-policy-check verification ' -+ 'due to nss being older than 3.60', file=sys.stderr) -+ sys.exit(0) -+except AttributeError: -+ print('Cannot determine nss version with ctypes, hoping for >=3.59', -+ file=sys.stderr) -+ -+ - print('Checking the NSS configuration') - - for policy_path in glob.glob('tests/outputs/*-nss.txt'): -diff --git a/tests/outputs/DEFAULT-nss.txt b/tests/outputs/DEFAULT-nss.txt -index 6a93308..500cd70 100644 ---- a/tests/outputs/DEFAULT-nss.txt -+++ b/tests/outputs/DEFAULT-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:tls-version-min=tls1.0:dtls-version-min=dtls1.0:DH-MIN=1023:DSA-MIN=2048:RSA-MIN=2048" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.0:dtls-version-min=dtls1.0:DH-MIN=1023:DSA-MIN=2048:RSA-MIN=2048" - - -diff --git a/tests/outputs/FIPS-nss.txt b/tests/outputs/FIPS-nss.txt -index c9809b9..4fdf6bc 100644 ---- a/tests/outputs/FIPS-nss.txt -+++ b/tests/outputs/FIPS-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" - - -diff --git a/tests/outputs/FIPS:ECDHE-ONLY-nss.txt b/tests/outputs/FIPS:ECDHE-ONLY-nss.txt -index 78f4844..399bc5c 100644 ---- a/tests/outputs/FIPS:ECDHE-ONLY-nss.txt -+++ b/tests/outputs/FIPS:ECDHE-ONLY-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:ECDHE-RSA:ECDHE-ECDSA:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:ECDHE-RSA:ECDHE-ECDSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" - - -diff --git a/tests/outputs/FIPS:OSPP-nss.txt b/tests/outputs/FIPS:OSPP-nss.txt -index 0ca1ab0..d172a83 100644 ---- a/tests/outputs/FIPS:OSPP-nss.txt -+++ b/tests/outputs/FIPS:OSPP-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" - - -diff --git a/tests/outputs/FUTURE-nss.txt b/tests/outputs/FUTURE-nss.txt -index 23d1ce8..9cea0a4 100644 ---- a/tests/outputs/FUTURE-nss.txt -+++ b/tests/outputs/FUTURE-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:SHA256:SHA384:SHA512:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=3072:DSA-MIN=3072:RSA-MIN=3072" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:SHA256:SHA384:SHA512:ECDHE-RSA:ECDHE-ECDSA:DHE-RSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=3072:DSA-MIN=3072:RSA-MIN=3072" - - -diff --git a/tests/outputs/LEGACY-nss.txt b/tests/outputs/LEGACY-nss.txt -index e16b6ce..8bf8bd1 100644 ---- a/tests/outputs/LEGACY-nss.txt -+++ b/tests/outputs/LEGACY-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:des-ede3-cbc:rc4:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:DHE-DSS:DSA:tls-version-min=tls1.0:dtls-version-min=dtls1.0:DH-MIN=1023:DSA-MIN=1023:RSA-MIN=1023" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:des-ede3-cbc:rc4:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:DHE-DSS:ECDSA:RSA-PSS:RSA-PKCS:DSA:tls-version-min=tls1.0:dtls-version-min=dtls1.0:DH-MIN=1023:DSA-MIN=1023:RSA-MIN=1023" - - --- -1.8.3.1 - diff --git a/backport-rewrite-test-nss-pl-in-python.patch b/backport-rewrite-test-nss-pl-in-python.patch deleted file mode 100644 index 5741aef..0000000 --- a/backport-rewrite-test-nss-pl-in-python.patch +++ /dev/null @@ -1,115 +0,0 @@ -From 4fb6cdf626ee35623400ca557198cecb4efd4e88 Mon Sep 17 00:00:00 2001 -From: Alexander Sosedkin -Date: Mon, 18 Jan 2021 17:43:53 +0100 -Subject: [PATCH] tests/nss.pl: rewrite in Python - ---- - Makefile | 2 +- - tests/nss.pl | 41 ----------------------------------------- - tests/nss.py | 33 +++++++++++++++++++++++++++++++++ - 3 files changed, 34 insertions(+), 42 deletions(-) - delete mode 100755 tests/nss.pl - create mode 100755 tests/nss.py - -diff --git a/Makefile b/Makefile -index 2699ac6..a50408e 100644 ---- a/Makefile -+++ b/Makefile -@@ -43,7 +43,7 @@ check: - python/build-crypto-policies.py --policy FIPS:ECDHE-ONLY --test --flat policies tests/outputs - tests/openssl.pl - tests/gnutls.pl -- tests/nss.pl -+ tests/nss.py - tests/java.pl - tests/krb5.py - top_srcdir=. tests/update-crypto-policies.sh -diff --git a/tests/nss.pl b/tests/nss.pl -deleted file mode 100755 -index e021ffd..0000000 ---- a/tests/nss.pl -+++ /dev/null -@@ -1,41 +0,0 @@ --#!/usr/bin/perl -- --my $RESULTFILE="result-nss.tmp"; -- --use File::Which qw(which); -- --print "Checking the NSS configuration\n"; -- --my $dir = 'tests/outputs'; -- --opendir(DIR, $dir) or die $!; -- --my @nsspolicies -- = grep { -- /-nss/ # has -nss in name -- && -f "$dir/$_" # and is a file -- } readdir(DIR); -- --foreach my $policyfile (@nsspolicies) { -- my $policy = $policyfile; -- $policy =~ s/-[^-]+$//; -- -- print "Checking policy $policy\n"; -- my $tool = which "nss-policy-check"; -- -- if ($policy ne 'EMPTY' and $tool ne undef) { -- -- system("nss-policy-check $dir/$policyfile >$RESULTFILE 2>&1") ; -- if ($? != 0) { -- print "Error in NSS policy for $policy\n"; -- print STDERR "NSS policy for $policy:\n"; -- system("cat $dir/$policyfile 1>&2"); -- print STDERR "\nnss-policy-check error:\n"; -- system("cat $RESULTFILE 1>&2"); -- exit 1; -- } -- unlink($RESULTFILE); -- } --} -- --exit 0; -diff --git a/tests/nss.py b/tests/nss.py -new file mode 100755 -index 0000000..4d2cee1 ---- /dev/null -+++ b/tests/nss.py -@@ -0,0 +1,33 @@ -+#!/usr/bin/python3 -+ -+import glob -+import os -+import shutil -+import subprocess -+import sys -+ -+ -+if shutil.which('nss-policy-check') is None: -+ print('nss-policy-check not found, skipping check', file=sys.stderr) -+ sys.exit(0) -+ -+ -+print('Checking the NSS configuration') -+ -+for policy_path in glob.glob('tests/outputs/*-nss.txt'): -+ policy = os.path.basename(policy_path)[:-len('-nss.txt')] -+ print(f'Checking policy {policy}') -+ if policy not in ('EMPTY', 'GOST-ONLY'): -+ p = subprocess.Popen(['nss-policy-check', policy_path], -+ stdout=subprocess.PIPE, -+ stderr=subprocess.STDOUT) -+ output, _ = p.communicate() -+ if p.wait(): -+ print(f'Error in NSS policy for {policy}') -+ print(f'NSS policy for {policy}:', file=sys.stderr) -+ with open(policy_path) as policy_file: -+ shutil.copyfileobj(policy_file, sys.stderr) -+ sys.stderr.write('\n') -+ print('nss-policy-check error:', file=sys.stderr) -+ print(output.decode(), file=sys.stderr) -+ sys.exit(1) --- -1.8.3.1 - diff --git a/crypto-policies-git5f3458e.tar.gz b/crypto-policies-git5f3458e.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..e45fe61ba71794b5e11e6017611f5f34032c9c2e GIT binary patch literal 83077 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 -Date: Fri, 7 Jan 2022 15:12:26 +0800 -Subject: [PATCH] tests outputs NEXT-nss: output sigalgs (nss >=3.59) - ---- - tests/outputs/NEXT-nss.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/outputs/NEXT-nss.txt b/tests/outputs/NEXT-nss.txt -index 1c2e182..846beb2 100644 ---- a/tests/outputs/NEXT-nss.txt -+++ b/tests/outputs/NEXT-nss.txt -@@ -1,6 +1,6 @@ - library= - name=Policy - NSS=flags=policyOnly,moduleDB --config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" -+config="disallow=ALL allow=HMAC-SHA256:HMAC-SHA1:HMAC-SHA384:HMAC-SHA512:CURVE25519:SECP256R1:SECP384R1:SECP521R1:aes256-gcm:chacha20-poly1305:aes256-cbc:aes128-gcm:aes128-cbc:SHA256:SHA384:SHA512:SHA224:SHA1:ECDHE-RSA:ECDHE-ECDSA:RSA:DHE-RSA:ECDSA:RSA-PSS:RSA-PKCS:tls-version-min=tls1.2:dtls-version-min=dtls1.2:DH-MIN=2048:DSA-MIN=2048:RSA-MIN=2048" - - --- -1.8.3.1 - diff --git a/crypto-policies.spec b/crypto-policies.spec index 17528fc..6be7ecb 100644 --- a/crypto-policies.spec +++ b/crypto-policies.spec @@ -1,10 +1,10 @@ -%global git_date 20200619 -%global git_commit 781bbd45b7286408502ec47b5acc8ae85c604a68 -%global git_commit_hash 781bbd4 +%global git_date 20230614 +%global git_commit 5f3458e619628288883f22695f3311f1ccd6a39f +%global git_commit_hash 5f3458e Name: crypto-policies Version: %{git_date} -Release: 4.git%{git_commit_hash} +Release: 1.git%{git_commit_hash} Summary: Crypto policies package for Fedora License: LGPLv2+ @@ -14,25 +14,23 @@ URL: https://gitlab.com/redhat-crypto/fedora-crypto-policies # directory. Source0: https://gitlab.com/redhat-crypto/fedora-crypto-policies/-/archive/%{git_commit_hash}/%{name}-git%{git_commit_hash}.tar.gz -Patch0: backport-rewrite-test-nss-pl-in-python.patch -Patch1: backport-policygenerators-nss-output-sigalgs-nss-3-59.patch -Patch2: crypto-policies-tests-outputs-NEXT-nss-output-sigalgs-nss-3-59.patch -Patch3: backport-Describe-some-of-the-quirks-of-the-back-end-config-g.patch -Patch4: backport-Makefile-support-overriding-asciidoc-executable-name.patch -Patch5: backport-Makefile-update-for-asciidoc-10.patch - BuildArch: noarch BuildRequires: asciidoc BuildRequires: libxslt BuildRequires: openssl BuildRequires: gnutls-utils >= 3.6.0 -BuildRequires: java-1.8.0-openjdk-devel +BuildRequires: java-21-openjdk-devel BuildRequires: bind BuildRequires: perl-interpreter BuildRequires: perl-generators BuildRequires: perl(File::pushd), perl(File::Temp), perl(File::Copy) BuildRequires: perl(File::Which) BuildRequires: python3-devel +BuildRequires: openssh-clients + +Conflicts: openssl-libs < 3.0.2 +Conflicts: openssh < 9.0p1 +Conflicts: gnutls < 3.7.3 # used by update-crypto-policies Requires: coreutils @@ -73,6 +71,13 @@ to enable or disable the system FIPS mode. %autosetup -p1 -n fedora-%{name}-%{git_commit_hash}-%{git_commit} %build +# Drop pre-generated GOST-ONLY policies +rm -rf policies/GOST-ONLY.pol + +# Drop FEDORA policies +rm -rf policies/FEDORA38.pol +rm -rf policies/TEST-FEDORA39.pol + make %{?_smp_mflags} %install @@ -97,6 +102,11 @@ done %py_byte_compile %{__python3} %{buildroot}%{_datadir}/crypto-policies/python %check +# Don't diff FEDORA38 policies, it's deleted +sed -i '/diff\ policies\/DEFAULT.pol\ policies\/FEDORA38.pol/d' Makefile +# Don't check GOST-ONLY policies, it's deleted +sed -i '/\ GOST-ONLY\ /d' Makefile + make check %{?_smp_mflags} %post @@ -126,13 +136,15 @@ make check %{?_smp_mflags} %ghost %{_sysconfdir}/crypto-policies/back-ends/krb5.config %ghost %{_sysconfdir}/crypto-policies/back-ends/openjdk.config %ghost %{_sysconfdir}/crypto-policies/back-ends/libreswan.config +%ghost %{_sysconfdir}/crypto-policies/back-ends/javasystem.config +%ghost %{_sysconfdir}/crypto-policies/back-ends/sequoia.config +%ghost %{_sysconfdir}/crypto-policies/back-ends/rpm-sequoia.config %{_bindir}/update-crypto-policies %{_mandir}/man7/crypto-policies.7* %{_mandir}/man8/update-crypto-policies.8* %{_datarootdir}/crypto-policies/LEGACY/* %{_datarootdir}/crypto-policies/DEFAULT/* -%{_datarootdir}/crypto-policies/NEXT/* %{_datarootdir}/crypto-policies/FUTURE/* %{_datarootdir}/crypto-policies/FIPS/* %{_datarootdir}/crypto-policies/EMPTY/* @@ -151,6 +163,20 @@ make check %{?_smp_mflags} %license COPYING.LESSER %changelog +* Fri Jan 26 2024 yixiangzhike - 20230614-1.git5f3458e +- update version to 20230614 + - DEFAULT policy drop DH<2048bits,TLS1.0,TLS1.1,SHA-1 + - Remove the CBC ciphers from DEFAULT policy in openssh + - FIPS policy drop the CBC ciphersuites + - Enable RSA-PSK algorithms in DEFAULT and LEGACY policies + - Add the diffie-hellman-group14-sha256 to libssh + - Add --check option to update-crypto-policies + - Add AES-192 algorithms support + - Use allowlisting config for gnutls + - Enable SHAKE algorithms for gnutls,java and nss + - Openssl disable SHA-1 signatures in FUTURE policy + - Openssh add HostbasedAcceptedAlgorithms and RequiresRSASize config options + * Mon Feb 27 2023 yixiangzhike - 20200619-4.git781bbd4 - Makefile support overriding asciidoc executable name - update Makefile for asciidoc 10 -- Gitee