- avoid IANA and Linux ephemeral port ranges
- support dropping allocated ports
- aggressively try to reclaim ports if we reach exhaustion
- set SO_REUSEADDR on test port binds
These were dropped before the initial release because they depended on
a hostname that was only resolvable inside Google. The newer
unittest.grpc.io domain is publicly accessible.
Allow the tests to be skipped, just in case someone is running an
isolated machine, or a DNS resolver that doesn't permit external domains
to return loopback addresses.
- Had to chnage the core API to add a destroy function pointer in
grpc_auth_metadata_processor.
- Tested end to end.
- Fixed some issues in the server_auth_filter (we were not checking the
length which put us at risk of an overflow).
- Removing service_accounts credentials. These credentials just have
drawbacks compared to service_account_jwt_access credentials, notably
in terms for security.
- Renaming Google specific credentials with a Google prefix for C and
C++. This should be done as well for wrapped languages.
Rephrase API's such that resolvers are constrained to be able to provide a
default host given just the text of the URI channel target.
This avoids needing to rewrite such details in the core library during
retries, and generally makes things much saner to debug.