Bazel: update BoringSSL to d977eaa / 59eb3d5 (master-with-bazel).

This update includes the following changes:

d977eaa1 Make AES-GCM AEADs support the optional second input argument to seal_scatter.
74bce299 Change EVP_AEAD_CTX_seal_scatter to support an additional plaintext input.
946dd62a AES-GCM shouldn't keep its own version of the tag length.
3120950b Size TLS read buffers based on the size requested.
5df5be1a Fix record header callback on writes.
5aaaa98f Detect WatchGuard's TLS 1.3 interference failure mode.
bfd94db7 Trim RSA_METHOD and ECDSA_METHOD.
e55b32dd Don't crash when decrypting with public keys.
6fff3864 Support standard RFC cipher suite names alongside OpenSSL ones.
cd60bf0e Fix PPC redirectors.
05d4c972 Simplify SSL_get0_next_proto_negotiated.
44c0772c Remove some unnecessary indirections.
0a9bf669 Clean up some duplicated code.
773ae91d Fix PPC ELF ABI citation.
68161cb8 Stash the computed version range in SSL_HANDSHAKE.
fc08dfc4 Rename {ssl,ctx}->{min,max}_version.
4414874f Simplify ssl_private_key_* state machine points.
babcac1c Document error behavior of AEAD seal/open methods.
9961dff0 Unwind V2ClientHello counters.
0d1730dd Squash together states in the TLS 1.2 server Certificate flight.
b5f55c3a Squash together TLS 1.2 states for server Finished block.
9b6ff440 Use _STL_EXTRA_DISABLED_WARNINGS in VS2017.
d98107b4 Remove the last of the f_err pattern.
8d606e36 Clear out f_err pattern from handshake_client.c.
72b36cfe fuchsia: Use new spelling of NO_ERROR.
0a20f786 Update tools from Chromium.
a75fc710 Update fuzzer mode suppressions.
ca743582 Test SSL_select_next_proto and SSL_get_fd.
289e76b6 EVP_PKEY_cmp does not return a boolean.
0391f166 Fix some malloc failure handling.
e831a815 Adding support for sending early data on the client.
24e5886c Add a test for invalid alert types.
5e578c9d Don't draw entropy during FIPS power-on tests.
8379978b Allow |RSA_FLAG_NO_BLINDING| to be set with |e| set.
0a3663a6 ARMv4 assembly pack: harmonize Thumb-ification of iOS build.
3763cbeb sha/asm/sha512-armv8.pl: adapt for kernel use.
f03cdc3a Sync ARM assembly up to 609b0852e4d50251857dbbac3141ba042e35a9ae.
8da59555 ARMv4 assembly pack: allow Thumb2 even in iOS build, and engage it in most modules.
b9940a64 bn/asm/armv4-mont.pl: boost NEON performance.
ae96383a ARMv4 assembly pack: implement support for Thumb2.
e2ff2ca0 Revert "Use unified ARM assembly."
7f7ef53e Allow ILP32 compilation in AArch64 assembly pack.
43a40924 Add missing #include of assert.h
c07635f8 Remove local __arm__ ifdef on aes-armv4.pl.
0514e3df Remove needless type casting.
b529253b Implement scrypt from RFC 7914.
6af3a3d9 aead_test: Skip calls to EVP_AEAD_CTX_open_gather when not implemented.
19670949 Align EVP_PKEY Ed25519 API with upstream.
ff239452 ppc64le delocate: avoid r0 as a base register.
18d9f28f Add EVP_AEAD_CTX_{seal_scatter,open_gather}.
1845d0db Remove some dead code from crypto/asn1.
2dfa1ba6 Delete some dead code from crypto/x509.
5e61d533 Document support status of the legacy ASN.1 code.
c40e1830 Don't define BORINGSSL_SHARED_LIBRARY in generated bzl file.
656aa9a2 Convert p256-x86_64_test to GTest.
f6584e7a Generate iOS assembly in generate_build_files.py.
42adba51 Trim unused declarations in pem.h.
3b33f3eb Set static armcaps based on __ARM_FEATURE_CRYPTO.
619b323a Import Ed25519 tests from upstream to evp_tests.txt.
21882c5c Clarify rand locking comment.
204b8a11 Tag the power-on tests as a constructor function directly.
a09a65ff Be slightly more relaxed about how ppc64le global-entry TOC references look.
16c3f06e Convert evp_test to GTest.
e7d6988c Have run_cavp.go create “resp” directories as needed.
9f579bfe Use unions rather than aliasing when possible.
3d14a15e Run GTest-based tests in parallel.
17ce286e Work around an apparent Linux or glibc bug on ppc64le in FIPS mode.
d91e1efd Convert ECDSA tests to GTest.
54581cc6 Convert x509_test to gtest
8ba6a149 Fix build with VS 2017.
ce9f6937 Convert obj_tests to gtest
a26001b9 Convert remaining pkcs8 tests to gtest
0da939d3 Fix bazel crypto target dependencies.
f6e5b1f2 Revert "Fix platforms that don't define UINT64_MAX."
055375ef Support more complex offset / symbol section interleavings.
b0bb83a5 Bound ssl_ctx_api more aggressively.
e8ee9470 Don't enable ASM when OPENSSL_NO_ASM is set.
cb34f869 Convert thread_test to GTest.
6da9eaee Bound expensive opcodes in ssl_ctx_api.
6758d043 Convert bn_test to GTest.
a51912f7 p256-x86_64-asm.pl: minor sqr_montx cleanup.
2b56981b Move pkcs{7,8}_test over to gtest
e345f9b6 Fix typo in comments.
cd334a54 Handle TOC offsets by giving them to the linker.
733f46e8 Test unaligned input with each AEAD.
c5e9ac1c Move AES-GCM-SIV out from SMALL and handle unaligned keys.
6757fbf8 Convert a number of tests to GTest.
b22e15c3 Fix platforms that don't define UINT64_MAX.
2c84a469 Make test_fips more chatty.
c655cb7b Break hwrand as well as urandom when FIPS_BREAK_TEST=CRNG is set.
b89e025c Clarify the error message for an ECDSA power-on test failure.
0ffc795e Clear PRNG states in FIPS mode.
d79bc9d3 Echo CAVP comments in the output.
563924be Switch CAVP testing for AES-GCM to use external nonces.
592af539 Clarify toc@ha and offsets.
7f07fb2b Fix standalone ppc64le build.
f64a6eea Switch to new delocate tool.
2f3404bb Enforce incrementing counter for TLS 1.2 AES-GCM.
2d04cf08 Test with IPv6 by default, and IPv4 only if that fails.
7c075b99 Change ppc64le AES code for FIPS.
68f84f5c Add missing dependencies on exe_and_shlib_deps
806e18c0 Define OPENSSL_UNUSED for __clang__ as well.
59e1a818 Turn off clang-format in embed_test_data.go output.
e7d3922b Improve Curve25519 cswap x64 assembly
d94682dc Remove ex_data's dup hook.
21cb0744 Add tool for corrupting the FIPS module in a binary.
03c6fa44 AES-GCM is not defined for empty nonces.
e324de00 Convert various tests to GTest.
8c2e8282 Convert ed25519_test to GTest.
3ecd0a5f Convert aes_test to GTest.
8726d8fe Make the Windows build slightly quieter.
1f1eeead Allow FileTest to read from an abstracted line reader.
ef374b86 Remove ECDSA error code hack in evp_test.
dfef2081 Remove FileTest::SetIgnoreUnusedAttributes.
01f8a8c2 Convert stack.h to use inline functions.
894e2003 Add missing #include of delocate.h.
429e85b5 Have a single function for FIPS test failures.
5f107ce4 Prefer RDRAND in FIPS mode.
d55bd797 Fix SSL_COMP_get_compression_methods type signature.
25054231 Convert digest_test to GTest.
118355c6 fipstools: Add a sample binary that exercises methods from the FIPS module.
c49c9e7e Optimize constant-time base64 implementation slightly.
a4f7cc20 Don't call base64_ascii_to_bin twice on each byte.
b3aaffae Add a -no-fax option to run_cavp.
467d3220 Add FIPS-compliant key generation that calls check_fips for RSA and EC.
1ac4f16f tool: don't explicitly disable SSLv3 in the server
208e2393 Move OPENSSL_ASAN to base.h.
4dcc290e Fix GOTPCREL accesses to symbols defined outside the module.
b056ed30 No-op change to kick the bots.
48b6b8f0 Add SSL_CIPHER_has_SHA384_HMAC.
39655ef0 Add AES-GCM-SIV tests for counter wrapping.
2f238d98 Accept vmovq as an alias for movq.
866c2194 crypto/fipsmodule: Allow breaking CRNG self-test.
391cc8c7 Move FIPS build tools to util/fipstools.
583c12ea Remove filename argument to x86 asm_init.
c5388a1c Add sde-linux64 to .gitignore.
44ccadc8 No-op change to kick the bots.
c4dfc6f4 Revert "Add sde-linux64 to .gitignore."
fee85591 Add sde-linux64 to .gitignore.
18ffb16b No-op change to cycle the bots.
ad50a0d7 Fix diff_asm.go and revert another local MASM perlasm change.
82a83ff5 No-op change to cycle the bots.
768e6822 Only fixup CMAKE_ASM_FLAGS -isysroot if CMAKE_OSX_SYSROOT is set.
edafe479 Add hash of SDE tool for the bots.
43e5a26b Fixing assembly coverage reporting.
c5f0c16b Restore ios64_compile to the CQ.
1e5cb820 Add an option to build libFuzzer from DEPS.
799676c9 Add a flag to configure the path to the SDE executable.
ebc4de67 Update tools from Chromium.
63a13ac6 Take ios64_compile out of the CQ.
ce3ec70e Fix cq.cfg formatting.
d4847c6d Add some Android and iOS compile bots to the CQ.
0402f894 crypto/fipsmodule: Make more Known Answer Tests breakable.
74cd5d98 Refresh fuzzer corpus.
08ab59b8 Switch from 8bit-counters to trace-pc-guard.
1d59f6e3 Add a flag to toggle the buggy RSA parser.
8b0515b0 Fix fuzzer build.
f99d2c61 Remove obsolete TODO.
873ebc97 Improve TestConfig flags for initial and resumption connections.
93731d9d Remove old SSL min/max version functions.
20d202bb unrandom: #define _GNU_SOURCE, for syscall().
e838cfb5 Add a way to break one of the KAT tests.
95511e98 generate_build_files: omit tests from fips_fragments.
0d5b886e Switch BN_generate_dsa_nonce's hash back to SHA-512/256.
4d1f4ba0 Timeout the shim on Accept and Wait.
4c7b3bfd Switch integrity hash to SHA-512.
238148a8 Don't indicate FIPS mode when built with ASAN.
c0485d67 Teach delocate.go to handle loading function pointers into XMM registers.
c862c31f perlasm/x86_64-xlate.pl: work around problem with hex constants in masm.
4323e227 Tidy up FIPS module dependencies.
e34eaa64 Remove old masm workaround.
45dd8a04 Add missing #includes of delocate.h.
2e2a226a Move cipher/ into crypto/fipsmodule/
4249481a Add EVP_AEAD_CTX_[new|free] and UniquePtr support.
a90044a4 Bypass building fipsmodule/rand/urandom.c when builing for Trusty
b0521e38 Add AES-GCM-SIV assembly.
bf21849e fipsoracle: Remove fax sample verification baked into test suites. This is covered by run_cavp.go.
96dec443 Move rsa/ to fipsmodule/rsa/
aacb72c1 Move ec/ and ecdsa/ into fipsmodule/
ac52908e Fix RSA KeyGen CAVP test padding.
61ae41f1 Use a minimal totient when generating RSA keys.
a3d9c39c Fix ECDSA KeyPair CAVP test.
02690f75 Run CAVP tests in parallel.
ddfcc6a6 fipsoracle: Combine all test oracles into a single binary.
148ea89b Two tweaks to CAVP outputs to conform to NIST's expectations.
616c4c26 Fix make_errors.go.
073391f7 Detach encrypt and keygen hooks from RSA_METHOD.
be5c67d4 fipsoracle: Add AES KeyWrap test.
9b7228c5 Adding RSA2 KeyGen CAVP tests.
2d933590 Fix some error path logic in i2v_AUTHORITY_INFO_ACCESS and i2v_GENERAL_NAME
c0ae51df Fix URL links in comment
9afa7bc9 Fix time offset calculation.
e5adaef9 Put spaces between arguments of failed tests.
73eb3a9d Undefine some macros in bn/
6dd055d2 fipsoracle: Add MCT mode for TDES.
5eb75e21 Shush some uninitialized variable warnings.
ca62bee9 Don't emit a redirector for OPENSSL_ia32cap_get.
fa839dca Don't depend on crypto/bytestring for ECDSA self-tests.
09ffa773 Don't depend on crypto/bytestring for RSA self-tests.
83a9a264 Check RSA2 SigVer* files.
8209a7c5 Add RSA-PSS to RSA2 Sig{Gen,Ver} drivers.
2baccac8 Tidy up pkey_rsa_verify_recover.
79d18bc4 Add crypto/rsa-level RSA-PSS functions.
05821b0e Consistently check length in RSA_add_pkcs1_prefix.
8a3a2a99 Move des/ to crypto/fipsmodule/
d1c89cd7 Adding RSA2 PKCS15 CAVP tests.
8ee0d147 Fix comment typo.
2b2676f6 fipsoracle: Add cavp_tdes_test (KAT mode only).
5c38c05b Move bn/ into crypto/fipsmodule/
493b2a4b Add HMAC CAVP tests.
1ac76f7e Fix copy-pasted comment in fipsoracle/cavp_ctr_drbg_test.cc.
eb599890 Add ECDSA2 KeyPair CAVP test driver.
9abf84cc Add tool for ECDSA2 SigGen and SigGenComponent tests.
b387e229 Add CTR-DRBG CAVP test driver.
0fcac4bf Fix cavp_aes_gcm_test.cc line endings.
58e44990 Move crypto/fipsoracle/ to the top-level.
b8a3550f Add SHA CAVP test driver.
61e8d36f fipsoracle: Add MCT test for AES.
0c292edb Add a CAVP tool for ECDSA2 SigVer tests.
7ed2e82e Consistently report an error on ECDSA verification failure.
90801c12 Add a CAVP tool for ECDSA2 PKV tests.
29975899 Unwind DHE support from BoGo.
aaa4045b Add tool to run CAVP tests.
7c125879 Add crypto/fipsoracle.
c1399186 Handle pushing a pointer from the GOT.
c88f2459 Don't print message when waiting for urandom entropy.
def85b40 Revise OPENSSL_ia32cap_P strategy to avoid TEXTRELs.
075875fb Parse instructions more accurately.
91871018 Add an OPENSSL_ia32cap_get() function for C code.
a5237972 Don't test quite so many primes.
a684152a Downgrade BN_kronecker to bn_jacobi and unexport.
0d5bf8d8 Document ERR_error_string_n standalone.
a0cb725b generate_build_files: enforce uniqueness of test names.
fb383f0c delocate: replace "-as src1,src2,..." with "src1 src2 ...".
afd88c27 Allow embedders to replace gtest_main.cc.
d617e01c Fix fuzzer build.
321fcdc4 Convert default version tests in ssl_test.
e11726a9 Properly convert more of ssl_test.
a365138a Factor out the default signature algorithm logic.
01d65c27 Convert spake25519_test to GTest.
7d53128d Convert cmac_test to GTest.
2c152373 Remove test vectors for old ChaCha20-Poly1305 AEAD.
f1313014 delocate: .size BORINGSSL_bcm_text_hash, not OPENSSL_ia32cap_addr.
8da870a9 Fix build on android_aarch64.
02ba1789 Avoid needless C gymnastics.
1997ef22 Tidy up aesni_gcm_crypt logic.
1d134eee Add aes-(128|256)-gcm-fips-testonly mode for FIPS compatibility.
b1ffe0b3 Add primality checking for RSA_check_fips.
7ce349ef Add a compiler test.
8ebc9eaf Update BN_enhanced_miller_rabin_primality_test to enforce preconditions and accept BN_prime_checks.
c86a2300 Allow raw object files to be passed into inject-hash.go.
08c9b844 Don't get confused by comments when recognising symbol definitions.
518ba077 Switch constant-time functions to using |crypto_word_t|.
947417a1 Handle BSS sections.
b0d864ee Be stricter about which sections are allowed in delocate.
c2dce9c1 Have delocate process lines by pulling.
11f11e6f Sort lists of asm files and tests.
7784104d Move much of rand/ into the FIPS module.
f3d3cee4 Avoid messing with dummy functions in delocate.go.
23ebe09e Return int from bn_wexpand, not BIGNUM*.
6c679e1b Tidy up primality code.
fc674c82 Unexport bn_correct_top and bn_wexpand.
778e5ced Make the arguments to FIPS check_test consistent.
3975ecff Add CAVP GCMVS Known Answer tests.
34a8aacb Remove remnants of multiprime RSA parsing.
06481295 Move modes/ into the FIPS module
a54ebffa Fix lower bound in e in FIPS RSA checking.
4b65693c Make runner ignore entropy warnings.
44d40c5e Add NIST CAVP TMOVS Known Answer tests for TDES in CBC and ECB modes.
696b6b50 Fix several issues with prime numbers.
30bcb3bd Save time delocating when not using archive inputs.
1bd689d1 Don't indirect our own BSS accessor functions.
e2a701ea Handle GOTTPOFF relocations in delocate.go
e5be1740 Add DRBG KAT for FIPS.
13a129d3 Add 3DES KAT for FIPS.
777fdd64 Add RSA/ECDSA KAT for FIPS.
378a08aa Add PKCS7_get_raw_certificates.
6fdea2ab Move PKCS#7 functions into their own directory.
de254b4c Enforce max_early_data_size on the server.
5b6151df Add AES and SHA KAT for FIPS.
97104afe generate_build_files: allow tests paths to mismatch test source paths.
fc9f10f8 Implement Enhanced Miller-Rabin primality test for FIPS.
6c7f6bfa Add linux_fips_noasm_asan.
fb83bc32 Fix possible infinite loop in delocate.go.
2c45fa0b Convert bytestring_test to GTest.
76dd1800 Convert base64_test to GTest.
1ddd6e53 Make -loop survive errors.
8c62d9dd Move AES code into the FIPS module.
536036ab Implement base64 in constant-time.
d075706e Allow selecting ECDH curves in bssl tool.
71c21b43 Add SSL_CTX_set_verify_algorithm_prefs.
96bc12a4 Remove includeDHE from runner.go.
783e0957 Recast ECDSA nonce hardening as DRBG additional data.
bc6a76b0 Align BN_rand_range_ex with FIPS 186-4.
90ada2f4 Implement a “continuous RNG test” in FIPS mode.
bc7daec4 In FIPS mode, block at start up until the kernel has sufficient entropy.
92f888e8 Make fork-unsafe buffering act via CTR-DRBG.
88bb8489 Switch to CTR-DRBG
730d69e1 Add CTR-DRBG.
11fa7039 Remove the last remnants of key_exchange_info.
a33e0fc9 Update Miller-Rabin iterations to use FIPS specification.
2c673f15 Emit redirector functions in a fixed order.
61c4e274 Delocate more types of references.
d7bc3353 Detect any reference to OPENSSL_ia32cap_P.
b15143fe Fix check_fips for public keys and synchronize the EC and RSA versions.
400d0b7b Add PWCT for RSA and ECDSA for FIPS 140-2.
89abf7a4 Fix ECDSA signing for FIPS compliance.
a0eb4a81 “Fix” FIPS build under ASAN.
82b2b857 Unwind multiprime RSA support.
fb8b763e Align RSA key generation with FIPS 186-4.
82bad05d Inject FIPS hash without running module.
23aff6b0 Add AESVS KAT vectors (CBC and ECB only).
d403be92 Ensure consumers set up include paths properly.
b7ded430 Constrain RSA bit sizes.
ddd5ba78 Remove redundant check in RSA_sign.
f004aa55 Add a test when hashes are too large for RSASSA-PKCS1-v1_5.
d0b98821 Add RSA_check_fips to support public key validation checks.
31fa5a44 Run unit tests concurrently by default.
7e06de5d Really remove DHE ciphersuites from TLS.
cb3af3e9 Allow specifying certificate and key in separate files.
a5334497 Add support for 3DES-ECB.
4a2cc28b Unwind RSA_generate_multi_prime_key.
43780cbc Tidy up some repetitive code.
20422539 Split AES-CTR-HMAC and AES-GCM-SIV from e_aes.c.
f55e2e72 Add FIPS builders to CQ.
3cfeb952 Disable SSLv3 by default.
c1966801 Add comment about ensuring no other data follows the hash value in PKCS #1
bbba9394 Acknowledge KeyUpdate messages.
d9e5bc10 Infra: Enable extra checks for who is allowed to use Commit Queue.
ebacdeed Add SendServerHelloAsHelloRetryRequest test.
d3bca049 Remove a batch of f_errs.
adc15a79 Empty change to trigger the bots.
ab0e20a9 Enforce minimum EC group size when generating keys for FIPS compliance.
10f6bc7f Fix Android build.
aff72a38 Add the start of standalone iOS build support.
7182d51f Use BN_get_word in probable_prime.
2065481c Fix CRYPTO_once_t initialization test.
d0a40591 Be less clever about .rel.ro avoidance.
7f26bf84 Partially fix FIPS build under clang.
323f1eb7 Include the correct ar.go.
fd49993c First part of the FIPS module.
0ef8c7bd Add missing files to run_android_test.go.
1d2c02bb SHA1_Init cannot fail.
69522117 Support Ed25519 in TLS.
0aef1686 Comment typo fix: 1024 bits is too small, not too large.
d69d94e7 Teach crypto/x509 how to verify an Ed25519 signature.
4e78e309 Add a basic signing tool.
d768c5d7 Support Ed25519 keys in BoGo.
e1d18a7a Vendor a copy of golang.org/x/crypto/ed25519.
417830d9 Support EVP_PKEY_{sign,verify}_message with Ed25519.
05bb1c50 Implement draft-ietf-curdle-pkix-04's serialization.
cc17c248 Stop pretending RSA and ECDSA sigalgs are configurable.
6114c3c5 Clean up signature algorithm logic.
a232a715 Deprecate SSL_PRIVATE_KEY_METHOD type and max_signature_len.
bf833c34 Rename hs->public_key.
76feb1f9 Convert ssl_privkey.c to message-based signing APIs.
7c83fdaf Add message-based EVP_PKEY APIs.
712f3724 Make the bssl client -resume flag less confusing.
3e0b2ce1 Prune some dead constants.
c8ff30cb Add an option to allow unknown ALPN protocols.
0686c09e Fix CRYPTO_dup_ex_data.
b18cb6a5 Make the POWER hardware capability value a global in crypto.c.
42329a82 Clean up PKCS5_PBKDF2_HMAC.
8b487b73 util/generate_build_files.py: Filter test runner sources from BUILD files.
67bb45f4 Support enabling early data on SSL
faa539f8 Remove static output buffers for hash & HMAC functions.
ebcb5beb Sync vendored copies of Go poly1305 and curve25519.
107d4388 Gate assembly sources on !OPENSSL_NO_ASM.
cbfd3c04 Refresh fuzzer corpora.
0c05c37f Update fuzzer exclusions.
519118f9 Fix FUZZING.md typo.
a5f1b38d Use vec_vsx_ld to performance unaligned load instead of dereferencing a pointer and relying on a compiler to generate code for unaligned access.  Both gcc and llvm currently do that but llvm is going to change to generate code for aligned access.  The change in llvm will break SHA-1 on POWER without this fix.
7e9949c3 Import additional test vectors from RFC 8032.
17eeb982 Unwind the rest of EVP_PKEY_supports_digest.
6bb507bc Add missing tests for the Channel ID / 0-RTT interaction.
e94ec3f8 Use a union in tls_cbc.c.
79bc7a32 Remove unsigned-based constant-time functions.
643b77e6 Convert tls_cbc.c to size_t.
053a8f72 Bound EVP_tls_cbc_digest_record at runtime.
8d979e54 Push variable declarations in EVP_tls_cbc_digest_record.
b0ad3d74 Convert more RSA padding check functions to size_t.
43ea204d Convert RSA_padding_check_PKCS1_type_1 to size_t.
d1c0de6f Add size_t variants of constant-time functions.
f368c738 Fix fuzzer excludes.
fef78b03 Use an actual SCT for fuzzing.
a507617e Adding server fuzzer for early data.
764ab980 Support and test P-224 certificates.
a0ba400c Add cipher asserts for read/write app data.
ccbb165d Tidy up ssl3_choose_cipher.
8c26d750 Test the behavior of running SSL_do_handshake twice in a row.
7a60ca09 Synchronize bsaes-armv7.pl with upstream.
0f5d7d3f Just allocate what's needed for SSL write buffers.
95321e15 Fix diff_asm.go.
bbfe6035 Clean up end_of_early_data processing.
fc2d78dd Document server 0-RTT behavior.
681eb6ac Adding support for receiving early data on the server.
32c89271 Add a test for missing end_of_early_data.
81a191dc Convert constant_time_test to GTest.
94cf5d03 Remove some unnecessary NULL checks.
e0004409 Detach pkcs7.c from the OID table.
ca307ab6 tool: show if early data was accepted
065d733c Test ticket age skew when resuming a resumed session.
2a070721 Prevent Channel ID and Custom Extensions on 0-RTT.
246eeee6 Make RI on TLS 1.3 alert with ILLEGAL_PARAMETER.
794cc59e Send half-RTT tickets when negotiating 0-RTT.
02084ea3 Decouple PKCS8_encrypt and PKCS8_decrypt's core from crypto/asn1.
3cb12467 Remove session_tickets_sent.
7ce10d5d Partially split out crypto/pkcs8's legacy ASN.1 dependencies.
4784b99b Use set_{accept,connect}_state + do_handshake in bssl_shim.
7d2dbc37 Add a comment around the set_{min,max}_version logic.
e3843d41 Run all state machine coverage tests on implicit handshake.
f466cdb5 size_t the RSA padding add functions.
bbf42465 Add a test that ALPN is rejected on renegotiation.
8cd7bbf5 Push password encoding back into pkcs12_key_gen.
3cb047e5 Decouple PKCS#12 hash lookup from the OID table.
2d85062c Add Data-less Zero-RTT support.
f35e8384 Fix parsing of PBKDF2 parameters.
7179e53e Remove TODO.
1d4fa785 Decouple PBE lookup from the OID table.
cfb9d147 Update pkcs8 error data.
c90ed190 Tidy up error-handling around computing the hash in PSS.
96e744c1 Decouple PKCS#5 cipher lookup from OID table.
9292632c Add some PSS test vectors with non-zero salt length.
5e2d0c92 Add some more RSA-PSS verification tests.
57e81e66 Name |select_certificate_cb| return values
cedc6f18 Remove DHE ciphersuites from TLS.
d8518422 Reduce crypto/pkcs8 dependency on OID table.
aea20c15 Fix potential memory leak in ASN1_TIME_to_generalizedtime()
5c127789 Convert bio_test to GTest.
2d05568a Fix out-of-memory condition in conf.
fd67f61b Fix bounds check in RSA_verify_PKCS1_PSS_mgf1 when sLen is -2.
5916207d Improve RSA-PSS test coverage around length bounds.
8c646797 Remove BIGNUM and CBIGNUM crypto/asn1 types.
eb302884 Remove crypto/asn1 LONG and ZLONG.
2ddc461a Add additional RSA-PSS and RSA-OAEP tests.
6a53b99f Fix generate-coverage.sh.
076c6a33 Fix a memory leak in X509_STORE_add_cert/crl error handling.
aefc6b27 Fix a crash in print_notice.
b2285411 Convert asn1_test to GTest.

Change-Id: I7c8c631de864cb98006ff0884f39ae639711c78f
Signed-off-by: Piotr Sikora <piotrsikora@google.com>
Reviewed-on: https://nginx-review.googlesource.com/3081
Reviewed-by: Lizan Zhou <zlizan@google.com>
1 file changed
tree: 9f58dfd0e7e3a69de9c13833106c80e08485f3de
  1. auto/
  2. conf/
  3. contrib/
  4. docs/
  5. misc/
  6. src/
  7. .hgtags
  8. BUILD
  9. build.bzl
  10. LICENSE
  11. README.md
  12. WORKSPACE
README.md

About

NGINX + BoringSSL + Brotli.

Building

To build nginx binary with Bazel:

$ bazel build :nginx

To build Debian package:

$ bazel build :nginx-google.deb

Contributing

This repository is currently maintained by Google developers.

Any code changes should be submitted to upstream NGINX.

License

Copyright (C) 2002-2017 Igor Sysoev
Copyright (C) 2011-2017 Nginx, Inc.
Copyright (C) 2015-2017 Google Inc.
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

Disclaimer

This is not an official Google product.