Apply upstream commit: Allow HTAB in header values.

This applies upstream commit
02b08fbde7b1726d7a4c0dc971152751ac82ca0a

Due to deviation between upstream and AOSP, the change was applied
manually.

RFC 7230 section 3.2 allows HTAB ('\t', '\u0009') inside header
values as long as there is not more than one in a row:
  https://tools.ietf.org/html/rfc7230#section-3.2

Before this CL, OkHttp previously disallowed HTAB in header values.
This CL changes behavior to allow any number of consecutive HTABs
inside a header value; this is more permissive than the RFC, but
is consistent with how OkHttp currently treats space characters
(' ', '\u0020').

Bug: 30799514

Test: mvn clean verify
Test: run cts -m CtsLibcoreTestCases
Test: run cts -m CtsLibcoreOkHttpTestCases

Change-Id: I0dd68d1697affaf739167174970d52e466a2bc16
3 files changed
tree: 88f293df5157f7053624ff3fe2c3b38a8c4f0749
  1. .buildscript/
  2. android/
  3. benchmarks/
  4. mockwebserver/
  5. okcurl/
  6. okhttp/
  7. okhttp-android-support/
  8. okhttp-apache/
  9. okhttp-hpacktests/
  10. okhttp-logging-interceptor/
  11. okhttp-testing-support/
  12. okhttp-tests/
  13. okhttp-urlconnection/
  14. okhttp-ws/
  15. okhttp-ws-tests/
  16. okio/
  17. samples/
  18. website/
  19. .gitignore
  20. .gitmodules
  21. .travis.yml
  22. Android.mk
  23. BUG-BOUNTY.md
  24. CHANGELOG.md
  25. checkstyle.xml
  26. CONTRIBUTING.md
  27. deploy_website.sh
  28. jarjar-rules.txt
  29. LICENSE.txt
  30. MODULE_LICENSE_APACHE2
  31. pom.xml
  32. README.android
  33. README.md
README.md

OkHttp

An HTTP & SPDY client for Android and Java applications. For more information see the website and the wiki.

Download

Download the latest JAR or grab via Maven:

<dependency>
  <groupId>com.squareup.okhttp</groupId>
  <artifactId>okhttp</artifactId>
  <version>2.6.0</version>
</dependency>

or Gradle:

compile 'com.squareup.okhttp:okhttp:2.6.0'

Snapshots of the development version are available in Sonatype's snapshots repository.

MockWebServer

A library for testing HTTP, HTTPS, HTTP/2.0, and SPDY clients.

MockWebServer coupling with OkHttp is essential for proper testing of SPDY and HTTP/2.0 so that code can be shared.

Download

Download the latest JAR or grab via Maven:

<dependency>
  <groupId>com.squareup.okhttp</groupId>
  <artifactId>mockwebserver</artifactId>
  <version>2.6.0</version>
  <scope>test</scope>
</dependency>

or Gradle:

testCompile 'com.squareup.okhttp:mockwebserver:2.6.0'

License

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.