* Refactor end2end tests to exercise each EventEngine
* fix incorrect bazel_only exclusions
* Automated change: Fix sanity tests
* microbenchmark fix
* sanitize, fix iOS flub
* Automated change: Fix sanity tests
* iOS fix
* reviewer feedback
* first pass at excluding EventEngine test expansion
Also caught a few cases where we should not test pollers, but should
test all engines. And two cases where we likely shouldn't be testing
either product.
* end2end fuzzers to be fuzzed differently via EventEngine.
* sanitize
* reviewer feedback
* remove misleading comment
* reviewer feedback: comments
* EE test_init needs to play with our build system
* fix golden file test runner
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
Motivation: In debug builds, `DebugOnlyTraceFlag`s are hard-coded to be
disabled. This results in unreachable code paths that the compiler can
detect, which prevent us from enabling `-Wunreachable-code-aggressive`
on the builds.
This work aims to reduce the number of places that switch on
`trace_flag.enabled`.
It is not possible for such a function to be implemented in a way that
is understood by annotalysis. Mark it deprecated and replace instances
of its use with direct mutex/condvar usage.
Add a bunch of missing thread safety annotations while I'm here.
* Add Python mTLS greeter example (#40)
* Revert "Add Python mTLS greeter example (#40)"
This reverts commit 383c247775.
* Postpone EVP_cleanup until after last server_ssl_test run completes.
* Fix readahead_hs_server_ssl
* Clang fixes and client side initialization fix.
* Comment out EVP_cleanup on client side.
* remove TLS 1.3 ciphers'
* change to using server0 credentials
* log what TLS method is used'
* check compatibility of private key and cert
* Try allowing server to use all ciphers.
* Add logging for test server.
* Fix private key check logging.
* add include for tracing
* define tsi_tracing_enabled flag
* rename tsi_tracing_enabled flag
* try printing bytes to send to peer
* Add automatic curve selection
* Remove logging from SSL transport security
* Add back TLS 1.3 ciphersuites.
Co-authored-by: Ryan Kim <Ryanfsdf@users.noreply.github.com>
As a client of grpc I want to be aware of which threads are being
created by grpc, and giving them recognizable names makes it significantly
easier to diagnose what is going on in my programs.
This provides thread names for macOS and Linux. Adding support for other
platforms should be easy for platform specialists.
This patch introduces an additional ALPN protocol, grpc-exp, intended to
take preference to h2 and indicate to the server that the connection
contains only gRPC traffic. This allows servers and intermediate boxes
to distinguish gRPC from other HTTP/2 traffic.
The choice of grpc-exp as a protocol identifier indicates that this
scheme is currently experimental and should not be relied upon. The
protocol is not in the IANA TLS registry.
This patch also introduces client/server handshake tests that validate
the preferential treatment of grpc-exp in an end-to-end manner.