267 Commits

Author SHA1 Message Date
Brian Smith
f15828a7a6 Stop disabling legacy_directory_ownership to fix Rust 1.41 beta channel builds. 2019-12-23 18:41:07 -06:00
Brian Smith
f6c0e0d1ea cargo fmt. 2019-12-23 15:25:24 -06:00
lzutao
c250e3125e Use array::iter
See clippy::into_iter lint and https://github.com/rust-lang/rust/pull/65819
2019-12-23 12:42:49 -06:00
Brian Smith
ffc0f9714e Always use release configuration for C code in published builds. 2019-07-22 12:08:35 -10:00
Brian Smith
8943885e63 build.rs: Remove redundant Target accessors. 2019-07-22 12:06:59 -10:00
Brian Smith
e32e46c922 Stop defining _XOPEN_SOURCE.
It is no longer needed.
2019-07-15 17:30:40 -10:00
Brian Smith
d367526a27 Remove 32-bit x86 SHA-2 assembly code. 2019-07-09 17:25:46 -10:00
Brian Smith
c53955ea8a Initial wasm32-unknown-unknown support. 2019-07-03 12:20:00 -10:00
Brian Smith
9a99848d74 Enable VPAES fallback implementation of AES for Aarch64. 2019-07-02 16:13:32 -10:00
Brian Smith
b1b75a241f Replace GFp_block128_xor with Rust code. 2019-06-14 14:36:59 -10:00
Brian Smith
f0d4d21e85 Use stable rustfmt. 2019-04-10 09:33:38 -10:00
Brian Smith
d712f6493b Avoid unnecessarily-named explicit lifetime parameters. 2019-03-06 14:04:39 -10:00
Brian Smith
31991cf8d5 Remove commented-out code line in build.rs. 2019-03-03 10:58:09 -10:00
Brian Smith
1d47ce821d Remove now-unused box_pointers linting hints in build.rs. 2019-03-03 10:29:57 -10:00
Brian Smith
0728827d2e Don't enable -Wmissing-prototypes and -Wmissing-declarations.
These really don't make much sense any more given most calls are from
Rust to C.
2019-02-13 08:28:30 -10:00
Brian Smith
ca9d638ca0 Update build.rs and Cargo.toml for the Fiat file renaming. 2019-02-12 10:26:20 -10:00
Brian Smith
fd06534dcd Merge BoringSSL 32e59d2: Switch to new fiat pipeline. 2019-02-12 09:56:51 -10:00
Brian Smith
c7f0eadf0f Move ARM CPU feature caching from C to Rust.
Some of the targets in Rust's `cross` toolchains have old libc headers
that don't have sys/auxv.h, and we want to do this in Rust anyway.

Unfortunately, in the process of doing so, I found out that
`libc::getauxval()` isn't available in enough places either, so we skip
dealing with *that* too.
2019-01-28 14:33:31 -10:00
Brian Smith
387a6965ff Move remaining AEAD feature detection from C to Rust. 2019-01-28 14:33:31 -10:00
Brian Smith
af1bd64d0f Stop disabling -Wcast-align. 2019-01-19 10:12:40 -10:00
Brian Smith
4c345bca47 Enable -Wconversion and -Wsign-conversion. 2019-01-19 10:12:40 -10:00
Brian Smith
06586b8056 Don't build currently-unused p256_beeu-x86_64-asm.pl. 2019-01-03 15:59:09 -10:00
Brian Smith
b989d3343d Implement high-level AES-GCM logic to Rust. 2018-12-14 11:39:34 -10:00
Brian Smith
2843931bb7 Switch to Rust 2018 Edition.
Switch to Rust 2018 Edition. Fix up some build breakage for different
configurations that were found in the process of testing this,
particularly `--no-default-features`.
2018-12-08 21:39:17 -10:00
Brian Smith
6206823c7f Unify asm vs C fallback implementation selection.
These functions are used mutually-exclusively and even compiled
mutually-exclusively.

This also removes a build warning on targets where aes.c is empty;
they were complaining that aes.o (rightly) doesn't define anything
for those targets.

This makes the code more like BoringSSL's; they had made a similar
change before.
2018-12-04 18:24:13 -10:00
Brian Smith
cda9d33d31 Use Rust for RSA exponentiation. 2018-11-29 16:01:00 -10:00
Brian Smith
8d42286d98 Merge BoringSSL 3d450d2: Speed up ECDSA verify on x86-64.
The new modular inversion code isn't hooked up yet. The other stuff was
already being done by *ring*.
2018-11-27 16:53:50 -10:00
Brian Smith
b82bf1c937 Remove references to removed file e_aesgcmsiv.c. 2018-11-25 16:34:54 -10:00
Brian Smith
ea8cba0d85 Re-run rustfmt on build.rs. 2018-11-15 16:43:24 -10:00
Brian Smith
5ae5f0b1df Reformat everything else except {chacha.rs, poly1305.rs, aead/**}.
chacha.rs, poly1305.rs, and aead/** will be reformatted later.
2018-11-15 16:17:50 -10:00
Brian Smith
5c8f13a721 Remove unused polyval.c. 2018-11-15 16:17:39 -10:00
Brian Smith
1bfdf24a7f Replace "=> {}" with "=> ()". 2018-11-12 16:51:43 -10:00
Brian Smith
0b4483785c Remove more unneeded 'static lifetime annotations. 2018-11-03 13:32:36 -10:00
Brian Smith
08ec4f374c Revert "Revert "Check __ANDROID_API__ instead of defining it""
Reland commit b2fd4fabee20e321c4f327f15e6de76dfb21eea2.
2018-05-22 08:18:53 -10:00
Brian Smith
b60250e47e Remove bn.h. 2018-05-16 13:13:47 -10:00
Brian Smith
737e61df7d Remove BIGNUM. 2018-05-16 11:47:28 -10:00
Brian Smith
d8a13d64e2 Remove rayon from the build. 2018-05-14 18:18:32 -10:00
Brian Smith
9409ac757d Only add "/WX" for MSVC for Git builds, not release builds.
Work like non-MSVC builds in this respect, so that new MSVC warnings
don't break release builds.
2018-05-14 17:52:01 -10:00
Brian Smith
b2fd4fabee Revert "Check __ANDROID_API__ instead of defining it"
This reverts commit f934a0ba45a53812bd04694c0e1781ffd9d01671.
2018-05-14 17:00:48 -10:00
Pierre Krieger
f934a0ba45 Check __ANDROID_API__ instead of defining it 2018-05-14 15:51:31 -10:00
Brian Smith
8225b2e310 Remove bsaes-x86_64.pl.
On x86-64, when AES-NI isn't available but SSSE3 is available, just use
VPAES and don't bother with BSAES, even though BSAES is more efficient
for larger-sized inputs.
2018-05-14 11:31:15 -10:00
Brian Smith
39a8124d5b Merge BoringSSL 5c30dab: Import P-256 scalar multiplication assembly from OpenSSL. 2018-05-11 11:16:14 -10:00
Brian Smith
dfb1293828 Remove now-unneeded &s. 2018-05-10 13:38:03 -10:00
gzp
40963edc4e ignore new C5045 VS2017 warning 2018-05-10 12:47:09 -10:00
Brian Smith
01eb3dbbbd Remove now-unneeded (as of rustc 1.26) refs. 2018-05-10 12:43:41 -10:00
Brian Smith
df505089ee Remove non-Montgomery multiplication. 2018-05-05 08:49:14 -10:00
Brian Smith
bd38b9e419 Track that files in third_party/fiat are listed in build.rs.
Previously the incremental compilation logic was not checking for
changes in third_party/fiat. Now it does.

I removed the parallelism from within `check_all_files_tracked()`.
`check_all_files_tracked()` itself is run in parallel with the build,
which is probably good enough.
2018-05-03 12:44:11 -10:00
Brian Smith
82804e9460 Merge BoringSSL 884086e: Remove x86_64 x25519 assembly. 2018-05-01 13:02:12 -10:00
Brian Smith
a0943431dc Merge BoringSSL 042b49c: Extract curve25519 tables into a separate header. 2018-05-01 11:11:55 -10:00
Brian Smith
0eef28147b Merge BoringSSL 5b280a8: Move curve25519 code to third_party/fiat. 2018-04-30 13:37:38 -10:00