mirror of https://github.com/bitcoin/bitcoin
master
27.x
28.x
26.x
25.x
24.x
v27.2
v27.2rc1
v28.0
v28.0rc2
v28.0rc1
v26.2
v26.2rc1
v27.1
v27.1rc1
v23-final
v27.0
v25.2
v26.1
v25.2rc2
v26.1rc2
v27.0rc1
v25.2rc1
v26.1rc1
v26.0
v26.0rc3
v26.0rc2
v26.0rc1
v24.2
v25.1
v24.2rc1
v25.1rc1
v22-final
v25.0
v23.2
v24.1
v23.2rc1
v25.0rc2
v24.1rc3
v25.0rc1
v24.1rc2
v0.21-final
v24.1rc1
v0.20-final
v0.19-final
v0.18-final
v23.1
v24.0.1
v22.1
v22.1rc2
v23.1rc2
v24.0
v24.0rc4
v23.1rc1
v22.1rc1
v24.0rc3
v24.0rc2
v24.0rc1
v23.0
v23.0rc5
v23.0rc4
v23.0rc3
v23.0rc2
v23.0rc1
v0.20.2
v0.17-final
v0.16-final
v0.21.2
v22.0
v0.20.2rc3
v0.21.2rc2
v22.0rc3
v0.21.2rc1
v22.0rc2
v22.0rc1
v0.20.2rc2
v21.99-guixtest1
v0.21.1
v0.21.1rc1
v0.21.0
v0.19.2
v0.21.0rc5
v0.21.0rc4
v0.20.2rc1
v0.19.2rc1
v0.21.0rc3
v0.21.0rc2
v0.21.0rc1
v0.20.1
v0.20.1rc1
v0.20.0
v0.20.0rc2
v0.20.0rc1
v0.19.1
v0.19.1rc2
v0.19.1rc1
v0.19.0.1
v0.19.0
v0.19.0rc3
v0.19.0rc2
v0.19.0rc1
v0.17.2
v0.17.2rc2
v0.17.2rc1
v0.18.1
v0.18.1rc1
v0.18.0
v0.18.0rc4
v0.18.0rc3
v0.18.0rc2
v0.18.0rc1
v0.17.1
v0.17.1rc1
v0.17.0.1
v0.17.0
v0.14.3
v0.15.2
v0.16.3
v0.17.0rc4
v0.17.0rc3
v0.17.0rc2
v0.17.0rc1
v0.16.2
v0.16.2rc2
v0.16.2rc1
v0.16.1
v0.16.1rc2
v0.16.1rc1
noversion
v0.16.0
v0.16.0rc4
v0.16.0rc3
v0.16.0rc2
v0.16.0rc1
v0.15.1
v0.15.1rc1
v0.15.0.1
v0.15.0
v0.15.0rc3
v0.15.0rc2
v0.15.0rc1
v0.14.2
v0.14.2rc2
v0.14.2rc1
v0.14.1
v0.14.1rc2
v0.14.1rc1
v0.10.5
v0.11.3
v0.14.0
v0.14.0rc3
v0.14.0rc2
v0.14.0rc1
v0.13.2
v0.13.2rc1
v0.13.1
v0.13.1rc3
v0.13.1rc2
v0.13.1rc1
v0.13.0
v0.13.0rc3
v0.13.0rc2
v0.13.0rc1
v0.12.1
v0.12.1rc2
v0.12.1rc1
v0.12.0
v0.12.0rc5
v0.12.0rc4
v0.12.0rc3
v0.12.0rc2
v0.12.0rc1
v0.10.4
v0.11.2
v0.10.4rc1
v0.11.2rc1
v0.11.1
v0.10.3
v0.10.3rc2
v0.11.1rc2
v0.11.1rc1
v0.10.3rc1
v0.11.0
v0.11.0rc3
v0.11.0rc2
v0.11.0rc1
v0.9.5
v0.9.5rc2
v0.9.5rc1
v0.10.2
v0.10.2rc1
v0.10.1
v0.10.1rc3
v0.10.1rc2
v0.10.1rc1
v0.10.0
v0.10.0rc4
v0.10.0rc3
v0.10.0rc2
v0.9.4
v0.10.0rc1
v0.9.3
v0.9.3rc2
v0.9.3rc1
v0.9.2.1
v0.9.2
v0.9.2rc2
v0.9.2rc1
v0.9.1
v0.9.0
v0.9.0rc3
v0.9.0rc2
v0.9.0rc1
v0.8.6
v0.8.6rc1
v0.8.5
v0.8.4
v0.8.4rc2
v0.8.3
v0.8.2
v0.8.2rc3
v0.8.2rc2
v0.8.2rc1
v0.8.1
v0.8.0
v0.8.0rc1
v0.7.2
v0.7.2rc2
v0.7.1
v0.7.1rc1
v0.7.0
v0.7.0rc3
v0.7.0rc2
v0.7.0rc1
v0.6.3
v0.6.3rc1
v0.6.2.2
v0.6.2.1
v0.6.2
v0.6.1
v0.6.1rc2
v0.6.1rc1
v0.6.0
v0.6.0rc6
v0.6.0rc5
v0.6.0rc4
v0.5.3
v0.6.0rc3
v0.5.3rc4
v0.6.0rc2
v0.6.0rc1
v0.5.2
v0.5.1
v0.5.1rc2
v0.5.1rc1
v0.5.0
v0.5.0rc7
v0.5.0rc6
v0.5.0rc5
v0.5.0rc4
v0.5.0rc3
v0.5.0rc2
v0.5.0rc1
v0.4.0
v0.4.00rc2
v0.4.00rc1
v0.3.24
v0.3.24rc3
v0.3.24rc2
v0.3.24rc1
v0.3.23
v0.3.23rc1
v0.3.22
v0.3.22rc6
v0.3.22rc5
v0.3.22rc4
v0.3.22rc3
v0.3.22rc2
v0.3.22rc1
v0.3.21
v0.3.21rc
v0.3.20.2
v0.3.20
v0.1.5
v0.1.6test1
v0.12-final
v0.13-final
v0.2.0
v0.2.10
v0.2.11
v0.2.12
v0.2.13
v0.2.2
v0.2.4
v0.2.5
v0.2.6
v0.2.7
v0.2.8
v0.2.9
v0.2rc2
v0.3.0
v0.3.1
v0.3.10
v0.3.11_notexact
v0.3.12
v0.3.13
v0.3.14
v0.3.15
v0.3.17
v0.3.18
v0.3.19
v0.3.1rc1
v0.3.2
v0.3.20.01_closest
v0.3.20.2_closest
v0.3.3
v0.3.6
v0.3.7
v0.3.8
v0.3rc1
v0.3rc2
v0.3rc4
v0.8-final
v0.9-final
${ noResults }
89 Commits (74981aa02d2b14ad1c0b82d1eb09cf3169eaa8ae)
Author | SHA1 | Message | Date |
---|---|---|---|
fanquake |
2c9eb4afe1
|
guix: use cmake-minimal over cmake
|
2 years ago |
fanquake |
1475515312
|
guix: use coreutils-minimal over coreutils
|
2 years ago |
fanquake |
4445621415
|
guix: use bash-minimal over bash
|
2 years ago |
fanquake |
d5d4b75840
|
guix: combine glibc hardening options into hardened-glibc
|
2 years ago |
fanquake |
74c9893989
|
guix: use glibc 2.27 for all Linux builds
Also point to the latest commit on the glibc 2.27 releases branch. https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/release/2.27/master |
2 years ago |
fanquake |
1d6c605165
|
Merge bitcoin/bitcoin#26057: build, guix: Get rid of perl dependency
|
2 years ago |
Hennadii Stepanov |
d0433a3153
|
guix: Drop perl package
|
2 years ago |
fanquake |
0cd7928133
|
guix: use git-minimal over git
From the git-minimal package definition: > The size of the closure of 'git-minimal' is two thirds that of 'git'. > Its test suite runs slightly faster and most importantly it doesn't > depend on packages that are expensive to build such as Subversion. We don't need any fancy / additional git functionality above the basics, so switch to git-minimal and save some CPU, while also pruning the greater dependency graph. ```diff -name: git +name: git-minimal version: 2.37.3 outputs: -+ send-email: see Appendix H -+ svn: see Appendix H -+ credential-netrc: see Appendix H -+ credential-libsecret: see Appendix H -+ subtree: see Appendix H -+ gui: see Appendix H + out: everything else -systems: x86_64-linux mips64el-linux aarch64-linux powerpc64le-linux i686-linux armhf-linux powerpc-linux -dependencies: asciidoc@9.1.0 bash-minimal@5.1.8 bash@5.1.8 curl@7.79.1 docbook-xsl@1.79.2 expat@2.4.1 gettext-minimal@0.21 glib@2.70.2 libsecret@0.20.4 openssl@1.1.1l pcre2@10.37 perl-authen-sasl@2.16 perl-cgi@4.52 -+ perl-io-socket-ssl@2.068 perl-net-smtp-ssl@1.04 perl-term-readkey@2.38 perl@5.34.0 pkg-config@0.29.2 python@3.9.9 subversion@1.14.1 tcl@8.6.11 tk@8.6.11.1 xmlto@0.0.28 zlib@1.2.11 -location: gnu/packages/version-control.scm:222:2 +systems: x86_64-linux mips64el-linux aarch64-linux powerpc64le-linux riscv64-linux i686-linux armhf-linux powerpc-linux +dependencies: bash-minimal@5.1.8 bash@5.1.8 curl@7.79.1 expat@2.4.1 gettext-minimal@0.21 openssl@1.1.1l perl@5.34.0 zlib@1.2.11 +location: gnu/packages/version-control.scm:608:2 homepage: https://git-scm.com/ license: GPL 2 synopsis: Distributed version control system ``` |
2 years ago |
fanquake |
56e79fe683
|
guix: use --build={arch}-guix-linux-gnu in cross toolchain
Technically we are always cross-compiling, so make that explicit. Fixes: #22458. |
2 years ago |
fanquake |
7a0b129c41
|
guix: patch NSIS to remove .reloc sections from install stubs
With the release of binutils/ld 2.36, ld swapped to much improved default settings when producing windows binaries with mingw-w64. One of these changes was to stop stripping the .reloc section from binaries, which is required for working ASLR. .reloc section stripping is something we've accounted for previously, see #18702. The related upstream discussion is in this thread: https://sourceware.org/bugzilla/show_bug.cgi?id=19011. When we switched to using a newer Guix time-machine in #23778, we begun using binutils 2.37 to produce releases. Since then, our windows installer (produced with makensis) has not functioned correctly when run on a Windows system with the "Force randomization for images (Mandatory ASLR)" option enabled. Note that all of our other release binaries, which all contain .reloc sections, function fine under the same option, so it cannot be just the presence of a .reloc section that is the issue. For now, restore makensis to it's pre-binutils-2.36 behaviour, which fixes the produced installer. The underlying issue can be further investigated in future. |
2 years ago |
fanquake |
4cf3b7d763
|
guix: ignore additional failing certvalidator test
Similar to
|
2 years ago |
fanquake |
c99a1ecc52
|
guix: enable hardening options in GCC Build
Pass `--enable-default-pie` and `--enable-default-ssp` when configuring our GCCs. This achieves the following: --enable-default-pie Turn on -fPIE and -pie by default. --enable-default-ssp Turn on -fstack-protector-strong by default. Note that this isn't a replacement for passing hardneing flags ourselves, but introduces some redundency, and there isn't really a reason to not build a more "hardenings enabled" toolchain by default. See also: https://gcc.gnu.org/install/configure.html |
2 years ago |
fanquake |
aa87879a77
|
guix: pass enable-bind-now to glibc
Both glibcs we build support `--enable-bind-now`: Disable lazy binding for installed shared objects and programs. This provides additional security hardening because it enables full RELRO and a read-only global offset table (GOT), at the cost of slightly increased program load times. See: https://www.gnu.org/software/libc/manual/html_node/Configuring-and-compiling.html |
2 years ago |
fanquake |
3897a131d0
|
guix: enable SSP for RISC-V glibc (2.27)
Pass `--enable-stack-protector=all` when building the glibc used for the RISC-V toolchain, to enable stack smashing protection on all functions, in the glibc code. |
2 years ago |
Hennadii Stepanov |
2ade04c0d9
|
guix: Drop repetition of option's default value
|
2 years ago |
Andrew Chow | 5bff18bce5 |
guix: patch gcc 10 with pthreads to remap guix store paths
|
2 years ago |
fanquake |
ca08e00a1b
|
Merge bitcoin/bitcoin#25508: guix: use elfesteem 2eb1e5384ff7a220fd1afacd4a0170acff54fe56
|
2 years ago |
laanwj |
b04f42efe3
|
Merge bitcoin/bitcoin#25490: guix: more cross arch reproducibility (x86_64 -> arm64)
|
2 years ago |
fanquake |
103c0d9f7e
|
guix: use elfesteem 2eb1e5384ff7a220fd1afacd4a0170acff54fe56
Our patch has been merged upstream, see https://github.com/LRGH/elfesteem/pull/3 |
2 years ago |
laanwj |
ceae0eb7e3
|
Merge bitcoin/bitcoin#25437: guix: remove explicit glibc stack protector disabling
|
2 years ago |
Andrew Chow |
54faac9689
|
guix: Remove guix store paths from glibc
Without ffile-prefix-map, the debug symbols will contain paths for the guix store which will include the hashes of each package. However, the hash for the same package will differ when on different architectures. In order to be reproducible regardless of the architecture used to build the package, map all guix store prefixes to something fixed, e.g. /usr. We might be able to drop this in favour of using --with-nonshared-cflags when we being using newer versions of glibc. |
2 years ago |
fanquake |
5f082ad4e4
|
guix: patch LIEF to fix PPC64 NX default
This patches our LIEF build using the change merged upstream: https://github.com/lief-project/LIEF/pull/718. This can be dropped the next time we update LIEF. |
2 years ago |
fanquake |
0b5adfda87
|
guix: use LIEF 0.12.1
|
2 years ago |
fanquake |
8d25926643
|
guix: parallelize LIEF build
|
2 years ago |
fanquake |
4e569c8bd8
|
guix: remove explicit glibc stack protector disabling
While glibc 2.25 and newer *can* be built with stack-smashing-protection enabled, it isn't used by default, and still isn't, as of glibc 2.35, so I can't see a reason to explicitly disable it. I'd also like to move in the direction of enabling, by default, hardening options for the toolchains we build, so removing the explicit disabling is a step in that direction. Will be following up with some changes based on this PR. |
2 years ago |
fanquake |
679ecdd14b
|
guix: use libtool 2.4.7
As of version 2.4.7, libtool now respects ARFLAGS, which we use, and has changed the default ARFLAGS from cru to cr (which we also do, see configure). This eliminates spammy `ar` output such as: ```bash CXXLD libunivalue.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') AR libbitcoin_zmq.a AR libbitcoin_consensus.a CXXLD crypto/libbitcoin_crypto_base.la CXXLD crypto/libbitcoin_crypto_sse41.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD crypto/libbitcoin_crypto_avx2.la CXXLD crypto/libbitcoin_crypto_x86_shani.la CXXLD leveldb/libleveldb.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD crc32c/libcrc32c.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD leveldb/libmemenv.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') AR libbitcoin_cli.a ``` Libtool 2.4.7 release notes: https://lists.gnu.org/archive/html/autotools-announce/2022-03/msg00000.html |
2 years ago |
fanquake |
6b9d53e1ff
|
guix: native GCC 10 toolchain for Linux builds
|
3 years ago |
fanquake |
88fd3f81ec
|
guix: use -fcommon when building glibc 2.24
GCC 10 started using -fno-common by default, which causes issues with the powerpc builds using gibc 2.24. A patch was commited to glibc to fix the issue, 18363b4f010da9ba459b13310b113ac0647c2fcc but is non-trvial to backport, and was broken in at least one way, see the followup in commit 7650321ce037302bfc2f026aa19e0213b8d02fe6. For now, retain the legacy GCC behaviour by passing -fcommon when building glibc 2.24. https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html. https://sourceware.org/git/?p=glibc.git;a=commit;h=18363b4f010da9ba459b13310b113ac0647c2fcc https://sourceware.org/git/?p=glibc.git;a=commit;h=7650321ce037302bfc2f026aa19e0213b8d02fe6 |
3 years ago |
fanquake |
0e51913595
|
guix: fix glibc 2.27 multiple definition warnings with GCC 10
|
3 years ago |
fanquake |
508bd4d357
|
guix: adjust RISC-V __has_include() patch to work with GCC 10
The actual macro is __has_include(), not __has_include__(), using the later would result in build failures when using GCC 10. i.e: ```bash ../sysdeps/unix/sysv/linux/riscv/flush-icache.c:24:5: warning: "__has_include__" is not defined, evaluates to 0 [-Wundef] 24 | #if __has_include__ (<asm/syscalls.h>) ``` Looks like at least someone else has run into the same thing, see: http://lists.busybox.net/pipermail/buildroot/2020-July/590376.html. See also: https://gcc.gnu.org/onlinedocs/cpp/_005f_005fhas_005finclude.html https://clang.llvm.org/docs/LanguageExtensions.html#has-include |
3 years ago |
fanquake |
c9c5b3060d
|
guix: compile glibc without -werror
Compiling glibc 2.24 and 2.27 with the new GCC 10 results in a number of new warnings, i.e: ```bash libc-tls.c: In function ‘__libc_setup_tls’: libc-tls.c:208:30: error: array subscript 1 is outside the bounds of an interior zero-length array ‘struct dtv_slotinfo[0]’ [-Werror=zero-length-bounds] 208 | static_slotinfo.si.slotinfo[1].map = main_map; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~ In file included from ../sysdeps/x86_64/ldsodefs.h:54, from ../sysdeps/gnu/ldsodefs.h:46, from ../sysdeps/unix/sysv/linux/ldsodefs.h:25, from libc-tls.c:20: ../sysdeps/generic/ldsodefs.h:398:7: note: while referencing ‘slotinfo’ 398 | } slotinfo[0]; | ^~~~~~~~ ``` While we could try and backport all the patches required to fix these up, it would currently seem easier to disable -Werror, which Guix uses by default when building glibc. |
3 years ago |
fanquake |
dcad5f70f1
|
guix: consolidate kernel headers to 5.15
Given no reason to use an older version of the kernel headers for the non-RISCV linux builds, consolidate all Linux builds to 5.15.x. Note that using older kernel headers isn't some sort of compatibility "hack", and glibc explicitly recommends against doing so. See: https://sourceware.org/glibc/wiki/FAQ#What_version_of_the_Linux_kernel_headers_should_be_used.3F. |
3 years ago |
fanquake |
bfbce6cbfe
|
Merge bitcoin/bitcoin#24031: build: don't compress macOS DMG
|
3 years ago |
fanquake |
1dd8cbfbc6
|
build: don't compress macOS DMG
|
3 years ago |
fanquake |
457148a803
|
guix: fix GCC 10.3.0 + mingw-w64 setjmp/longjmp issues
This commit backports a patch to the GCC 10.3.0 we build for Windows cross-compilation in Guix. The commit has been backported to the GCC releases/gcc-10 branch, but hasn't yet made it into a release. The patch corrects a regression from an earlier GCC commit, see: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=357c4350680bf29f0c7a115424e3da11c53b5582 and https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=074226d5aa86cd3de517014acfe34c7f69a2ccc7, related to the way newer versions of mingw-w64 implement setjmp/longjmp. Ultimately this was causing a crash for us when Windows users were viewing the network traffic tab inside the GUI. After some period, long enough that a buffer would need reallocating, a call into FreeTypes gray_record_cell() would result in a call to ft_longjmp (longjmp), which would then trigger a crash. Fixes: https://github.com/bitcoin-core/gui/issues/582. See also: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=e8d1ca7d2c344a411779892616c423e157f4aea8. https://bugreports.qt.io/browse/QTBUG-93476. |
3 years ago |
fanquake |
d6fae988ef
|
guix: fix vmov alignment issues with gcc 10.3.0 & mingw-w64
This introduces a patch to our GCC (10.3.0) mingw-w64 compiler, in Guix, to make it avoid using aligned vmov instructions. This works around a longstanding issue in GCC, https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54412, which was recently discovered to be causing issues, see #24726. Note that distros like Debian are also patching around this issue, and that is where this patch comes from. This would also explain why we haven't run into this problem earlier, in development builds. See: https://salsa.debian.org/mingw-w64-team/gcc-mingw-w64/-/blob/master/debian/patches/vmov-alignment.patch. Fixes #24726. Alternative to #24727. See also: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939559 |
3 years ago |
fanquake |
983e0a2058
|
contrib: use LIEF 0.12.0 for symbol and security checks
|
3 years ago |
fanquake |
e40327d3bb
|
Merge bitcoin/bitcoin#24599: guix: remove mingw-w64 std::filesystem workaround
|
3 years ago |
fanquake |
6fee9de542
|
Merge bitcoin/bitcoin#24508: guix: Drop unneeded openssl dependency for signapple
|
3 years ago |
fanquake |
946b86cf57
|
Revert "build: Fix gcc-cross-x86_64-w64-mingw32-10.3.0 in Guix"
This reverts commit
|
3 years ago |
Andrew Chow | 3c74f775ac |
Update signapple for platform identifier fix
|
3 years ago |
Andrew Chow | 6e9308c6d4 |
guix: use latest signapple
|
3 years ago |
fanquake |
fe5fdbd687
|
Merge bitcoin/bitcoin#24495: guix: only use native GCC 7 toolchain for Linux builds
|
3 years ago |
Hennadii Stepanov |
e857f0bb55
|
guix: Drop unneeded openssl dependency for signapple
|
3 years ago |
fanquake |
40894f6771
|
guix: use latest upstream signapple
This should improve support for signing for M1 binaries. |
3 years ago |
fanquake |
cbc3f63f41
|
guix: use latest upstream python-certvalidator
This should also allow re-enabling previously failing tests. |
3 years ago |
fanquake |
bb12870bac
|
guix: only use native GCC 7 toolchain for Linux builds
The macOS and Windows builds do not require a GCC 7 toolchain, and this is actually causing build issues, i.e #24211. So switch to using a GCC 10 native toolchain for both. |
3 years ago |
Hennadii Stepanov |
7f2f35fe20
|
build: Fix gcc-cross-x86_64-w64-mingw32-10.3.0 in Guix
|
3 years ago |
fanquake |
ca47f2e211
|
guix: use autoconf 2.71
This allows for building with newer targets, like arm64-apple-darwin, due to having a newer bundled config.guess and config.sub. |
3 years ago |
fanquake |
8588591965
|
guix: ignore additioanl failing certvalidator test
====================================================================== ERROR: test_revocation_mode_soft (tests.test_validate.ValidateTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/test_validate.py", line 85, in test_revocation_mode_soft validate_path(context, path) File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 50, in validate_path return _validate_path(validation_context, path) File "/tmp/guix-build-python-certvalidator-0.1-1.e5bdb4b.drv-0/source/tests/../certvalidator/validate.py", line 358, in _validate_path raise PathValidationError(pretty_message( certvalidator.errors.PathValidationError: The path could not be validated because the end-entity certificate expired 2022-01-14 12:00:00Z |
3 years ago |