11514 Commits

Author SHA1 Message Date
Brian Smith
3c83e797d8 Merge BoringSSL a94c267: Don't use __ARMEL__/__ARMEB__ in aarch64 assembly 2022-10-31 16:37:08 -07:00
Brian Smith
eab4497963 No-op merge of BoringSSL 846a227: Switch __ARM_FEATURE_CRYPTO to __ARM_FEATURE_{AES,SHA2}. 2022-10-31 16:35:05 -07:00
Brian Smith
e51d3c4eea Merge BoringSSL 661266e: Move CPU detection symbols to crypto/internal.h. 2022-10-31 16:31:35 -07:00
Brian Smith
b91a7174ef No-op merge of BoringSSL 37faa93: Move public APIs from cpu.h to crypto.h. 2022-10-31 16:19:23 -07:00
Brian Smith
6b0050f08c Merge BoringSSL 295b313: Rename CPU feature files with underscores. 2022-10-31 16:17:20 -07:00
Brian Smith
0f983bb7a6 Partially merge BoringSSL 1e15682: Enable SHA-512 ARM acceleration when available.
Merge the code for the new implementation but don't use it. The logic to
enable it will be done separately.
2022-10-31 16:04:13 -07:00
Brian Smith
feeca747e2
Merge BoringSSL through af561c221d3af70bd0aa48024db4f1fcf1988eef.
Merge BoringSSL through af561c221d3af70bd0aa48024db4f1fcf1988eef.
2022-10-31 15:28:01 -07:00
Brian Smith
61cf8ec9b9 Take BoringSSL af561c2: Sync sha512-armv8.pl up to 753316232243ccbf86b96c1c51ffcb41651d9ad5. 2022-10-31 12:20:17 -07:00
Brian Smith
5d1fb51de8 Take BoringSSL e90cf82: Import sha512-armv8.pl transforms from upstream NEON code. 2022-10-31 12:19:38 -07:00
Brian Smith
da28c7ecf3 Skip BoringSSL 9bcc12d: Import a few test vectors from OpenSSL. 2022-10-31 12:17:56 -07:00
Brian Smith
0350de5a8f Ignore BoringSSL 16b3af7..d7936c2. 2022-10-31 12:16:46 -07:00
Brian Smith
7d6d896bd7 Ignore BoringSSL 471e631..9fd1637. 2022-10-31 12:02:40 -07:00
Brian Smith
42aa6db4b1 Merge BoringSSL 08dee19: Use C preprocessor comments in assembly headers. 2022-10-31 11:52:51 -07:00
Brian Smith
abe3759a15 Ignore BoringSSL a50f24c..45608a1. 2022-10-31 11:46:44 -07:00
Brian Smith
9ec3142f62 No-op merge of BoringSSL fa6ced9: Extract common rotl/rotr functions. 2022-10-31 11:45:52 -07:00
Brian Smith
5ee3e6cb0a Ignore BoringSSL 2bde936..523d6c7. 2022-10-31 11:44:18 -07:00
Brian Smith
f4b51d78c6 Take BoringSSL 87f316d: Add note to HMAC test vectors from NIST. 2022-10-31 11:43:30 -07:00
Brian Smith
7b6375f496 Ignore BoringSSL 03cae7a..cc509bd. 2022-10-31 11:43:02 -07:00
Brian Smith
7280e9288c No-op merge of BoringSSL dedd23e: aarch64: Add missing LR validation in 'vpaes_cbc_encrypt'
There is no CBC mode stuff in *ring*.
2022-10-31 11:42:09 -07:00
Brian Smith
f7c6957c52 Ignore BoringSSL 66e61c5. 2022-10-31 11:41:22 -07:00
Brian Smith
dcce1c14aa Skip BoringSSL f958727: Speed up constant-time base64 decoding.
There is no base64 decoding in *ring*.
2022-10-31 11:40:38 -07:00
Brian Smith
c4366d3525 Ignore BoringSSL 62c4f15..4937f05. 2022-10-31 11:39:46 -07:00
Brian Smith
d9f9c24a43 Skip BoringSSL 019cc62: Fix BN_prime_checks_for_validation to align with false-positive rate.
*ring* doesn't have RSA key generation yet.
2022-10-31 11:39:05 -07:00
Brian Smith
60326c236b Ignore BoringSSL 9618128..0446b59. 2022-10-31 11:38:36 -07:00
Brian Smith
78c9eca92c Skip BoringSSL c65543b: Make RSA_check_key more than 2x as fast. 2022-10-31 11:37:41 -07:00
Brian Smith
6a6e9aaf28 Ignore BoringSSL 047ff64..417010f. 2022-10-31 11:37:03 -07:00
Brian Smith
39c6b950d5 Merge BoringSSL 8648c53: Refer to RFCs consistently. 2022-10-31 11:35:50 -07:00
Brian Smith
3cfe941288 Ignore BoringSSL 6d84569..16c3e3a. 2022-10-31 11:31:46 -07:00
Brian Smith
3d764eebb7 Take BoringSSL 47c5f9d: Update ghashv8-armx.pl from upstream. 2022-10-31 11:30:29 -07:00
Brian Smith
b97db43338 CI: Fix doctest testing.
A recent change in the toolchain, possible cc-rs, caused the build to break since
we were running `cargo` two different ways with different environment variables.
2022-10-31 11:25:48 -07:00
Brian Smith
abe9529fc0 Remove documentation link.
The self-hosted documentation wasn't being kept up to date.
2022-10-29 11:16:41 -07:00
Brian Smith
2047b68fa2 Clean up README.md. 2022-10-29 11:16:41 -07:00
Brian Smith
a7b235162c Add MSRV to Cargo.toml. 2022-10-29 11:16:41 -07:00
Brian Smith
f5bd88cc0a Use the getrandom crate to implement ring::rand. 2022-10-29 11:14:38 -07:00
Brian Smith
fa25bf3a74 cpu: Assert correctness of Apple Aarch64 static detection at compile time. 2022-10-28 21:56:40 -07:00
Brian Smith
d3ffadc68b cpu: Do more feature detection testing on non-Apple targets.
Factor out the ABI testing from the Apple minimum feature tests.
Clarify the Apple target minimum feature tests accordingly.

For all ARM targets, verify that the compile-time-computed
`ARMCAPS_STATIC` is a subset of the dynamically-reported
capabilities.
2022-10-28 21:56:40 -07:00
Brian Smith
ca5d21d55c cpu: Move test_armcap_static_matches_armcap_dynamic into a submodule. 2022-10-28 21:56:40 -07:00
Brian Smith
0f9084fb97 Internal: Add TODO about using core::ffi. 2022-10-27 08:01:56 -07:00
Brian Smith
6906cc1981 CI: Use Ubuntu 20.04 in GitHub Actions.
"The Ubuntu 18.04 Actions runner image is being deprecated and will be
removed by 12/1/22" according to the GitHub Changelog blog.

Temporarily disable wasm32 tests using Firefox until the Ubuntu 22.04
runners are set up correctly.
2022-10-26 21:15:47 -07:00
Brian Smith
85c435c9e5 Simplify rand documentation. 2022-10-26 21:05:15 -07:00
Brian Smith
00fc3f35f3 CI: Use macOS 12 and remove now-unneeded Xcode hacks.
`macos-latest` switched from macos-11 to macos-12 which broke CI. Use a
specific version to prevent this from happening.
2022-10-25 15:50:16 -07:00
Brian Smith
0d18da865a Always use llvm-nm in mk/check-symbol-prefixes.sh.
Don't try to use binutils `nm` or the Android SDK `llvm-nm`, since they don't
support LLVM's "opaque pointers".
2022-10-21 07:53:11 -07:00
Brian Smith
371377d41d 2021 Edition: Remove now-redundant resolver = "2". 2022-10-20 23:03:50 -07:00
Brian Smith
dc25ad9022 2021 Edition: Remove now-redundant imports. 2022-10-20 23:03:50 -07:00
Brian Smith
6cf448ad49 Use Rust 2021 Edition. 2022-10-20 23:03:50 -07:00
Brian Smith
48980416c0 rand: Use const generics instead of macros. 2022-10-20 16:30:09 -07:00
Brian Smith
5f74cbccc4 Polyfill cleanup: Use Rust 1.53 feature of arrays implenting IntoIterator. 2022-10-20 16:30:09 -07:00
Brian Smith
bfa08bccc4 Remove array_map polyfill now that array_map is stable. 2022-10-20 16:30:09 -07:00
Brian Smith
9b00fff0ce Bump MSRV to 1.57 as os_str_bytes (used by criterion.rs 0.4.0) requires it.
Commit 7386436fb78cdc18b9e5016676a1db8653c06df1 upgraded criterion.rs to
0.4.0 but didn't bump the MSRV. Do that bump.
2022-10-20 12:53:47 -07:00
Brian Smith
7386436fb7 Upgrade to critereon.rs 0.4.0 to shrink dev-dependencies tree.
Remove these 20 dev-dependencies:

  * bstr
  * crossbeam-channel
  * crossbeam-deque
  * crossbeam-epoch
  * crossbeam-utils
  * csv
  * csv-core
  * itoa
  * memchr
  * memoffset
  * num_cpus
  * plotters
  * plotters-backend
  * plotters-svg
  * rayon
  * rayon-core
  * regex-automata
  * scopeguard
  * serde_cbor
  * unicode-width

at the cost of adding these 8 dev-dependencies:

  * anes
  * ciborium
  * ciborium-io
  * ciborium-ll
  * clap_lex
  * hashbrown
  * indexmap
  * os_str_bytes
2022-10-20 09:41:56 -07:00