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
|