12693 Commits

Author SHA1 Message Date
Brian Smith
5a5f6d71c6 NFC: Reduce scope of #[allow(unused_variables)] in X25519. 2023-10-04 11:26:12 -07:00
Brian Smith
38b9bb7de0 Reorganize, simplify, and clarify BUILDING.md. 2023-10-03 14:23:46 -07:00
Luis Cruz
8387c3953e Add apple tvos support 2023-10-03 11:54:18 -07:00
Brian Smith
c8e4b23af8 Don't hard-code use of static CRT in GitHub Actions AArch64 Windows build. 2023-10-03 09:13:53 -07:00
Brian Smith
49b47eabfa Use Visual Studio 2022 in GitHub Actions for AArch64 Windows. 2023-10-03 09:13:53 -07:00
Brian Smith
c4a6ec8662 ECC: Better encapsulate Curve25519 base point multiplication.
Combine some `unsafe` blocks and create a more logical interface.
2023-10-02 15:18:28 -07:00
Brian Smith
52582adbce CI: Remove PowerPC and s390x jobs from test-features. Add PowerPC to test.
Add the powerpc-unknown-linux-gnu target to `test`. Remove PowerPC and
s390x targets from `test-features` because they slow down CI too much.
2023-10-02 14:15:12 -07:00
Brian Smith
d34858a918 0.17.0. 2023-10-02 01:18:18 -07:00
Brian Smith
93d1807dd0 0.17.0-beta.3 2023-10-02 01:18:18 -07:00
Brian Smith
851f9f339b 0.17.0-beta.2 2023-10-02 01:18:18 -07:00
Brian Smith
812592f5f3 0.17.0-beta.1 2023-10-02 01:18:18 -07:00
Brian Smith
3d993da504 Revert "AES: Use SSE2-based implementation as the fallback on x86 and x86-64."
This reverts commit 1a5ad00222405b8e64ee322c61942bdd63cc1e29.

Not all C compilers for i686 support SSE2 by default.
2023-10-01 23:08:30 -07:00
Brian Smith
edf5830cb2 NFC: Tests: Address clippy lint. 2023-10-01 21:36:43 -07:00
Brian Smith
1a5ad00222 AES: Use SSE2-based implementation as the fallback on x86 and x86-64.
Address some warnings from Clang/GCC in the SSE2 code that are disabled
by default in BoringSSL but not in *ring*.
2023-10-01 21:30:19 -07:00
Brian Smith
e4a85afb58 ARM & Aarch64: Add ability to disable hardware crypto for testing. 2023-10-01 21:29:57 -07:00
Brian Smith
00d639339a Add support for 64-bit big-endian PowerPC.
Not added to CI. We need to find a better solution for supporting PowerPC
(and s390x and other less-common archs) in CI.
2023-10-01 21:29:33 -07:00
Noel Tautges
0bf9d2ac1f Encode public key in Ed25519 PKCS#8 v2 template with a primitive encoding to conform with spec and make it parse with der >=0.5 2023-10-01 21:29:14 -07:00
Brian Smith
a73bd052a7 Add regression test for Ed25519KeyPair::generate_pkcs8(). 2023-10-01 21:29:14 -07:00
ZHAI Xiaojuan
3d592b27bf Add support for LoongArch64 2023-10-01 18:43:17 -07:00
Brian Smith
3878b1b28a CI: Temporarily move powerpc-unknown-linux-gnu from coverage to test-features. 2023-10-01 18:25:37 -07:00
Brian Smith
acc256193e CI: Document critical aspects of each target in coverage. 2023-10-01 18:25:37 -07:00
Brian Smith
6e82dd3c75 Add powerpc-unknown-linux-gnu support. 2023-10-01 18:25:37 -07:00
Ulrich Weigand
baa823bb4d Basic support for s390x target 2023-10-01 14:33:16 -07:00
Ulrich Weigand
079a4faef6 Support big-endian platforms 2023-10-01 14:33:16 -07:00
Brian Smith
7b1937d3a8 NFC: CPU: Clarify safety invariants around OPENSSL_armcap_P. 2023-10-01 14:25:39 -07:00
Brian Smith
bad63fb73f CPU: ARM: Remove bogus static assertion about 32-bit ARM.
It is possible that a 32-bit ARM target could have static crypto CPU features.
2023-09-30 22:28:29 -07:00
Brian Smith
301f31671b NFC: Polyfill const_option feature. 2023-09-30 20:25:46 -07:00
Brian Smith
901441fd59 MSRV 1.61.0: Use cfg!(target_feature) for static AARCH64 feature detection. 2023-09-30 17:41:26 -07:00
Eric Richter
3161c01ec5 CI: add powerpc64le-unknown-linux-gnu as a target
Signed-off-by: Eric Richter <erichte@linux.ibm.com>
2023-09-30 17:18:58 -07:00
Eric Richter
c163528d3e cpu/arm: allow dead code in cpu/arm mod when building on non-arm
Other architectures may not need to do feature checks, and therefore
Feature::available, Feature::mask, etc are never used/read.

This snippet mirrors the similar bit at the top of cpu/intel.

Signed-off-by: Eric Richter <erichte@linux.ibm.com>
2023-09-30 17:18:58 -07:00
Eric Richter
3a8c095f3d Add Little-endian PPC64LE definition to ring-core/target.h
Signed-off-by: Eric Richter <erichte@linux.ibm.com>
2023-09-30 17:18:58 -07:00
Brian Smith
4b87b67335 CI: Reduce size of test-features matrix to speed up CI. 2023-09-30 15:47:16 -07:00
Jessica Hamilton
f5c5014f12 Enable Haiku platform. 2023-09-30 14:34:26 -07:00
Brian Smith
7bd536e9df Replicate BoringSSL's test for constant_time_conditional_memxor. 2023-09-30 13:40:06 -07:00
Brian Smith
165e8a797c Cherry-pick BoringSSL RISC-V target support (64-bit only). 2023-09-30 11:46:06 -07:00
Brian Smith
4e54361385 CI: Add riscv64gc-unknown-linux-gnu to the coverage target. 2023-09-30 11:46:06 -07:00
Brian Smith
e5908b9626 CI: Use riscv64-linux-gnu-gcc as RISC-V linker. 2023-09-30 11:46:06 -07:00
leso-kn
036b80aa97 CI: Enable riscv64 build
Co-authored-by: light4 <root@i01.io>
Signed-off-by: leso-kn <info@lesosoftware.com>
2023-09-30 11:46:06 -07:00
leso-kn
1e1e8e1ee6 Add support for riscv64
Co-authored-by: Alan Mock <alan@alanmock.com>
Co-authored-by: Patrick Elsen <pelsen@xfbs.net>
Signed-off-by: leso-kn <info@lesosoftware.com>
2023-09-30 11:46:06 -07:00
Brian Smith
bb50d70299 Don't run test jobs on Beta or Nightly channels.
These are duplicated by `coverage` (temporarily) and the `features` tests.
Do this to reduce the latency between submitting a PR and it passing CI.
Right now we have so many jobs with the huge matrix and CI takes too long.
2023-09-30 11:42:55 -07:00
Brian Smith
bb64b55bf0 Do not deprecate the signature::RsaPublicKey alias yet.
Unless/until a bigger refactoring is completed, don't bother people about the new name.
2023-09-30 07:20:44 -07:00
Joshua Liebow-Feeser
d7b8b6192b aead: Add a safety comment 2023-09-29 22:44:47 -07:00
Joshua Liebow-Feeser
e3e27e525f rsa: Use NonZero::new instead of new_unchecked 2023-09-29 22:43:22 -07:00
Brian Smith
8406e2cbb6
Merge pull request #1667 from briansmith/b/EcdsaKeyPair-sign-is-not-deprecated
Remove the word "deprecated" From the `EcdsaKeyPair::sign` documentation
2023-09-29 22:05:10 -07:00
Brian Smith
9dbbc55cfd Remove the word "deprecated" From the EcdsaKeyPair::sign documentation. 2023-09-29 22:02:49 -07:00
Brian Smith
feb3942526
Merge pull request #1666 from briansmith/b/merge-boringssl-18
Merge BoringSSL through bd20800c22fc8402611b537287bd6948c3f2a5a8
2023-09-29 20:29:35 -07:00
Brian Smith
4581b6fee7 Merge BoringSSL 'bd20800': Add a comment for what compiler_test.cc is about
Try to support more than what BoringSSL does w.r.t. aliasing pointers.
2023-09-29 17:59:31 -07:00
Brian Smith
7c823f148d Ignore BoringSSL 'd24a382'. 2023-09-29 17:46:31 -07:00
Brian Smith
8bc545d482 Take BoringSSL '764e6a3': Stop rewriting ret to repz ret on x86_64 2023-09-29 17:45:57 -07:00
Brian Smith
a1fd5f7e25 Ignore BoringSSL through 'cfcb954'. 2023-09-29 17:45:41 -07:00