that it should be with multiple threads waiting on a single
completion queue.
The client currently uses a separate completion
queue per-thread, as trying to do a single unified queue was leading
to crashes for me. I need to figure that out.
The test currently allocates a single port and reuses it through the
test. Given the timeouts in this test this leaves substantial race
windows where other processes on the same machine could steal the port
between subcases.
Instead, as a simple hack, allocate a new port before each test.
This string comes from an authority field, which is allowed to contain a
':' port (see https://tools.ietf.org/html/rfc3986#section-3.2).
We need to strip it before performing host name verification.
- The SANs take precedence over the CN.
- The CN is only checked if there are no SANs.
- Fixing the tests as the test cert did not list *.test.google.com in
the SANs. Will fix the test cert another time...
- Renaming default credentials -> google default credentials.
- Various other things in cpp:
- Adding Cpp wrapping for JWT Tokens.
- Renaming ComposeCredentials -> CompositeCredentials.
- Tested with new tool (print_default_creds_token) on:
- workstation for env var and well known place.
- GCE for compute engine default creds.
- I'd prefer the grpc_default_credentials_create() API to remain
synchronous even though there may be an async call for gce detection
on which we block.
We have many assumptions about languages baked into the test system, and we want this test harness to trigger when testing C++ stuff, so it needs to be written in C++.