[packages/ca-certificates] Rel 5; drop Certum CA and TERENA certs
arekm
arekm at pld-linux.org
Tue Oct 20 21:26:55 CEST 2026
commit d4ef0286aa459a5af966fe6bf14b652ab5c8272e
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Tue Aug 11 12:08:48 2026 +0200
Rel 5; drop Certum CA and TERENA certs
Mozilla stopped trusting the old Certum root for websites in 2017 and its
replacements are already here; the TERENA certs cannot be verified at all.
Also dropped dead spec code.
ca-certificates-more-certs.patch | 17 +------------
ca-certificates.spec | 53 ++++------------------------------------
2 files changed, 6 insertions(+), 64 deletions(-)
---
diff --git a/ca-certificates.spec b/ca-certificates.spec
index ed6f79d..22a1b6e 100644
--- a/ca-certificates.spec
+++ b/ca-certificates.spec
@@ -1,28 +1,22 @@
# TODO
-# - https://bugzilla.mozilla.org/show_bug.cgi?id=549701 and
-# http://groups.google.com/group/mozilla.dev.security.policy/browse_thread/thread/b6493a285ba79998#
# - make amsn use system certs
# - make pidgin use system certs
# - swap %{certsdir}/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt regards file vs symlink
#
# Conditional build:
-%bcond_without tests # skip duplicates check
+%bcond_without tests # certificate duplicate and expiry checks
Summary: Common CA Certificates PEM files
Summary(pl.UTF-8): Pliki PEM popularnych certyfikatów CA
Name: ca-certificates
%define ver_date 20260601
Version: %{ver_date}
-Release: 4
+Release: 5
License: GPL v2 (scripts), MPL v2 (mozilla certs), distributable (other certs)
Group: Base
Source0: https://ftp.debian.org/debian/pool/main/c/ca-certificates/%{name}_%{version}.tar.xz
# Source0-md5: 987199e8918ed427ec494a1a716241b0
# https://www.certum.pl/pl/cert_wiedza_zaswiadczenia_klucze_certum/
-Source2: https://www.certum.pl/CA.pem
-# Source2-md5: 35610177afc9c64e70f1ce62c1885496
-Source14: https://www.certum.pl/CTNCA.pem
-# Source14-md5: 231b5b8bf05c5e93a9b2ebc4186eb6f7
Source15: https://repository.certum.pl/class1casha2.pem
# Source15-md5: b52dde6e2618a21965afbe6d6676d09f
Source16: https://repository.certum.pl/dvcasha2.pem
@@ -39,10 +33,6 @@ Source21: https://files.certum.eu/documents/klucze_ca/CertumTrustedNetworkCA/CRO
# Source21-md5: c03631774d30bdc4f2ce283959334dbf
Source22: https://repository.certum.pl/ctnca-cec384ca.pem
# Source22-md5: 8b8273bcb8390ae473183985cafe079c
-Source23: https://crt.tcs.terena.org/TERENAPersonalCA.crt
-# Source23-md5: 53eaa497c8fb0b79f14fe9f69693689a
-Source24: https://crt.tcs.terena.org/TERENAeSciencePersonalCA.crt
-# Source24-md5: e25cc655d3ebe920ca9c187e3dde9191
Patch0: %{name}-undebianize.patch
Patch1: %{name}-more-certs.patch
Patch2: %{name}-etc-certs.patch
@@ -94,8 +84,6 @@ cd ca-certificates
%{__sed} -i -e 's, at openssldir@,%{openssldir},' sbin/update-ca-certificates*
install -d certum
-cp -pi %{SOURCE2} certum
-#cp -pi %{SOURCE14} certum
cp -pi %{SOURCE15} certum
cp -pi %{SOURCE16} certum
cp -pi %{SOURCE17} certum
@@ -110,39 +98,8 @@ done
%build
cd ca-certificates
-install -d terena
-openssl x509 -inform DER -in %{SOURCE23} -outform PEM -out terena/$(basename %{SOURCE23})
-openssl x509 -inform DER -in %{SOURCE24} -outform PEM -out terena/$(basename %{SOURCE24})
-
%{__make}
-# We have those and more in specific dirs
-#%{__rm} mozilla/Certum*.crt
-
-make_sure_expired_and_rm() {
- cert="$1"
- rm -rf pld-tests
- install -d pld-tests
- cat "$cert" | awk '/^-+BEGIN/ { i++; } /^-+BEGIN/, /^-+END/ { print > "pld-tests/" i ".extracted.crt" }'
- for tmpcert in pld-tests/*.extracted.crt; do
- # check expiration date
- EXPDATE=$(openssl x509 -enddate -noout -in "$tmpcert")
- EXPDATE=${EXPDATE#notAfter=}
- EXPDATETIMESTAMP=$(date +"%s" -d "$EXPDATE")
- NOWTIMESTAMP=$(date +"%s")
- # mksh is 32bit only
- if /usr/bin/test "$EXPDATETIMESTAMP" -ge "$NOWTIMESTAMP"; then
- echo "$cert ($tmpcert): not expired! ${EXPDATE}"
- return 1
- fi
- done
- rm "$cert"
- return 0
-}
-
-# See TODO
-# %{__rm} mozilla/RSA_Security_1024_v3.crt
-
%install
rm -rf $RPM_BUILD_ROOT
cd ca-certificates
@@ -166,8 +123,8 @@ ln -s %{certsdir}/ca-certificates.crt $RPM_BUILD_ROOT/etc/pki/tls/certs/ca-bundl
install -d pld-tests
cd pld-tests
-# regex for subjects of allowed expired certs
-ALLOW_EXPIRED="(IE, O=Baltimore, OU=CyberTrust, CN=Baltimore CyberTrust Root)"
+# regex for subjects of allowed expired certs; empty allows none
+ALLOW_EXPIRED=""
# check for duplicates (to avoid X509_STORE_add_cert "cert already in hash table" problem)
cat $RPM_BUILD_ROOT%{certsdir}/ca-certificates.crt | awk '/^-+BEGIN/ { i++; } /^-+BEGIN/, /^-+END/ { print > i ".extracted.crt" }'
for cert in *.extracted.crt; do
@@ -186,7 +143,7 @@ for cert in *.extracted.crt; do
echo "Fingerprint: $(cat "$cert.fingerprint")"
echo "\n\n"
SUBJECT=$(openssl x509 -in "$cert" -noout -subject | sed 's/^subject= *//')
- if echo $SUBJECT | grep -E "$ALLOW_EXPIRED"; then
+ if [ -n "$ALLOW_EXPIRED" ] && echo "$SUBJECT" | grep -E "$ALLOW_EXPIRED"; then
echo "EXPIRED CERT IN WHITELIST"
else
exit 1
diff --git a/ca-certificates-more-certs.patch b/ca-certificates-more-certs.patch
index ef4d2a4..88b52d6 100644
--- a/ca-certificates-more-certs.patch
+++ b/ca-certificates-more-certs.patch
@@ -5,7 +5,7 @@
CERTSDIR = /usr/share/ca-certificates
-SUBDIRS = mozilla
-+SUBDIRS = mozilla certum terena
++SUBDIRS = mozilla certum
all:
for dir in $(SUBDIRS); do \
@@ -24,18 +24,3 @@
+ for p in *.crt; do \
+ install -p -m 644 $$p $(CERTSDIR)/$$p ; \
+ done
---- ca-certificates/terena/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ ca-certificates-more/terena/Makefile 2007-02-02 07:23:19.000000000 +0100
-@@ -0,0 +1,12 @@
-+#
-+# Makefile
-+#
-+
-+all:
-+
-+clean:
-+
-+install:
-+ for p in *.crt; do \
-+ install -p -m 644 $$p $(CERTSDIR)/$$p ; \
-+ done
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/ca-certificates.git/commitdiff/25c5fde40ec5318c481c0da7a5eb8fd2bc28b629
More information about the pld-cvs-commit
mailing list