Daniel Fuchs
4a839e95de
8256459: java/net/httpclient/ManyRequests.java and java/net/httpclient/LineBodyHandlerTest.java fail infrequently with java.net.ConnectException: Connection timed out: no further information
...
Reviewed-by: chegar
2020-12-10 10:09:29 +00:00
Kartik Ohri
ac54900849
8257401: Use switch expressions in jdk.internal.net.http and java.net.http
...
Reviewed-by: chegar, dfuchs, pconcannon
2020-12-04 15:15:56 +00:00
Andrey Turbanov
c6f93ec9f2
8257707: Fix incorrect format string in Http1HeaderParser
...
Reviewed-by: shade
2020-12-04 10:19:30 +00:00
Patrick Concannon
9fe2d31d6e
8252304: Seed an HttpRequest.Builder from an existing HttpRequest
...
Co-authored-by: Chris Hegarty <chegar@openjdk.org>
Reviewed-by: chegar, dfuchs, michaelm
2020-11-19 09:35:49 +00:00
Daniel Fuchs
1c47244b01
8255244: HttpClient: Response headers contain incorrectly encoded Unicode characters
...
Reviewed-by: chegar, michaelm
2020-11-13 15:10:41 +00:00
Sergey Tsypanov
3c4fc79326
8255299: Drop explicit zeroing at instantiation of Atomic* objects
...
Reviewed-by: redestad, serb, prr
2020-10-28 12:11:53 +00:00
Daniel Fuchs
6ed4c89dc8
8254704: Add missing @since tag to BodyPublishers::concat
...
Reviewed-by: chegar
2020-10-13 16:53:40 +00:00
Daniel Fuchs
4184959d85
8252374: Add a new factory method to concatenate a sequence of BodyPublisher instances into a single publisher.
...
Reviewed-by: chegar
2020-10-12 12:52:55 +00:00
Conor Cleary
703b345eee
8253179: Replace LinkedList Impl in net.http.Http2Connection
...
Reviewed-by: dfuchs, prappo, chegar, shade
2020-10-07 06:21:53 +00:00
Daniel Fuchs
80d889189a
8245462: HttpClient send throws InterruptedException when interrupted but does not cancel request
...
Allows an HTTP operation to be cancelled by calling CompletableFuture::cancel(true)
Reviewed-by: michaelm, chegar, alanb
2020-08-28 10:48:17 +01:00
Conor Cleary
3fb8f4364d
8246047: Replace LinkedList impl in net.http.websocket.BuilderImpl
...
Replaced usages of LinkedList with ArrayList in http.websocket.BuilderImpl
Reviewed-by: chegar, dfuchs
2020-08-19 16:27:16 +01:00
Rahul Yadav
b328bc14a0
8251715: Throw UncheckedIOException in place of InternalError when HttpClient fails due to unavailability of underlying resources required by SSLContext
...
This fix updates jdk.internal.net.http.HttpClientImpl to throw an UncheckedIOException instead of InternalError.
Reviewed-by: chegar, dfuchs
2020-08-18 16:44:42 +01:00
Rahul Yadav
8e687450d6
8248006: Revisit exceptions thrown when creating an HttpClient fails due to unavailability of underlying resources
...
This fix updates jdk.internal.net.http.HttpClientImpl to throw an UncheckedIOException instead of InternalError.
Reviewed-by: chegar, dfuchs
2020-08-10 15:15:10 +01:00
Daniel Fuchs
77c46ea911
8229822: ThrowingPushPromises tests sometimes fail due to EOF
...
SocketTube is fixed to cater for errors caused by pausing/resuming events on an asynchronously closed connection, from within the selector's manager thread. Http2Connection and Stream are fixed to prevent sending a DataFrame on a stream after Reset has been sent.
Reviewed-by: chegar
2020-08-07 16:16:45 +01:00
Daniel Fuchs
45c89daf72
8249786: java/net/httpclient/websocket/PendingPingTextClose.java fails very infrequently
...
TransportImpl is modified to make sure the CLOSED state is recorded before the channel is closed. The tests are modified to enable their retry mechanism on windows, similar to what was done previously for macOS.
Reviewed-by: prappo, chegar
2020-08-07 15:09:19 +01:00
Rahul Yadav
c07ce7eec7
8245245: Websocket can lose the URL encoding of URI query parameters
...
The fix updates jdk.internal.net.http.websocket.OpeningHandshake to avoid double encoding and decoding of URL
Reviewed-by: dfuchs, chegar, prappo
2020-06-29 14:49:03 +01:00
Julia Boes
c0a1a4e4fc
8237470: HttpResponse.BodySubscriber::ofFile throws UOE with non-default file systems
...
Rework non-default file system paths of BodySubscriber::ofFile and BodyHandler::ofFile and fix BodyHandler::ofFileDownload to throw consistently for non-default file system paths
Reviewed-by: dfuchs, chegar
2020-05-29 12:59:13 +01:00
Daniel Fuchs
a2c35a6acb
8244205: HTTP/2 tunnel connections through proxy may be reused regardless of which proxy is selected
...
The key used in the HTTP/2 connection pool is updated to take into account the proxy address in case of tunnel connections
Reviewed-by: chegar
2020-05-06 19:19:38 +01:00
Rahul Yadav
ed24927500
8240666: Websocket client’s OpeningHandshake discards the HTTP response body
...
The fix updates jdk.internal.net.http.websocket. OpeningHandshake.send() method to process the response body from server
Reviewed-by: chegar, dfuchs, prappo
2020-05-06 17:33:32 +01:00
Rahul Yadav
184b433630
8242999: HTTP/2 client may not handle CONTINUATION frames correctly
...
Updated jdk.internal.net.http.Stream.incoming(Http2Frame frame) to handle continuation frame with END_HEADER flag
Reviewed-by: chegar, dfuchs
2020-04-28 10:30:27 +01:00
Daniel Fuchs
94a99ab9e5
8243246: HTTP Client sometimes gets java.io.IOException -> Invalid chunk header byte 32
...
The HTTP/1 chunked body parser is updated to discard chunk extensions
Reviewed-by: chegar, alanb
2020-04-24 16:54:30 +01:00
Daniel Fuchs
da1abd18db
8238270: java.net HTTP/2 client does not decrease stream count when receives 204 response
...
The HTTP/2 Stream is updated to register a trivial data subscriber in case of 204 so that the END_STREAM is correctly processed.
Reviewed-by: chegar
2020-04-20 13:15:45 +01:00
Rahul Yadav
86722cb038
8239594: jdk.tls.client.protocols is not respected
...
8239595: ssl context version is not respected
The java.net.HttpClient is updated to no longer override any default selected protocols in the SSLContext, in the absence of any SSLParameters explicitly supplied to the HttpClient.builder.
Reviewed-by: chegar, dfuchs
2020-04-10 10:05:33 +01:00
Julia Boes
d882d528bb
8235459: HttpRequest.BodyPublishers::ofFile assumes the default file system
...
Add support for non-default file systems to HttpRequest.BodyPublishers::ofFile
Reviewed-by: chegar, dfuchs, amlu
2020-03-26 11:52:15 +00:00
Rahul Yadav
c5a7490809
8240921: Minor correction to HttpResponse.BodySubscribers example
...
The fix updates the incorrect example of the usage of the class java.net.http.HttpResponse.BodySubscribers.
Reviewed-by: chegar, dfuchs, jboes, pconcannon
2020-03-20 20:16:34 +00:00
Xue-Lei Andrew Fan
d243e40f7b
8241039: Retire the deprecated SSLSession.getPeerCertificateChain() method
...
Reviewed-by: mullan, alanb, dfuchs
2020-03-20 09:15:00 -07:00
Daniel Fuchs
f40220f578
8238990: java/net/httpclient/HandshakeFailureTest.java failed against TLSv1.3 on Windows
...
The SSLTube and SSLFlowDelegate are improved to wrap any non-SSL exception that occur during the handshake in an SSLHandshakeException.
Reviewed-by: chegar
2020-02-20 20:04:15 +00:00
Daniel Fuchs
9085b7bdc7
8236596: HttpClient leaves HTTP/2 sockets in CLOSE_WAIT, when using proxy tunnel
...
Changes Http2ClientImpl::stop to close the TCP connection after sending out the GOAWAY frame.
Reviewed-by: chegar
2020-01-24 17:57:41 +00:00
Daniel Fuchs
c6da6681d4
8236859: WebSocket over authenticating proxy fails with NPE
...
This change fixes several issues with WebSocket and proxy authentication. The AuthenticationFilter is changed to support an authenticating server accessed through an authenticating proxy. MultiExchange is fixed to close the previous connection if a new connection is necessary to establish the websocket (websocket connections are not cached and must be closed in that case). WebSocket OpeningHandshake is fixed to close the connection (without creating the RawChannel) if the opening handshake doesn't result in 101 upgrade protocol.
Reviewed-by: prappo, chegar
2020-01-17 17:55:06 +00:00
Ivan Gerasimov
cd589d8469
8234147: Avoid looking up standard charsets in core libraries
...
Reviewed-by: alanb
2019-12-01 15:29:37 -08:00
Julia Boes
d948bfd584
8232853: AuthenticationFilter.Cache::remove may throw ConcurrentModificationException
...
Change implementation to use iterator instead of plain LinkedList
Reviewed-by: dfuchs, vtewari
2019-11-08 11:15:16 +00:00
Daniel Fuchs
b3477399d0
8232625: HttpClient redirect policy should be more conservative
...
When enabled, HttpClient redirect is fixed to drop the body when the request method is changed, and to relay any redirection code it does not understand to the caller.
Reviewed-by: chegar
2019-10-23 15:54:39 +01:00
Daniel Fuchs
ecde34ee35
8231449: HttpClient’s client ssl certificate authentication seems to be broken
...
SSLFlowDelegate.Reader and SubscriberWrapper are changed to better cooperate on when more demand should be requested from upstream. The issue encountered in this scenario was triggered by a large certificate which caused the SSLFlowDelegate to stop requesting data from upstream during the handshake although the engine handshake status was NEED_UNWRAP.
Reviewed-by: chegar
2019-10-16 14:50:53 +01:00
Daniel Fuchs
10e4fd4b95
8230526: jdk.internal.net.http.PlainProxyConnection is never reused by HttpClient
...
Fixed the PlainProxyConnection lookup key.
Reviewed-by: chegar
2019-09-09 18:23:39 +01:00
Michael McMahon
e3b6b7f842
8199849: Add support for UTF-8 encoded credentials in HTTP Basic Authentication
...
Reviewed-by: chegar, dfuchs
2019-08-22 14:36:10 +01:00
Patrick Concannon
9f7cbf60e4
8228970: AssertionError in ResponseSubscribers$HttpResponseInputStream
...
HttpResponseInputStream::read(byte[],int,int) now implements the same check than the InputStream::read(byte[],int,int).
Reviewed-by: prappo, chegar, dfuchs
2019-08-08 18:44:11 +01:00
Michael McMahon
faea44aec3
8222968: ByteArrayPublisher is not thread-safe resulting in broken re-use of HttpRequests
...
Reviewed-by: chegar, dfuchs
2019-06-28 11:26:07 +01:00
Pavel Rappo
b870874d22
Merge
2019-06-19 12:17:22 +01:00
Pavel Rappo
d49e648148
8226303: Examine the HttpRequest.BodyPublishers for exception handling
...
Reviewed-by: chegar
2019-06-18 14:12:06 +01:00
Chris Hegarty
af2a46b094
8225583: Examine the HttpResponse.BodySubscribers for null handling
...
Reviewed-by: dfuchs, prappo
2019-06-18 14:52:36 +01:00
Jaikiran Pai
a92f0016f3
8217705: HttpClient - wrong exception type when bad status line is received
...
Throw a ProtocolException if the status code in the HTTP response's status line isn't a 3-digit integer
Reviewed-by: dfuchs
2019-06-14 10:19:04 +05:30
Christoph Langer
fd67f8ee69
8223553: Fix code constructs that do not compile with the Eclipse Java Compiler
...
Reviewed-by: smarks, dfuchs
2019-05-24 07:56:29 +01:00
Daniel Fuchs
853da81cfe
8222527: HttpClient doesn't send HOST header when tunelling HTTP/1.1 through http proxy
...
HttpClient no longer filters out system host header when sending tunelling CONNECT request to proxy
Reviewed-by: michaelm
2019-04-18 17:56:46 +01:00
Daniel Fuchs
47b9d898ab
8221395: HttpClient leaving connections in CLOSE_WAIT state until Java process ends
...
When a non WebSocket connection is not returned to the pool, it needs to be closed even if HttpConnection::isOpen yields false.
Reviewed-by: chegar, michaelm
2019-03-28 12:16:36 +00:00
Xue-Lei Andrew Fan
42cb9bf51a
8160247: Mark deprecated javax.security.cert APIs with forRemoval=true
...
Reviewed-by: weijun
2019-03-13 07:14:50 -07:00
Chris Hegarty
bcdbc436ec
8220480: Typo in java.net.http.HttpResponse.BodySubscriber documentation
...
Reviewed-by: alanb
2019-03-13 12:02:04 +00:00
Chris Hegarty
ac5daa7a22
Merge
2019-02-08 13:07:44 +00:00
Chris Hegarty
bba5ddd08f
Merge
2019-02-08 12:44:16 +00:00
Chris Hegarty
fb05ae21bb
8218662: Allow 204 responses with Content-Length:0
...
Reviewed-by: michaelm
2019-02-08 12:23:16 +00:00
Chris Hegarty
10a281c485
8218546: Unable to connect to https://google.com using java.net.HttpClient
...
Reviewed-by: dfuchs
2019-02-08 11:26:21 +00:00