Commit Graph

2029 Commits

Author SHA1 Message Date
Simone Bordet b68fbc4cfb Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-12-16 23:36:53 +01:00
Simone Bordet 37388ef105 Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2017-12-16 23:28:05 +01:00
Simone Bordet eaa4c70cfc Issue #2065 - Backport #347 to Jetty 9.2.x.
Implemented as integer guard + timestamp.
The timestamp is not enough to guard against long times spent sending
(and/or in application callbacks during sends).
2017-12-16 22:25:59 +01:00
Simone Bordet ce4fad3deb Fixes #2065 - Backport #347 to Jetty 9.2.x. 2017-12-15 17:48:47 +01:00
Greg Wilkins c6c5a3b890 Merge branch 'issue-2022' of https://github.com/Baqend/jetty.project into jetty-9.4.x-2022-FineGrainedComplianceModes 2017-12-15 16:19:14 +01:00
fb 7ee8bb82c6 Same code style fixes and remove unnecessary code reformatting
Signed-off-by: fb <fb@baqend.com>
2017-12-15 15:23:17 +01:00
fb a324a5ad77 Implement weak http header parsing and make the compliance mode configurable in the client
Signed-off-by: fb <fb@baqend.com>
2017-12-15 15:13:48 +01:00
fb b76240e678 Fixes #2022 - Ignore invalid chars in http header names, when the compliance mode is not RFC7230
Signed-off-by: fb <fb@baqend.com>
2017-12-15 15:12:34 +01:00
Simone Bordet d3db89d7e3 Fixes #2019 - Expose HttpClientTransport in JMX.
Added missing @ManagedObject annotation to AbstractConnectorHttpClientTransport.

Also exported to JMX the "multiplexed" attribute for the FCGI transport
and the "useALPN" attribute for the HTTP/2 transport.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-14 12:28:46 +01:00
Simone Bordet ba5ed4c6ce Issue #2050 - Clarify ObjectMBean getObject[Name|Context]Basis() methods.
Clarified the role of the HttpClient name with respect to JMX.
Improved test case.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-14 11:24:43 +01:00
Simone Bordet f2bf3d63bc Fixes #2020 - Introduce a name for `HttpClient` instances.
Added HttpClientMBean, and overridden getObjectContextBasis() so that
the HttpClient name is inherited by children components such as the
HttpClientTransport, the ThreadPool, etc.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-14 11:24:43 +01:00
Joakim Erdfelt ff53002fac Updating to version 9.4.9-SNAPSHOT 2017-11-21 13:11:31 -07:00
Joakim Erdfelt 82b8fb23f7 Updating to version 9.4.8.v20171121 2017-11-21 12:33:52 -07:00
Greg Wilkins c66bacba02 Issue #922 (#1965) bytesIn/Out stats
Ensure -1 fill is not appended to bytesIn counts
Don't include discarded bytes from head responses in counts
refactored gather writes in HttpConnection to be clearer and removed
redundant buffer checks
2017-11-14 09:12:00 +01:00
Olivier Lamy 786f128808 implements connection.getBytes[In|Out] for http transport #922 (#1965)
* implements connection.getBytes[In|Out] for http transport, #922

Signed-off-by: olivier lamy <olamy@webtide.com>

* use LongAdder rather than AtomicLong

Signed-off-by: olivier lamy <olamy@webtide.com>

* changes by Greg review

Signed-off-by: olivier lamy <olamy@webtide.com>

* changes by Greg review

Signed-off-by: olivier lamy <olamy@webtide.com>
2017-11-14 08:41:47 +01:00
Jesse McConnell a72eb0001d Updating to version 9.3.23-SNAPSHOT 2017-10-30 15:39:57 -05:00
Jesse McConnell 705048cc49 Updating to version 9.3.22.v20171030 2017-10-30 15:16:29 -05:00
Simone Bordet 333c22d670 Issue #1924 - ManagedSelector livelock.
* Actually using the MAX_ACTION_PERIOD value rather than a harcoded one.
* Waking up the selector outside the sync block.
2017-10-30 00:36:01 +01:00
Greg Wilkins ab849e8cc5 Issue #1920 - Connect Timeouts with NonBlocking CreateEndPoint.
Added a LiveLock (BusyBlocking) test.
Modified ManagedSelector to fair share between actions and selecting
2017-10-28 14:55:40 +11:00
Simone Bordet 76e744979b Issue #1893 - Jetty HttpClient Connection TTL.
Removed test for TTL functionality.
Added test for the round robin behavior.
2017-10-25 11:22:46 +02:00
Simone Bordet 6e8242d1a4 Issue #1893 - Jetty HttpClient Connection TTL.
Removed the functionality, not needed anymore.
2017-10-25 11:02:33 +02:00
Simone Bordet ddf074d78f Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-10-23 17:37:23 +02:00
Simone Bordet 4d8ab1828e Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2017-10-23 17:36:39 +02:00
Simone Bordet e449387158 Fixes #1914 - jetty client fails to parse response with RFC2045 conformant Content-Type: charset="utf-8". 2017-10-23 17:36:11 +02:00
Simone Bordet 0d3827d882 Fixes #1893 - Jetty HttpClient Connection TTL.
Implemented live timeout on RoundRobinConnectionPool.
2017-10-19 17:47:35 +02:00
Simone Bordet d2fc88839c Added/fixed @ManagedObject annotation. 2017-10-19 17:47:35 +02:00
Simone Bordet 850e70f27c Fixes #1897 - Introduce a round-robin connection pool for HttpClient. 2017-10-16 18:21:36 +02:00
Simone Bordet 91c11f5a64 Fixes #1888 - Implement cookie matching on Path attribute.
Implemented path matching following RFC 6265.
2017-10-11 17:39:06 +02:00
Simone Bordet a436b9eb6c Fixes #1878 - Handle 100 Continue response without Expect header.
Fixed - again - accept().
2017-10-09 15:59:41 +02:00
Simone Bordet 6fd3351272 Fixes #1878 - Handle 100 Continue response without Expect header.
Fixed accept() to test for the response code being indeed 100.
2017-10-09 13:38:17 +02:00
Simone Bordet c69c7b29c7 Fixes #1878 - Handle 100 Continue response without Expect header. 2017-10-09 12:08:24 +02:00
Simone Bordet a4d7b4c4dc Removed unnecessary code. 2017-10-03 10:19:06 +02:00
Simone Bordet 3b98a6c000 Issue #1851 - Improve insufficient thread warnings/errors.
ThreadBudget -> ThreadPoolBudget.
Added selectors to the leased threads.
2017-10-02 13:40:31 +02:00
Simone Bordet 17a1484143 Code cleanups.
Removed unnecessary imports and fixed typos.
2017-10-02 11:43:45 +02:00
Greg Wilkins 7d98cbb870 Issue #1851 Improve insufficient thread warnings/errors
Squashed commit of the following:

commit 1d9e8e4b4d53898cb6435f67529347bd2ba82cf0
Merge: 7280594 55b0f10
Author: Greg Wilkins <gregw@webtide.com>
Date:   Thu Sep 28 07:20:37 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-1851-ThreadBudget

commit 7280594a0058538b603ad35625713a79830e9b93
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 22:48:58 2017 +1000

    fixed headers

commit f962f18e5b098ae40846ee3832736ee4650aed84
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 18:12:33 2017 +1000

    Issue #1851 added reset

commit a63894de284c8d8dc5ed031f1f6e0fccaf6c7715
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 18:08:53 2017 +1000

    Issue #1851 improved test

commit 8bcc460dc63273165305a7adcb88e991e30de4b7
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 18:03:47 2017 +1000

    Issue #1851 Improve insufficient thread warnings/errors

    Refactor approach to use Leases, to handle multiple executors

commit fe4be5f56594f342ab5c2e6c886397d9b4fe9c14
Merge: abc5eac a248d38
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 15:37:56 2017 +1000

    Merge branch 'jetty-9.4.x' into jetty-9.4.x-1851-ThreadBudget

commit abc5eac2b73d306a91b28ef4db778455095a5bdb
Author: Greg Wilkins <gregw@webtide.com>
Date:   Wed Sep 27 12:20:03 2017 +1000

    Issue #1851 Improve insufficient thread warnings/errors

    Created a ThreadBudget class that can be used to warn/error for
    registered and unregistered allocations of threads.

    The server on doStart does an unregistered check of all its components that
    implement the Allocation interface.

    The client will register itself as an Allocation if a shared Executor is used.
2017-09-28 07:35:05 +10:00
Simone Bordet 6aafc3b792 Fixes #1845 - Allow null User-Agent in HttpClient. 2017-09-25 13:03:26 +02:00
Greg Wilkins a6f02c26a8 Issue #1509 Review GZIPContentDecoder buffer pooling
A temporary fix that uses a hueristic to limit the pool size.

Perhaps such a hueristic should be the default for the queue size of all ByteBufferPools, as infinite queue size is rarely going to be a good thing?

Also, I think all the pools need to have better javadoc, plus an upper/lower bound of the size of buffer that they will pool, as gzip will tend to ask for lots of random sized buffers to put the expanded data into, some could be very
large and unlikely to be reused.
2017-09-21 14:29:58 +10:00
Joakim Erdfelt eee41174f2 Merge branch 'release-9.4.7' into jetty-9.4.x 2017-09-18 14:06:44 -07:00
Joakim Erdfelt d9865a02ba Updating to version 9.4.8-SNAPSHOT 2017-09-14 08:44:27 -07:00
Joakim Erdfelt 80fb788d0c Updating to version 9.4.7.v20170914 2017-09-14 07:35:18 -07:00
Simone Bordet aa4a77794e Issue #212 - HttpClient to support pluggable AuthenticationStore.
AuthenticationStore must be initialized eagerly.
2017-09-14 13:00:52 +02:00
Simone Bordet ce9be291d3 Fixes #212 - HttpClient to support pluggable AuthenticationStore. 2017-09-14 11:29:39 +02:00
Simone Bordet c402f8d5fa Fixed test after #1804. 2017-09-11 17:03:22 +02:00
Simone Bordet b078c910a7 Code cleanup: replaced anonymous inner classes with lambdas. 2017-09-11 17:02:32 +02:00
Simone Bordet 6c44538bb6 Fixes #1750 - PoolingHttpDestination creates ConnectionPool twice.
Now destinations needs to be started in tests, take 2.
2017-08-18 19:36:27 +02:00
Simone Bordet 7390707e07 Fixes #1750 - PoolingHttpDestination creates ConnectionPool twice.
Now destinations needs to be started in tests.
2017-08-17 16:37:13 +02:00
Simone Bordet 3b805123b8 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-08-17 11:47:56 +02:00
Simone Bordet bcf96517bd Fixes #1750 - PoolingHttpDestination creates ConnectionPool twice. 2017-08-17 11:42:56 +02:00
Simone Bordet c395097812 Fixes #1749 - Dump HttpDestination exchange queue.
Improved code.
2017-08-17 11:42:27 +02:00
Simone Bordet 2bfe6fa964 Fixes #1749 - Dump HttpDestination exchange queue. 2017-08-17 11:15:23 +02:00
Joakim Erdfelt 1311052b15 Cleaning up state of branch to match the original jetty-9.4.x
+ Does not include changes to /jetty-cdi/
+ Does not include changes to /jetty-websocket/ for javax.websocket-1.1
2017-08-08 09:47:04 -07:00
Simone Bordet b1b569bd23 475546 - ClosedChannelException when connecting to HTTPS over HTTP proxy with CONNECT.
Not closing the connection if the request method is CONNECT.
2017-08-08 09:15:49 -07:00
Simone Bordet 8cfd971f92 JavaDoc clarification. 2017-08-08 09:15:14 -07:00
Simone Bordet 191b6e044f Fixes #1656 - Improve configurability of ConnectionPools.
Introduced ConnectionPool.Factory and HttpClientTransport.connectionPoolFactory.
This allows applications to create a ConnectionPool given the HttpDestination.
2017-08-08 09:14:19 -07:00
Joakim Erdfelt 3fdbcffbbd Updating to version 9.2.23-SNAPSHOT 2017-08-08 09:12:55 -07:00
Joakim Erdfelt a7bcac6d75 Updating to version 9.3.20.v20170531 2017-08-08 09:07:35 -07:00
Simone Bordet be970de6db 475546 - ClosedChannelException when connecting to HTTPS over HTTP proxy with CONNECT.
Not closing the connection if the request method is CONNECT.
2017-08-02 22:29:28 +02:00
Joakim Erdfelt 11a544d6ac Updating to version 9.3.22-SNAPSHOT 2017-08-01 11:26:37 -07:00
Joakim Erdfelt bb1d69ca52 Updating to version 9.3.21.M0 2017-08-01 10:47:04 -07:00
Joakim Erdfelt 4d2c299fe8 Updating to version 9.2.23-SNAPSHOT 2017-06-06 08:55:12 -07:00
Joakim Erdfelt 0af30bce5a Updating to version 9.2.22.v20170606 2017-06-06 07:03:05 -07:00
Joakim Erdfelt 6a3c40e935 Updating to version 9.4.7-SNAPSHOT 2017-05-31 17:26:34 -07:00
Joakim Erdfelt 8ba0f2d95d Updating to version 9.4.6.v20170531 2017-05-31 16:22:52 -07:00
Joakim Erdfelt 429380d36a Updating to version 9.3.21-SNAPSHOT 2017-05-31 16:10:04 -07:00
Joakim Erdfelt 0f3b1cbe36 Updating to version 9.3.20.v20170531 2017-05-31 15:24:57 -07:00
Simone Bordet 1ac103b6ce Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-05-17 13:16:21 +02:00
Simone Bordet d53af5d737 Fixes #523 - TLS close behaviour breaking session resumption.
Since requests cannot be connection delimited, don't call
sslEngine.closeInbound() on the server.

On the client, added a configuration parameter to allow missing
TLS Close Message, since many servers do that.

Introduced SslConnection.allowMissingCloseMessage so that it
throws in case of truncation attacks.
2017-05-17 13:07:21 +02:00
Joakim Erdfelt cf56168f7d Updating to version 9.3.20-SNAPSHOT 2017-05-02 15:26:56 -07:00
Joakim Erdfelt d36d57d5c7 Updating to version 9.3.19.v20170502 2017-05-02 14:31:51 -07:00
Joakim Erdfelt 782f36f157 Updating to version 9.4.6-SNAPSHOT 2017-05-02 14:29:09 -07:00
Joakim Erdfelt 9d8ad7489c Updating to version 9.4.5.v20170502 2017-05-02 13:22:18 -07:00
Joakim Erdfelt 92ea5bda21 Updating to version 9.4.5-SNAPSHOT 2017-04-14 14:43:36 -07:00
Joakim Erdfelt 3dc8f557c6 Updating to version 9.4.4.v20170414 2017-04-14 13:20:17 -07:00
Joakim Erdfelt 9e2aeda052 Updating to version 9.3.19-SNAPSHOT 2017-04-06 07:47:53 -07:00
Joakim Erdfelt 63273aa40b Updating to version 9.3.18.v20170406 2017-04-06 06:31:02 -07:00
Simone Bordet e7ac447d63 Fixes #1452 - Add tests for [want|need]ClientAuth. 2017-04-05 15:27:57 +02:00
Simone Bordet 7fc3dac5f3 Removed truststore.jks, not needed. 2017-04-05 15:27:57 +02:00
Simone Bordet c285d6f8bb Fixes #612 - Support HTTP Trailer.
Added support on both the server and the client, for HTTP/1 and HTTP/2.
2017-04-03 22:25:50 +02:00
Joakim Erdfelt 1360b863dc Updating to version 9.4.4-SNAPSHOT 2017-03-17 10:53:54 -07:00
Joakim Erdfelt 95e94b49d8 Updating to version 9.4.3.v20170317 2017-03-17 09:54:58 -07:00
Joakim Erdfelt a6a0ab991f Updating to version 9.3.18-SNAPSHOT 2017-03-17 09:48:19 -07:00
Joakim Erdfelt 307d23975e Updating to version 9.3.17.v20170317 2017-03-17 09:07:39 -07:00
Joakim Erdfelt 59c31a40e3 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-03-14 12:07:57 -07:00
Joakim Erdfelt f293f637c8 Issue #1394 - fix default character encoding for surefire testing 2017-03-13 11:10:10 -07:00
Joakim Erdfelt 01d539e2be Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-03-09 14:20:19 -07:00
Joakim Erdfelt d2e35e239a Windows Test Issue
+ Changing from @Test(expect=<exception>) to
  @Rule ExpectedException for ...
  * no exception occuring when one is expected is a test failure
  * wrong exception is a test failure
  * wrong cause is a test failure
2017-03-09 06:51:57 -07:00
Greg Wilkins 0a2da4822d Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-03-06 14:20:23 +11:00
Simone Bordet affeb67f1a Issue #1375 - Support pushed resources in HTTP client.
Implemented in the non-API HttpRequest class.
2017-03-05 19:01:08 +01:00
Joakim Erdfelt 523fab30bd Updating to version 9.4.3-SNAPSHOT 2017-02-20 08:13:31 -07:00
Joakim Erdfelt 4a674b9cc9 Updating to version 9.4.2.v20170220 2017-02-20 06:22:45 -07:00
Carter Kozak 1a2bb90465 Issue #1309 Client GZIPContentDecoder uses client ByteBufferPool
Previously the GZIPContentDecoder would allocate a new buffer for
each gzip encoded response.

Signed-off-by: Carter Kozak <c4kofony@gmail.com>
2017-02-07 09:53:39 -05:00
Simone Bordet 7923032582 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-02-02 00:24:51 +01:00
Greg Wilkins 461c6082ae Issue #1296 - Introduce HTTP parser "content complete" event. 2017-02-01 23:54:36 +01:00
Jesse McConnell e695fc80d6 Updating to version 9.2.22-SNAPSHOT 2017-01-20 12:32:51 -06:00
Jesse McConnell 513b5e5f90 Updating to version 9.2.21.v20170120 2017-01-20 12:32:00 -06:00
Jesse McConnell d0c33ebe8b Updating to version 9.4.2-SNAPSHOT 2017-01-20 10:49:06 -06:00
Jesse McConnell 556ecbcdcf Updating to version 9.4.1.v20170120 2017-01-20 09:47:53 -06:00
Jesse McConnell 66b43ecda8 Updating to version 9.3.17-SNAPSHOT 2017-01-20 09:33:43 -06:00
Jesse McConnell df03355d00 Updating to version 9.3.16.v20170120 2017-01-20 09:06:48 -06:00
Simone Bordet 0c8273f2ca Happy New Year 2017. 2017-01-19 19:26:41 +01:00
Simone Bordet 07838b057f Happy New Year 2017. 2017-01-19 18:54:03 +01:00
Simone Bordet 347c48d657 Revert "resolve merge and update license headers"
This reverts commit 53b31b03dd, reversing
changes made to 4565c186d7.
2017-01-19 18:26:43 +01:00
Jesse McConnell 53b31b03dd resolve merge and update license headers 2017-01-19 09:33:16 -06:00
Jesse McConnell ce3e6dafec update license headers to 2017 2017-01-19 09:30:00 -06:00
Simone Bordet 3883b8cbb5 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-01-16 19:20:24 +01:00
Simone Bordet ddc63066fc Fixes #1259 - HostnameVerificationTest.simpleGetWithHostnameVerificationEnabledTest is broken.
When a fill() triggered by a flush() throws, now the write flusher is
failed rather than completed.
This ensures that both the read and the write side see the same
exception, rather than the write side seeing a ClosedChannelException.
2017-01-16 19:05:09 +01:00
Greg Wilkins 217d7af3d5 Issue #1259 ignoring broken test 2017-01-13 15:25:22 +11:00
Greg Wilkins 20ac50480c Re added the ERROR handling for #1242 2017-01-12 09:06:22 +11:00
Simone Bordet bc86ce4d09 Fixed tests and suppressed expected exceptions. 2017-01-12 09:05:09 +11:00
Greg Wilkins 0f3f051f0e Revert "Fixed tests and suppressed expected exceptions."
This reverts commit 77b1617fdd.
2017-01-12 08:55:35 +11:00
Simone Bordet 77b1617fdd Fixed tests and suppressed expected exceptions. 2017-01-10 15:54:37 +01:00
Simone Bordet d0930e1b9a Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2017-01-10 15:06:45 +01:00
Simone Bordet b8986d5812 Fixes #1228 - Internal error during SSL handshake.
Added a guard to avoid unwrapping during handshake if SSLEngine is
already closed.
2017-01-10 15:05:40 +01:00
Simone Bordet df51ebc029 Fixed test broken by #1172. 2016-12-22 11:14:48 +01:00
Greg Wilkins 68c8db635e ignored bad test 2016-12-22 18:27:15 +11:00
Joakim Erdfelt 7494914ff6 Updating to version 9.3.16-SNAPSHOT 2016-12-20 13:09:32 -07:00
Joakim Erdfelt 680ecd646b Updating to version 9.3.15.v20161220 2016-12-20 12:31:58 -07:00
Simone Bordet 9c68bd44fa Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-12-20 16:17:14 +01:00
Simone Bordet a15f8964c4 Cleanups for #1172. 2016-12-20 16:15:35 +01:00
Konstantin Gribov 9657be1c72 Fixes #1171 - Jetty-client throws NPE for request to IDN hosts only when `HttpClient#send(...)` is called.
Added early check for null host when creating requests in HttpClient.
Added test for incorrect IDN redirect.

Signed-off-by: Konstantin Gribov <grossws@gmail.com>
Reviewed-by: Simone Bordet <simone.bordet@gmail.com>
2016-12-20 16:08:48 +01:00
Joakim Erdfelt 6b3b59df43 Updating to version 9.2.21-SNAPSHOT 2016-12-16 16:23:06 -07:00
Joakim Erdfelt bcbcee7f23 Updating to version 9.2.20.v20161216 2016-12-16 15:47:41 -07:00
Simone Bordet dd3a73e57a Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-12-14 11:19:49 +01:00
Joakim Erdfelt 9b609e0f6d Issue #1161 - Leaving CookieStore alone HttpClient and WebSocketClient are stopped
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2016-12-14 09:00:12 +01:00
Jesse McConnell 6a7e5dd4f5 Updating to version 9.4.1-SNAPSHOT 2016-12-08 09:41:50 -06:00
Jesse McConnell c54efb5929 Updating to version 9.4.0.v20161208 2016-12-08 08:56:45 -06:00
Jesse McConnell f8338b3f59 Updating to version 9.4.1-SNAPSHOT 2016-12-07 10:32:41 -06:00
Jesse McConnell dac1d17a2d Updating to version 9.4.0.v20161207 2016-12-07 09:47:30 -06:00
Joakim Erdfelt 646a411746 Fixing onUpgradeFrom buffer flip issue 2016-12-01 13:07:28 -07:00
Greg Wilkins 2ef23a6725 Issue #572
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.
2016-11-23 16:58:35 +11:00
Simone Bordet 7716ada9dd Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-11-07 19:26:18 +01:00
Simone Bordet f82aa03300 Fixes #1078 - DigestAuthentication should use realm from server, even if unknown in advance. 2016-11-07 19:25:06 +01:00
Jesse McConnell 9a6f68be78 Merge branch 'release-9.3.14' into jetty-9.3.x 2016-11-07 10:45:04 -06:00
Simone Bordet a51f77c390 Fixed compilation failure. 2016-11-04 12:19:48 +01:00
Simone Bordet 9760e0d4cd Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-11-04 12:10:10 +01:00
Simone Bordet 846d560b44 Fixes #905 - Jetty terminates SSL connections too early with Connection: close.
Requests with "Connection: close" are now closed only after the
request/response exchange has been terminated.
2016-11-04 12:09:44 +01:00
Simone Bordet 605aadba59 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-11-04 09:54:36 +01:00
Simone Bordet d18b900b75 Fixes #1069 - Host header should be sent with HTTP/1.0. 2016-11-04 09:53:22 +01:00
Greg Wilkins 5395cfd021 Issue#1066 Simplify HttpGeneration
HTTP requests cannot be close limited
2016-11-04 08:29:49 +11:00
Simone Bordet 3c3be877c6 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-11-03 14:22:23 +01:00
Simone Bordet fba901d156 Issue #1064 - HttpClient sets chunked transfer-encoding.
Fixed test assertion.
2016-11-03 14:21:40 +01:00
Simone Bordet 568d56caee Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-11-03 11:44:59 +01:00
Simone Bordet 7e903cfc6b Fixes #1064 - HttpClient sets chunked transfer-encoding.
Replaced the hint that there is a body by setting the Content-Type
header rather than the Transfer-Encoding header.
2016-11-03 11:40:45 +01:00
Greg Wilkins 6781a949b1 Issue#1066 Simplify HttpGeneration
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
2016-11-03 16:55:33 +11:00
Joakim Erdfelt 2c38511828 Updating to version 9.3.15-SNAPSHOT 2016-10-28 13:01:34 -07:00
Joakim Erdfelt 14611d2f76 Updating to version 9.3.14.v20161028 2016-10-28 12:21:02 -07:00
Joakim Erdfelt ade14ba34b Updating to version 9.3.14-SNAPSHOT 2016-10-14 11:33:51 -07:00
Joakim Erdfelt c3a78e70a8 Updating to version 9.3.13.v20161014 2016-10-14 10:39:37 -07:00
Simone Bordet f2061cbe60 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-10-06 16:33:58 +02:00
Sergiu Prodan 407111a796 Issue #295 Ensure Jetty Client use of Inflater calls .end() to avoid memory leak
Signed-off-by: Sergiu Prodan <p.sergiu92@gmail.com>
2016-10-06 16:12:53 +02:00
Sergiu Prodan f8b2979a8f Issue #295 Ensure Jetty Client use of Deflater calls .end() to avoid memory leak (#986)
* Issue #295 Ensure Jetty Client use of Inflater calls .end() to avoid memory leak

Signed-off-by: Sergiu Prodan <p.sergiu92@gmail.com>
2016-10-06 16:10:37 +02:00
Greg Wilkins 98bb582d45 Jetty 9.4.x http interceptor #382
* Issue #382 Request compression

Added identity HttpInput.Interceptor
Moved GZIPContentDecoder to jetty-http
Reworking interceptor and GZIPContentDecoder to avoid data copies
Completed and tested GZIPContentDecoder
Implemented GzipHttpInputInterceptor
updated GzipHandler.java
updated gzip module
use common GZIP decoder
Gzip Bomb
handle read() after empty interception
2016-10-05 13:49:20 +11:00
Jesse McConnell 863913b64e set for dev 2016-09-30 19:05:47 +00:00
Jesse McConnell b91cc8a4ea set for release 2016-09-30 18:01:20 +00:00
Simone Bordet 04604166bc Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-26 15:04:47 +02:00
Simone Bordet 94137583f8 Added assumption to make test more robust. 2016-09-26 15:04:21 +02:00
Simone Bordet 716c595cdf Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-26 12:20:22 +02:00
Simone Bordet 777ed6ad64 Fixes #277 - Proxy servlet does not handle HTTP status 100 correctly.
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.
2016-09-26 12:05:03 +02:00
Simone Bordet f3751da475 Fixes #955 - Response listeners not invoked when using Connection.send(). 2016-09-23 17:04:11 +02:00
Simone Bordet 9551d0f62b Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-22 21:57:12 +02:00
Andriy Rosa a9ef53b6d0 Fix HttpClient#copyRequest (#937)
Make HttpClient#copyRequest to copy custom headers with the same values.

When original request contains some custom header, say `X-Custom`, than
HttpHeader object within a HttpField will be `null`. In such case
`newRequest.getHeaders().contains(field.getName(), value)` check returns
true when there are 2 and more custom headers with the same value. As a result
not all the custom headers are being copied to the new request.

Signed-off-by: Andriy Rosa <andriyrosa@gmail.com>
2016-09-22 21:27:59 +02:00
Joakim Erdfelt 6cf10172ca Updating to version 9.3.13-SNAPSHOT 2016-09-15 07:34:52 -07:00
Joakim Erdfelt 8b35fdc5a5 Updating to version 9.3.12.v20160915 2016-09-15 06:48:16 -07:00
Simone Bordet 61cd8d5379 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-14 18:13:12 +02:00
Simone Bordet ed14641e87 Made test more robust. 2016-09-14 18:12:34 +02:00
Simone Bordet 5ec60a30ed Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-14 16:44:39 +02:00
Simone Bordet 571b0c74c5 Implemented PromiseWrapper's succeeded() and failed() methods. 2016-09-14 14:01:30 +02:00
Joakim Erdfelt fb7da26ad2 Updating to version 9.2.20-SNAPSHOT 2016-09-08 13:04:11 -07:00
Joakim Erdfelt 7b94bc32f4 Updating to version 9.2.19.v20160908 2016-09-08 12:11:44 -07:00
Simone Bordet 448100ff80 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-06 12:02:01 +02:00
Simone Bordet 6d485b2777 Fixes #902 - Expect: 100-Continue does not work with HTTP/2.
Improved handling of the 100 status code in both client and server.
2016-09-06 12:01:24 +02:00
Greg Wilkins 5ab9846ac5 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-08-31 20:32:54 +10:00
Greg Wilkins f856107301 Merge remote-tracking branch 'origin/jetty-9.2.x' into jetty-9.3.x 2016-08-31 19:05:57 +10:00
Greg Wilkins 0155ae761c Issue #880 Improve IPv6 support
For #880 added the HostPort class, which was used to fix #878, #879, #884 and #886
2016-08-31 16:46:11 +10:00
Simone Bordet a4a97a0257 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-08-17 22:11:44 +02:00
Simone Bordet bef4b56fc0 Fixes #806 - Jetty HttpClient authentication - missing any realm option.
Introduced Authentication.ANY_REALM constant to use when specifying
the realm in concrete subclasses, so that the realm match is skipped.
2016-08-17 22:10:59 +02:00
Simone Bordet c42212d7b0 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-08-12 00:08:12 +02:00
Simone Bordet 7041e5102d Fixes #827 - HTTPClient fails connecting to HTTPS host through an HTTP proxy w/authentication.
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.
2016-08-11 19:25:41 +02:00
Simone Bordet 9b6c9438a7 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-08-10 18:37:24 +02:00
Simone Bordet 2eec2251ee Fixes #827 - HTTPClient fails connecting to HTTPS host through an HTTP proxy w/authentication.
Only successful (200) responses to a CONNECT behave like HEAD and
implicitly have no body.
2016-08-10 18:36:27 +02:00
Joakim Erdfelt 6e1b1cdb36 Updating to version 9.3.12-SNAPSHOT 2016-07-21 19:07:19 -07:00
Joakim Erdfelt 9fd6d4354e Updating to version 9.3.11.v20160721 2016-07-21 18:37:09 -07:00
Joakim Erdfelt 0b18340179 Updating to version 9.2.19-SNAPSHOT 2016-07-21 13:10:23 -07:00
Joakim Erdfelt d3ff3423f0 Updating to version 9.2.18.v20160721 2016-07-21 12:35:26 -07:00
Simone Bordet 823ba4add6 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-21 18:15:38 +02:00
Simone Bordet 6a15bbfb2b Issue #751 - Remove usages of ArrayQueue. 2016-07-21 17:55:48 +02:00
Simone Bordet 6adb5eb031 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-15 18:12:02 +02:00
Simone Bordet a3b5e7ebb7 Added guards against NPE in case HttpField.getValue() returns null. 2016-07-15 15:45:50 +02:00
Jesse McConnell ae931538ab [maven-release-plugin] prepare for next development iteration 2016-06-22 13:59:10 -05:00
Jesse McConnell df1ed4fb03 [maven-release-plugin] prepare release jetty-9.3.11.M0 2016-06-22 13:59:06 -05:00
Jesse McConnell 030ec61837 [maven-release-plugin] prepare for next development iteration 2016-06-22 09:14:25 -05:00
Jesse McConnell 9a4cb41122 [maven-release-plugin] prepare release jetty-9.3.11.M0 2016-06-22 09:14:21 -05:00
Jesse McConnell f2264c96a6 Merge branch 'jetty-9.3.x' into release-9.3.10 2016-06-22 08:40:46 -05:00
Simone Bordet 0d5fb1812e Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-22 11:27:56 +02:00
Simone Bordet 72393bc666 Fixes #659 - CONNECT request fails spuriously.
Fixed by properly returning true from messageComplete() in case of
a 101 response or a 200 CONNECT response.
2016-06-22 11:27:28 +02:00
Simone Bordet a07461f4bd Code cleanups. 2016-06-22 11:27:28 +02:00
Jesse McConnell e7034117ea [maven-release-plugin] prepare for next development iteration 2016-06-21 08:50:13 -05:00
Jesse McConnell 16c435c69d [maven-release-plugin] prepare release jetty-9.3.10.v20160621 2016-06-21 08:50:09 -05:00
Simone Bordet b3fda0b733 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-20 23:11:16 +02:00
Simone Bordet 7ef22c8ebd Fixes #648 - Problem using InputStreamResponseListener to handle HTTP/2 responses.
The fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=484446
reimplemented InputStreamResponseListener using callbacks rather than
blocking waits.

However, HTTP/2 behaves a little differently than HTTP/1.
Where in HTTP/1 until the callback was completed no further calls to
onContent() were made, with HTTP/2 additional calls are made until
the flow control window is exhausted.

For this reason InputStreamResponseListener must queue content chunks
rather than dealing only with one chunk at a time.
2016-06-20 23:10:44 +02:00
Simone Bordet a565b6fa83 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-14 11:09:02 +02:00
Simone Bordet 35077c9803 Increased timeouts to avoid failures on slower machines. 2016-06-14 11:08:38 +02:00
Greg Wilkins 86e5b1cf9b Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-06-08 16:48:50 +10:00
Greg Wilkins d458d41632 more generous unit test timeouts 2016-06-08 16:48:19 +10:00
Simone Bordet 73fe6715de Issue #306 - Merge jetty-parent into jetty-project.
Moved more plugin version declarations into jetty.project's pom.
2016-06-07 10:23:38 +02:00
Simone Bordet 85b3459af5 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-03 18:03:29 +02:00
Simone Bordet c05e265c5b Moved scheme checks to the right place. 2016-06-03 17:57:59 +02:00
Greg Wilkins 98c328fb23 Jetty 9.4.x 572 (#614)
* Issue #572 Scheduling Strategy Deadlocks

Implemented dual strategy idea from #572 discussion

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* fixed http2 strategy choice

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* code cleanups

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* clean up seelctor actions/products

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* cleanups
2016-06-03 09:07:00 +10:00
Greg Wilkins e1b551c2ae Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-06-02 08:04:56 +10:00
Simone Bordet 059fbaa1d6 Removed @Ignore from a passing test. 2016-06-01 11:56:49 +02:00
Simone Bordet 8956245026 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-06-01 10:48:57 +02:00
Greg Wilkins 7d6c05b5c0 Issue #610 Ignore failing test 2016-06-01 17:46:04 +10:00
Simone Bordet b912c700ee Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-25 19:27:46 +02:00
Simone Bordet f3a805887e Fixes #542 - Support Connection.Listener bean on clients.
Introduced ClientConnectionFactory.customize() to look for
Connection.Listener beans.
ClientConnectionFactory implementation calls customize() when they
create a Connection instance, so the Connection.Listener beans are
registered onto the Connection.
2016-05-25 19:27:08 +02:00
Simone Bordet 016a7b72a1 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-24 16:10:00 +02:00
Simone Bordet ddddc3a675 Fixes #574 - Introduce a TLS handshake completed listener.
Introduced class SslHandshakeListener that can be registered as a
bean in both the ServerConnector and in clients such as HttpClient
and HTTP2Client.

When creating SslConnection instances, the factory will query the
connector (client or server) for SslHandshakeListener beans and, if
present, will be added to the SslConnection.
2016-05-24 16:09:19 +02:00
Simone Bordet 5fe1ff697e Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-24 12:42:12 +02:00
Simone Bordet d73c60db14 Issue #464 - Improve reporting of SSLHandshakeException. 2016-05-24 11:15:18 +02:00
Simone Bordet b1ebcf9139 Using lambdas instead of anonymous inner classes. 2016-05-24 11:15:18 +02:00
Jesse McConnell 4bf91b5ab3 Merge remote-tracking branch 'origin/release-9.3.9' into jetty-9.3.x 2016-05-19 09:55:58 -05:00
Simone Bordet a37a0c18c3 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-19 15:49:14 +02:00
Simone Bordet 89531a81be Fixed test. 2016-05-19 15:48:50 +02:00
Jesse McConnell dc4574f380 [maven-release-plugin] prepare for next development iteration 2016-05-17 17:30:17 -05:00
Jesse McConnell 0bbebec1e0 [maven-release-plugin] prepare release jetty-9.3.9.v20160517 2016-05-17 17:30:13 -05:00
Jesse McConnell d5c6793e6a [maven-release-plugin] prepare for next development iteration 2016-05-17 15:33:46 -05:00
Jesse McConnell 0bab7e6616 [maven-release-plugin] prepare release jetty-9.2.17.v20160517 2016-05-17 15:33:42 -05:00
Simone Bordet 922319c3a3 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-12 19:30:50 +02:00
Simone Bordet e25cca33e7 Fixes #571 - AbstractAuthentication.matchesURI() fails to match scheme. 2016-05-12 19:03:52 +02:00
Simone Bordet cd2c2a6b98 Issue #560 - Jetty Client Proxy Authentication does not work with HTTP Proxy tunneling.
Small refactoring.
2016-05-12 19:03:18 +02:00
Simone Bordet 242b6b5f66 Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2016-05-12 18:59:40 +02:00
Simone Bordet f3675dbad7 Fixes #560 - Jetty Client Proxy Authentication does not work with HTTP Proxy tunneling.
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.
2016-05-12 17:19:04 +02:00
Simone Bordet 1056536155 Moved HttpClientLoadTest to "tests" module to test all transports. 2016-05-06 17:10:46 +02:00
Joakim Erdfelt 939505c342 Updating to version 9.2.17-SNAPSHOT 2016-04-14 14:03:21 -07:00
Joakim Erdfelt 778fac638d Updating to version 9.2.16.v20160414 2016-04-14 13:21:34 -07:00
Joakim Erdfelt 47bbd9364d Revert "Updating to version 9.2.16.v20160414"
This reverts commit 29ae63855b.
2016-04-14 13:19:59 -07:00
Joakim Erdfelt 29ae63855b Updating to version 9.2.16.v20160414 2016-04-14 13:17:21 -07:00
Joakim Erdfelt 6fb338e50d Updating to version 9.3.9-SNAPSHOT 2016-04-11 16:20:50 -07:00
Joakim Erdfelt bb4f3c4882 Updating to version 9.3.9.M1 2016-04-11 15:35:22 -07:00
Simone Bordet e2f252f817 Merged branch 'jetty-9.3.x' into 'master'. 2016-04-11 19:39:04 +02:00
Simone Bordet f0a1ccf4d3 Fixes #504 - HTTP/2 client transport cannot send request after idle timeout.
Made sure that the idle timeout mechanism notifies the destination
that the connection will close.

Also reviewed the close protocol to be: notify destination, then abort,
then close. In this way, HTTP/2 can send RST_STREAM before the
connection is closed.
2016-04-11 19:15:17 +02:00
Simone Bordet 11242ae1ec Fixes #503 - Wrong request-per-connection counting in MultiplexHttpDestination in case of failures. 2016-04-11 19:15:17 +02:00
Simone Bordet ac4ee8fec4 Ignoring tests that connect to external sites. 2016-04-11 19:15:17 +02:00
Simone Bordet 5aef3ba3e4 Merged branch 'jetty-9.3.x' into 'master'. 2016-04-04 15:41:04 +02:00
Simone Bordet 5c147288ef Fixes #481 - Event response.success notified without waiting for content callback for HTTP/2 transport.
Fixed by notifying the response.success event only when the callback
is succeeded.
2016-04-04 15:40:25 +02:00
Simone Bordet 1806744bf7 Merged branch 'jetty-9.3.x' into 'master'. 2016-04-01 22:04:44 +02:00
Simone Bordet 3fb06cca21 Issue #476 - HttpClient should not send absolute-form target with non HttpProxy.
Fixed test case.
2016-04-01 22:04:15 +02:00
Simone Bordet 68a465d7a3 Merged branch 'jetty-9.3.x' into 'master'. 2016-04-01 19:50:26 +02:00
Simone Bordet aac9f70243 Fixes #476 - HttpClient should not send absolute-form target with non HttpProxy.
Now only sending absolute-form in case of HttpProxy.
2016-04-01 17:46:22 +02:00
Simone Bordet cdcde53c6b Merged branch 'jetty-9.3.x' into 'master'. 2016-04-01 14:44:50 +02:00
Simone Bordet ce04cadb79 Fixes #233 - Add message to idle TimeoutException. 2016-04-01 14:44:26 +02:00