Improved to the toString and dump output of connections, endpoints and channel to assist with debugging
made the SSL callbacks and runnables Invocable to avoid thread starvation.
Removed wake() call from within pollContent
Instead the EOF status is evaluated :
- when setReadListener is called
- when read returns -1
- when run() is called before calling either onDataAvailable or onAllDataRead
Squashed commit of the following:
commit 6a345356998331a90e60c7ee8ee590920464c72f
Merge: 92bc0e9 60d9001
Author: Greg Wilkins <gregw@webtide.com>
Date: Mon Nov 7 09:46:23 2016 +1100
Merge branch 'jetty-9.4.x' into jetty-9.4.x-issue-1074
commit 92bc0e9f3aafdce2f4aa7b2fde31affc942be042
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Nov 5 18:24:00 2016 +1100
Issue #1074
Do not do async IO callbacks if completed
commit ee220a12d1e6c5f6e39b4597a209c5043aa775cf
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Nov 5 16:22:55 2016 +1100
Issue #1074
Turned off debug
improved proxy test to be able to run with debug on
commit e2fb0b9ef1ec422a2c82cb388820581e359234ba
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Nov 5 15:37:27 2016 +1100
Issue #1074
Improved test cases
Handle early EOF
commit 3c47c022fe7e48f82e41d9a208073b64cfeb5af7
Author: Greg Wilkins <gregw@webtide.com>
Date: Sat Nov 5 12:28:15 2016 +1100
provisional implementation
Reduce the transformations needed on header fields, so they can be more often
set directly and no need to split and recombine.
The Content-Length field is added IF it is needed for framing or if it was explicitly set
The Transfer-Encoding: chunk field is used only as a hint that there is content.
Connection fields are used as is, but are checked for close and keep-alive
Introduced overridable ContinueProtocolHandler.onContinue(), and
making sure that proxy servlets use a ContinueProtocolHandler
subclass to intercept 100 Continue responses from the server, so that
they can relay it properly to the client.
Using https scheme in CONNECT request if the proxy is secure.
A Proxy must not match its own address.
Resolved correctly request URI in case of CONNECT requests.
+ Reworks PathResource and FileResource alias checking to
use originally passed paths, before Windows JVM has a
chance to normalize and "correct" the bad paths.
The issue was related to the fact that the proxy responded 407 with a
Connection: close header.
Because the endPoint underlying the original connection was closed,
it should not have been used as a tunnel.
Rather, the endPoint of the new CONNECT attempt (with the proxy
credentials) must be used for the tunnel.
Also partially backported the fix for #408.