update master-with-bazel from master branch
This commit is contained in:
+4
-6
@@ -30,12 +30,10 @@ most recent stable version of each tool.
|
||||
by CMake, it may be configured explicitly by setting
|
||||
`CMAKE_ASM_NASM_COMPILER`.
|
||||
|
||||
* C and C++ compilers with C++11 support are required. On Windows, MSVC 14
|
||||
(Visual Studio 2015) or later with Platform SDK 8.1 or later are supported,
|
||||
but newer versions are recommended. We will drop support for Visual Studio
|
||||
2015 in March 2022, five years after the release of Visual Studio 2017.
|
||||
Recent versions of GCC (6.1+) and Clang should work on non-Windows
|
||||
platforms, and maybe on Windows too.
|
||||
* C and C++ compilers with C++11 support are required. On Windows, MSVC from
|
||||
Visual Studio 2017 or later with Platform SDK 8.1 or later are supported,
|
||||
but newer versions are recommended. Recent versions of GCC (6.1+) and Clang
|
||||
should work on non-Windows platforms, and maybe on Windows too.
|
||||
|
||||
* The most recent stable version of [Go](https://golang.org/dl/) is required.
|
||||
Note Go is exempt from the five year support window. If not found by CMake,
|
||||
|
||||
@@ -58,9 +58,10 @@ TEST(ABITest, SanityCheck) {
|
||||
#if defined(OPENSSL_WINDOWS)
|
||||
// The invalid epilog makes Windows believe the epilog starts later than it
|
||||
// actually does. As a result, immediately after the popq, it does not
|
||||
// realize the stack has been unwound and repeats the work.
|
||||
EXPECT_NONFATAL_FAILURE(CHECK_ABI_SEH(abi_test_bad_unwind_epilog),
|
||||
"unwound past starting frame");
|
||||
// realize the stack has been unwound and repeats the popq. This will result
|
||||
// in reading the wrong return address and fail to unwind. The exact failure
|
||||
// may vary depending on what was on the stack before.
|
||||
EXPECT_NONFATAL_FAILURE(CHECK_ABI_SEH(abi_test_bad_unwind_epilog), "");
|
||||
CHECK_ABI_NO_UNWIND(abi_test_bad_unwind_epilog);
|
||||
#endif // OPENSSL_WINDOWS
|
||||
}
|
||||
|
||||
@@ -36,6 +36,10 @@
|
||||
// Various pre-computed constants.
|
||||
#include "./curve25519_tables.h"
|
||||
|
||||
#if defined(OPENSSL_NO_ASM)
|
||||
#define FIAT_25519_NO_ASM
|
||||
#endif
|
||||
|
||||
#if defined(BORINGSSL_CURVE25519_64BIT)
|
||||
#include "../../third_party/fiat/curve25519_64.h"
|
||||
#else
|
||||
|
||||
@@ -31,8 +31,10 @@
|
||||
#include "../delocate.h"
|
||||
#include "./internal.h"
|
||||
|
||||
#if defined(OPENSSL_NO_ASM)
|
||||
#define FIAT_P256_NO_ASM
|
||||
#endif
|
||||
|
||||
// MSVC does not implement uint128_t, and crashes with intrinsics
|
||||
#if defined(BORINGSSL_HAS_UINT128)
|
||||
#define BORINGSSL_NISTP256_64BIT 1
|
||||
#include "../../../third_party/fiat/p256_64.h"
|
||||
|
||||
+12
-17
@@ -96,6 +96,16 @@ class Span : private internal::SpanBase<const T> {
|
||||
private:
|
||||
static const size_t npos = static_cast<size_t>(-1);
|
||||
|
||||
// Heuristically test whether C is a container type that can be converted into
|
||||
// a Span by checking for data() and size() member functions.
|
||||
//
|
||||
// TODO(davidben): Require C++14 support and switch to std::enable_if_t.
|
||||
// Perhaps even C++17 now?
|
||||
template <typename C>
|
||||
using EnableIfContainer = typename std::enable_if<
|
||||
std::is_convertible<decltype(std::declval<C>().data()), T *>::value &&
|
||||
std::is_integral<decltype(std::declval<C>().size())>::value>::type;
|
||||
|
||||
public:
|
||||
constexpr Span() : Span(nullptr, 0) {}
|
||||
constexpr Span(T *ptr, size_t len) : data_(ptr), size_(len) {}
|
||||
@@ -104,27 +114,12 @@ class Span : private internal::SpanBase<const T> {
|
||||
constexpr Span(T (&array)[N]) : Span(array, N) {}
|
||||
|
||||
template <
|
||||
typename C,
|
||||
// TODO(davidben): Switch everything to std::enable_if_t when we remove
|
||||
// support for MSVC 2015. Although we could write our own enable_if_t and
|
||||
// MSVC 2015 has std::enable_if_t anyway, MSVC 2015's SFINAE
|
||||
// implementation is problematic and does not work below unless we write
|
||||
// the ::type at use.
|
||||
//
|
||||
// TODO(davidben): Move this and the identical copy below into an
|
||||
// EnableIfContainer alias when we drop MSVC 2015 support. MSVC 2015's
|
||||
// SFINAE support cannot handle type aliases.
|
||||
typename = typename std::enable_if<
|
||||
std::is_convertible<decltype(std::declval<C>().data()), T *>::value &&
|
||||
std::is_integral<decltype(std::declval<C>().size())>::value>::type,
|
||||
typename C, typename = EnableIfContainer<C>,
|
||||
typename = typename std::enable_if<std::is_const<T>::value, C>::type>
|
||||
Span(const C &container) : data_(container.data()), size_(container.size()) {}
|
||||
|
||||
template <
|
||||
typename C,
|
||||
typename = typename std::enable_if<
|
||||
std::is_convertible<decltype(std::declval<C>().data()), T *>::value &&
|
||||
std::is_integral<decltype(std::declval<C>().size())>::value>::type,
|
||||
typename C, typename = EnableIfContainer<C>,
|
||||
typename = typename std::enable_if<!std::is_const<T>::value, C>::type>
|
||||
explicit Span(C &container)
|
||||
: data_(container.data()), size_(container.size()) {}
|
||||
|
||||
@@ -418,7 +418,7 @@ static bool is_probably_jdk11_with_tls13(const SSL_CLIENT_HELLO *client_hello) {
|
||||
// JDK 11 always sends extensions in a particular order.
|
||||
constexpr uint16_t kMaxFragmentLength = 0x0001;
|
||||
constexpr uint16_t kStatusRequestV2 = 0x0011;
|
||||
static CONSTEXPR_ARRAY struct {
|
||||
static constexpr struct {
|
||||
uint16_t id;
|
||||
bool required;
|
||||
} kJavaExtensions[] = {
|
||||
|
||||
@@ -245,14 +245,6 @@ UniquePtr<T> MakeUnique(Args &&... args) {
|
||||
{ abort(); }
|
||||
#endif
|
||||
|
||||
// CONSTEXPR_ARRAY works around a VS 2015 bug where ranged for loops don't work
|
||||
// on constexpr arrays.
|
||||
#if defined(_MSC_VER) && !defined(__clang__) && _MSC_VER < 1910
|
||||
#define CONSTEXPR_ARRAY const
|
||||
#else
|
||||
#define CONSTEXPR_ARRAY constexpr
|
||||
#endif
|
||||
|
||||
// Array<T> is an owning array of elements of |T|.
|
||||
template <typename T>
|
||||
class Array {
|
||||
|
||||
@@ -290,7 +290,7 @@ class CECPQ2KeyShare : public SSLKeyShare {
|
||||
HRSS_private_key hrss_private_key_;
|
||||
};
|
||||
|
||||
CONSTEXPR_ARRAY NamedGroup kNamedGroups[] = {
|
||||
constexpr NamedGroup kNamedGroups[] = {
|
||||
{NID_secp224r1, SSL_CURVE_SECP224R1, "P-224", "secp224r1"},
|
||||
{NID_X9_62_prime256v1, SSL_CURVE_SECP256R1, "P-256", "prime256v1"},
|
||||
{NID_secp384r1, SSL_CURVE_SECP384R1, "P-384", "secp384r1"},
|
||||
|
||||
Vendored
+1
-1
@@ -1,6 +1,6 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2015-2016 the fiat-crypto authors (see
|
||||
Copyright (c) 2015-2020 the fiat-crypto authors (see
|
||||
https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS).
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
|
||||
Vendored
+3
-3
@@ -6,8 +6,8 @@ third_party {
|
||||
type: GIT
|
||||
value: "https://github.com/mit-plv/fiat-crypto"
|
||||
}
|
||||
version: "0884b6d374a9d937c44bf024fe3a647ffae2c540"
|
||||
last_upgrade_date { year: 2020 month: 4 day: 16 }
|
||||
version: "6ccc6638716d4632304baf1adbb5c47c3a12ea6f"
|
||||
last_upgrade_date { year: 2022 month: 3 day: 22 }
|
||||
|
||||
local_modifications: "Files renamed to .h for BoringSSL integration. Select functions patched with value barriers."
|
||||
local_modifications: "Files renamed to .h for BoringSSL integration. LICENSE file is LICENSE-MIT from upstream."
|
||||
}
|
||||
|
||||
Vendored
+1241
-657
File diff suppressed because it is too large
Load Diff
Vendored
+751
-398
File diff suppressed because it is too large
Load Diff
Vendored
+2766
-1153
File diff suppressed because it is too large
Load Diff
Vendored
+1272
-487
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -19,7 +19,7 @@ vars = {
|
||||
'checkout_sde': False,
|
||||
'checkout_nasm': False,
|
||||
'checkout_libcxx': False,
|
||||
'vs_version': '2015',
|
||||
'vs_version': '2017',
|
||||
|
||||
# Run the following command to see the latest builds in CIPD:
|
||||
# cipd describe PACKAGE_NAME -version latest
|
||||
|
||||
@@ -62,9 +62,6 @@ def FindDepotTools():
|
||||
def _GetDesiredVsToolchainHashes(version):
|
||||
"""Load a list of SHA1s corresponding to the toolchains that we want installed
|
||||
to build with."""
|
||||
if version == '2015':
|
||||
# Update 3 final with 10.0.15063.468 SDK and no vctip.exe.
|
||||
return ['f53e4598951162bad6330f7a167486c7ae5db1e5']
|
||||
if version == '2017':
|
||||
# VS 2017 Update 9 (15.9.12) with 10.0.18362 SDK, 10.0.17763 version of
|
||||
# Debuggers, and 10.0.17134 version of d3dcompiler_47.dll, with ARM64
|
||||
|
||||
Reference in New Issue
Block a user