History log of /external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7aeaaefc891f6221f4b2cce536b1c1e816e09794 07-May-2015 Neil Fuller <nfuller@google.com> Rollup of upstream OkHttp and Okio changes

OkHttp from: b5811711b141b230e4e58f577c79cfbf4c2d4028
to: 3c61fdb2ba9d1ebe0419b93cfbd4e94ffc857fe3

Okio from: b40f99a950cb407eff52537a97420bd253a64f63
to: b76b6903ef05546c5aef249ea6b2b679bc43094b

Both "to" are head as of 20150505.

Patches applied cleanly without conflicts except for
okio/okio/src/test/java/okio/BufferedSourceTest.java
which has local Android changes to account for Android
CTS only supporting Junit 4.10.

There are various changes included most of which will
not affect Android.

OkHttp changes of note for Android:

1) Improvements to TLS negotiation.
Upstream commit 60f5406dcc094d0431420139bd002e8bdd4ea5d5
https://github.com/square/okhttp/pull/1388

2) Fix for CTS tests on Android.
Upstream commit fb155c47661ede5da395dfb4e620867263b8c8e7
https://github.com/square/okhttp/pull/1555

3) Switch to using Okio for form URL encoding
Upstream commit 2a4c1f288d284d3266b5aec4decb167a3af0a976
https://github.com/square/okhttp/pull/1563

4) Fix Vary caching on Android.
Upstream commit b7baf23d86305762ea4e42adc4054c0840eca5ca
https://github.com/square/okhttp/pull/1590

5) Report some TLS issues during negotiation (not all)
Upstream commit 71ead1911be28c1cae1eef765abf23724b776981
https://github.com/square/okhttp/pull/1596

Okio changes of note for Android:

1) Fix for truncated GZIP streams
Upstream commit 3e25d85bc4ad3c6f1622b0438b3976804958fbfb
https://github.com/square/okhttp/issues/1540

Additional android-specific changes:

Suppress a new test that requires JUnit 4.11 and Gson in the
Android.mk file.

Change-Id: I98ed1cc1debf7e03c5895bec38ea5cf9e402b144
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
e78f117bcbd6b57d783737107f445ef75ecb474a 20-Jan-2015 Neil Fuller <nfuller@google.com> Pull latest OkHttp code from upstream

okio:

okio is now managed upstream as a separate project but has
been included here as a sub directory: the okio version here
is intended only for use with OkHttp.
okio is synced to upstream commit
82358df7f09e18aa42348836c614212085bbf045.
See okio/README.android for local changed needed to make it
compile.

okhttp:

This is effectively an upgrade from a snapshot close to
OkHttp 1.5 with Android additions to a snapshot close to
OkHttp 2.2.
okhttp was synced to upstream commit
0a197466608681593cc9be9487965a0b1d5c244c
See README.android for local changes needed to make it
compile.

Most of the old Android changes have been pushed upstream
and other upstream changes have been made to keep OkHttp
working on Android.

TLS fallback changes have not been upstreamed yet:
bcce0a3d26d66d33beb742ae2adddb3b7db5ad08
ede2bf1af0917482da8ccb7b048130592034253d

This means that some CTS tests will start to fail. A later
commit will fix those changes when it has been accepted
upstream.

There are associated changes in libcore and frameworks/base.

Change-Id: I0a68b27b1ec7067be452671bc591edfd84e310f2
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
797fdc6cc6bf16372e9464f189b535148f944ce9 02-Dec-2014 Neil Fuller <nfuller@google.com> Avoid a reverse DNS-lookup for a numeric proxy address

When the proxy is specified as an IP address the RouteSelector
would force a reverse-lookup. This can introduce extra latency
when the DNS is slow or missing. It also then turns the name
back into a set of IPs, which may result in the original IP
address not being given priority.

This is upstream commit:
https://github.com/square/okhttp/commit/9acd5e7b54fb55f62a5dd16865c30787dfba4c8b

Bug: 18327075
Change-Id: Idafd72f4d5b901e267081f924377db4ada9afe1b
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
bcce0a3d26d66d33beb742ae2adddb3b7db5ad08 28-Oct-2014 Neil Fuller <nfuller@google.com> Changes for dealing with more granular TLS connection fallback

This change also enabled OkHttp to handle socket factories that
produce sockets that do not not enable all the protocols that might
be part of the fallback strategy. e.g. to avoid enabling SSLv3 when
SSLv3 is not enabled by default.

If a socket is encountered that does not support, e.g., TLSv1.2 the
negotiation is not attempted or failed; the strategy simply falls
back until it finds a TlsConfiguration that can work. If none will
work an exception is thrown.

The majority of this change is dealing with the fact that it is not
easy to know in advance which TLS/SSL protocol versions are supported
by a socket without having a socket instance. OkHttp currently
assumes that TLS configuration can be predetermined.

RouteSelector no longer deals with TLS fallback. This is now handled
by the Connection instead.

A later CL will modify the fallback strategy to try various TLS
versions (when supported) instead of switching immediately to SSLv3.
This change allows Android to switch with minimal code changes, at
least until we take a newer version of OkHttp where it may be easier.

Bug: 13228108
Change-Id: If76b0b5699c22601f21c9afe494d7089ac2fa55c
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
2695578b41932bb10d4aa5b9ec717c7c9b4b5d1a 17-Jul-2014 Lorenzo Colitti <lorenzo@google.com> Allow callers to pass in a custom host resolver implementation.

An HTTP client interacts with the network in two main ways: DNS
lookups and connections to HTTP servers. OkHttp already abstracts
the latter by allowing callers to pass in custom SocketFactory
objects, but does not yet abstract the former.

This change takes the existing internal Dns interface, which is
currently used for testing, and turns it into a publicly
accessible HostResolver interface. This allows callers to
completely abstract all network interaction points.

Examples of what this can be used for:

1. Use alternative DNS implementations with different
performance / caching / ordering / parallelization / ...
characteristics than standard InetAddress.getAllByName.
2. Resolve hosts using different DNS servers than the system
resolvers, or even non-DNS protocols (e.g., MDNS or even
NetBIOS/WINS) that are not supported by the system resolver.
3. Do DNS lookups on specific networks, similarly to what
android_getaddrinfofornet does.

Backport of upstream change:
https://github.com/square/okhttp/commit/b19860c9297197a5055ac2ffd6edaedf693c1a85

Change-Id: I6e488acd938067e4c078c6ffe4d5eddb5f3951de
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
e5baca5e4c9de92820a38e60e289d07f1acaa2ef 15-Apr-2014 Jake Wharton <jw@squareup.com> Allow specifying a socket factory for connections.

This socket factory will be used for all non-proxy connections and HTTP proxy connections.

This is a clean cherry-pick of:
https://github.com/square/okhttp/commit/ff5390d6dcaf79ef09a3ef94dbb7e8ac39572a7f

That was committed about two weeks after we pulled our current
snapshot, so we would have picked this change up on the next
sync with upstream.

Bug: 11826069
Change-Id: I233c29b79770950b16bc82b36fb47f22369d9bd3
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java
3c938a3f6b61ce5e2dba0d039b03fe73b89fd26c 19-Feb-2014 Neil Fuller <nfuller@google.com> Update okhttp to a more recent commit.

Updating to upstream commit : 7b106923e078ac2435e8c8ce9d615f9903106ed8
/ 7th Mar 2014 / main branch.

The following changes were made to Android-only code:
1) HttpsHandler has been changed to deal with the fix for:
https://github.com/square/okhttp/issues/184 (commit 5d7fdba).
2) Platform.java changed to accomodate changes in okhttp Platform
method signatures.
3) .mk file updates to reflect src directory changes.

The following changes were made to OkHttp code:
1) Removal of org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
annotation from okio/src/main/java/okio/DeflaterSink.java

Change-Id: I644a883482ac7ee7d029785f110a2ca00762419b
/external/okhttp/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java