Commit Graph

15481 Commits

Author SHA1 Message Date
Simone Bordet c35b832251 Fixes #2088 - Recycle HTTP/2 channels on the client.
Recycled channels also for FCGI.
Small improvements to HTTP/2 too.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-05 17:19:06 +01:00
Joakim Erdfelt a617842695 Updating to version 9.2.24.v20180105 2018-01-05 10:11:08 -06:00
Simone Bordet a1a3cb7c80 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2018-01-05 11:12:25 +01:00
Simone Bordet 887b57649b Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2018-01-05 11:11:11 +01:00
Simone Bordet 4606c773b1 Issue #2065 - Backport #347 to Jetty 9.2.x.
Fixed the mistake of resetting idleTimeoutStamp rather than
idleTimeoutGuard.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-05 10:47:39 +01:00
Greg Wilkins f046bdc2c6 Removed RFC from enum names
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-05 10:43:00 +01:00
Simone Bordet 48c77b8608
Fixes #2088 - Recycle HTTP/2 channels on the client. (#2089)
Removed the distinction between pushed and non-pushed channels; only
non-pushed channels are released and recycled if they're not failed.

Properly resetting HttpReceiverOverHTTP2.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-04 07:09:08 -08:00
Greg Wilkins 41050cd8a4
Issue #2081 No idle timeout exception when dispatch is delayed (#2083)
Issue #2081 No idle timeout exception when dispatch is delayed
* Delegate the readtimeout handling to HttpChannel so that a delayed dispatch can be ended.
* Added unit test for delayed dispatch idle
* Now using HttpInput.onIdleTimeout() to fail the HttpInput, and then dispatching the request in case it has not been dispatched yet. This ensure consistent behavior independently of the value of HttpConfiguration.delayDispatchUntilContent.
* Fixed for both HTTP/1.1 and HTTP/2.
* Added tests for non-blocking reads.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-04 13:26:31 +01:00
Greg Wilkins 595c6ac1ee Issue #2090 Java Version JEP223. Use shaded util in start. 2018-01-04 13:13:39 +01:00
Jan Bartel bfe79c0afe Enable debug logging for SessionExpiryTest 2018-01-04 12:40:03 +01:00
Greg Wilkins a107e543e6 Issue #2090 Java Version JEP223 2018-01-04 12:27:15 +01:00
Simone Bordet 1cad36969f Made test more robust.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-03 10:46:02 +01:00
Greg Wilkins 54c55b602f
ManagedSelector dump improvements from #1970 (#2062)
* ManagedSelector dump improvements from #1970

ManagedSelector dump improvements from #1970:
 + DumpKeys is now prepended to actions list so it is less likely to be delayed by a stuck/busy selector
 + Timestamps are included for actions and keys which may be separated by time
 + Race removed race for updating dumpKey list while it is being added to.

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

* moved utility timestamp format method to Log

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

* updates after review

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

* changes after review

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

* Issue #1970 - ManagedSelector dump improvements.

Code cleanups.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Revert "Issue #1970 - ManagedSelector dump improvements."

This reverts commit 4febaf10dc.

* Fixed imports and other review feedback

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-02 11:13:24 +01:00
olivier lamy e07ba49283 more javadoc fixes #2056
Signed-off-by: olivier lamy <olamy@webtide.com>
2017-12-29 11:07:51 +11:00
olivier lamy 942e819a7c more javadoc fixes #2056
Signed-off-by: olivier lamy <olamy@webtide.com>
2017-12-28 18:49:43 +11:00
Simone Bordet e86e8a752c Issue #1973 - Implement minimum response data rate (#2012)
* Code cleanups.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Improved test case handler.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Improved exception message.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Issue #1973 - Implement minimum response data rate.

Implemented response content data rate control in HttpOutput.

Introduced a WriteFlusher.Listener interface that produces events
for every flush(). These events are forwarded to the Connection
and from there to the HttpOutput so that the data rate control can
be enforced.

Both HTTP/1.1 and HTTP/2 are implemented.
Data rate control for HTTP/1.1 is approximate because it will count
also headers bytes and the chunk bytes, while for HTTP/2 is precise.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Issue #1973 - Implement minimum response data rate.

Addressed review comments.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-27 15:07:32 +01:00
olivier lamy 696b60a541 ensure we really use only client test
Signed-off-by: olivier lamy <olamy@webtide.com>

use a randomized map name to store sessions in order to avoid conflicts

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

reduce hazelcast logging noise

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

clarify onlyClient mode

Signed-off-by: olivier lamy <olamy@webtide.com>
2017-12-27 14:49:59 +01:00
Greg Wilkins 22beb1d02a Updated tests to use _LEGACY modes
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-27 14:16:23 +01:00
Greg Wilkins 30e9c84b33 Added RFC7230_LEGACY compliance mode as the default
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-27 13:50:10 +01:00
Greg Wilkins 278b9b01c2 Added javadoc and STRICT compliance modes
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-27 13:24:13 +01:00
Greg Wilkins 7e516e29fb pass existing compliance tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-24 18:00:03 +01:00
Greg Wilkins d8dead35ae Issue #2022 Fine Gramed Compliance Modes
Added HttpComplianceSection and an EnumSet within HttpCompliance

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-24 14:41:18 +01:00
Greg Wilkins c5fc35fa05 Merge branch 'jetty-9.4.x' into jetty-9.4.x-2022-FineGrainedComplianceModes 2017-12-23 11:12:48 +01:00
Simone Bordet 005ae95bea
Fixes #1949 - Client-side problems with digest authentication. (#1991)
Introduced ContentProvider.isReproducible() to detect whether the
request content can be provided more than once, and modified
ContentProvider implementation accordingly.

Modified AuthenticationProtocolHandler to not send an authenticated
request if the content is not reproducible.

Modified AuthenticationProtocolHandler to tolerate request failures.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-21 02:34:39 -08:00
Joakim Erdfelt 18208a13aa
Merge pull request #2071 from H1Gdev/doc
Fix typo in WebSocket doc.
2017-12-20 08:23:17 -06:00
H1Gdev 8f6978dd36 Fix typo in WebSocket doc.
Signed-off-by: H1Gdev <h1g.z.ouroboros+github@gmail.com>
2017-12-20 10:16:37 +09:00
olivier lamy 3a189ab254 #2056 javadoc warning fixes WIP
Signed-off-by: olivier lamy <olamy@webtide.com>
2017-12-20 10:52:45 +11:00
Greg Wilkins 0c021f2599 EWYK cleanups from #1970
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-19 09:51:11 -08:00
WalkerWatch 2c0f695386 Documentation formatting corrections 2017-12-19 12:29:44 -05:00
Simone Bordet 19dbab7971 Fixes #2069 - Update the PushCacheFilter documentation. (#2070)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2017-12-19 10:03:30 -05:00
Joakim Erdfelt 2dd970b055 Updating to version 9.2.24-SNAPSHOT 2017-12-18 10:43:47 -06:00
Joakim Erdfelt cdbe733684 Updating to version 9.2.23.v20171218 2017-12-18 09:06:48 -06:00
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
Greg Wilkins a25d749101 work in progress of fine grained compliance
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-16 18:06:42 +01:00
Greg Wilkins 71b775724f work in progress of fine grained compliance
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-16 17:15:37 +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
WalkerWatch 48a4db637f Issue #2039 - Added link to related documentation 2017-12-14 13:38:02 -05: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
Jan Bartel 18cd1fb8df
Issue #2057 Add conscrypt test in osgi (#2058)
Signed-off-by: Jan Bartel <janb@webtide.com>
2017-12-14 09:48:12 +01:00
Jan Bartel eebe139494
Jetty 9.4.x 2043 concurrentmodification annotation parsing (#2052)
* Issue #2043 Fix ConcurrentModificationException listing duplicate class scanning

Signed-off-by: Jan Bartel <janb@webtide.com>
2017-12-14 09:45:29 +01:00
Greg Wilkins 8660055574
Issue #2010 Support FIPs Key Managers (#2044)
Issue #2010 Support FIPs Key Managers, by only wrapping the default Key Manager if we have wildcard CN's or more than 1 non wild CN.  FIPs users will need to install a
keystore than has no multiple certificates than can only be resolved by SNI. They will also need to have no certificate aliases.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-14 00:15:58 +01:00
WalkerWatch ce819b5430 Issue #2039 - Updated documentation examples. 2017-12-13 11:37:00 -05:00