Commit Graph

2984 Commits

Author SHA1 Message Date
Joakim Erdfelt 8b35fdc5a5 Updating to version 9.3.12.v20160915 2016-09-15 06:48:16 -07:00
Simone Bordet cb89ea8466 Fixes #131 - Improve Connector Statistic names and values.
Removed references to deprecated ConnectorStatistic in favor of
ConnectionStatistics.
2016-09-14 17:24:45 +02:00
Simone Bordet 2111775cb4 Fixes #131 - Improve Connector Statistic names and values. 2016-09-14 14:01:30 +02:00
Greg Wilkins 68340a94d0 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 10:12:08 +10:00
Greg Wilkins ab579d542b Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 10:12:08 +10:00
Greg Wilkins 4312995d89 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 09:19:01 +10:00
Greg Wilkins 1247380976 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 09:09:51 +10:00
Greg Wilkins f7d017ca1a Issue #911 encode requestURI in startAsync(req,res) 2016-09-08 15:00:54 +10:00
Jan Bartel 09da3248e5 Issue #909 2016-09-08 14:24:29 +10:00
Greg Wilkins 28ca70378e Issue #844 Thread Limit Handler (#857)
* Issue #844 DoS Handler

First cut at implementation of Thread limiting handler for #844

* Added modules, simplified API, added IP exemptions

* fixed xml

* fixed preallocation

* simplified code
2016-09-08 08:49:03 +10:00
Simone Bordet 9d72e0d94e Improved JMX attributes. 2016-09-05 23:28:15 +02:00
Simone Bordet 08bf15634a Updated copy constructor. 2016-09-05 23:14:26 +02:00
Simone Bordet 89b20b4692 Merged branch 'jetty-9.3.x-845'. 2016-09-05 21:36:04 +02:00
Simone Bordet 705a68dfc4 Issue #845 - Improve blocking IO for data rate limiting.
Moved tests to run HTTP and HTTP/2 tests, and added more test cases.
2016-09-05 19:13:05 +02:00
Greg Wilkins 1f7c5a5b20 Issue #898
Added addCSV method to HttpFields to more efficiently add values to a CSV field without duplicates.
Improved usage of QuotedCSV and removed older parsing

Used new method in GazipHttpOutPutInterceptor to avoid duplicate Vary fields
2016-09-02 14:57:13 +10:00
Greg Wilkins 0c6c11d79d Issue #897
If a request is not handled within the scope of the GzipHandler, the gzip interceptor is removed so it cannot be used by any subsequent handlers.
If the request is handled, it is left in place to be used by any async handling.
2016-09-02 12:14:23 +10:00
Greg Wilkins a799b21eb3 fixed merge 2016-09-01 16:41:49 +10:00
Greg Wilkins c2621bcad6 Merge remote-tracking branch 'origin/jetty-9.2.x' into jetty-9.3.x 2016-09-01 16:29:00 +10:00
Greg Wilkins f7c32c5fc7 Issue #882 IPv6 map
The new IPv6 capable InetAddressSet has been added as an alternative for IPAddressMap
The IncludeExclude class has been generalized to IncludeExcludeSet that can have a different
Predicate type to the set type and this works well with InetAddressSet.

However for #881 and #883, this may not be enough and Map semantics may need to be added.

The IPAccessHandler also has path mappings supported, which could need the map semantics, so for now a new InetAccessHandler has been
added that just uses an IncludeExcludeSet<InetAddressSet>, but this has yet to be tested.

The AbstractProxyServlet uses a host:port combinations, so IncludeExcludeSet<InetAddressSet> is not directly applicable.
2016-09-01 16:12:35 +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 0322a1640d Code cleanup. 2016-08-26 12:49:31 +02:00
Simone Bordet 2389b65578 Code cleanup. 2016-08-26 10:45:04 +02:00
Joakim Erdfelt 4c5d0319b1 Minor code cleanup
+ Changed variable from rfc7230 to rfc7239
+ Javadoc updates
2016-08-25 11:40:51 -07:00
Greg Wilkins 5528dc60f5 Issue #845 data rate limits
Converted to long minimum data rather than the numerically sensitive data rate.
2016-08-17 17:24:57 +10:00
Greg Wilkins 19a20a486d ssue #845 data rate limits
double
2016-08-17 07:11:36 +10:00
Greg Wilkins a60fe5e523 Issue #845 data rate limits
use nanotime
2016-08-16 23:15:30 +10:00
Greg Wilkins d4ebdd6875 Issue #845 data rate limits
added @sbordets feedback
2016-08-16 21:47:49 +10:00
Greg Wilkins 83f503b86f Issue #845 data rate limits
test for variable idle time
2016-08-16 17:40:18 +10:00
Greg Wilkins 34f22dcbce Issue #845 data rate limits
Added data rate unit tests
2016-08-16 17:09:46 +10:00
Greg Wilkins 3d93d39b39 Issue #845 data rate limits
Initial thoughts
2016-08-16 16:24:14 +10:00
Greg Wilkins 94c1424029 Issue #841 support reset in buffering interceptors
Added resetBuffers to the output interceptor.
2016-08-15 19:38:18 +10:00
Simone Bordet 9f9e9ecaf9 Changes for Issue #824 (#825)
* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Introduced new method HttpChannelState.asyncError() to be called in
case of asynchronous errors, i.e. those errors that do not happen in
the HttpChannel.handle() loop.

Implemented HTTP/2 callbacks to call HttpChannelState.asyncError()
and plug in the existing error handling mechanism.

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

* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Improved implementation to ignore idle timeouts for streams and
session in case that requests are being handled, matching the HTTP/1.1
behavior.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2016-08-12 11:02:52 +02:00
Greg Wilkins 5fefd5d8bd Issue #185 Implement RFC 7239
Improved test harness
Added more configurability
Fixed SSL session and certificate bugs
2016-08-12 11:39:36 +10:00
Greg Wilkins 5c9a637d4f UnitTest #833 2016-08-12 10:29:38 +10:00
Greg Wilkins b45af1a3c9 Issue #185 Implement RFC 7239
Also handle legacy Https headers for #834
2016-08-11 18:56:51 +10:00
Greg Wilkins f493e0f528 remove println 2016-08-10 16:26:43 +10:00
Greg Wilkins cc8c3590c0 Issue #786 Buffering Response Handler
Fixed commit of empty buffers
2016-08-10 16:01:56 +10:00
Andriy Rosa 1d968ef53a HttpOtput: fix async write for heap ByteBuffer (#811)
* Remove unused imports

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* Improve HttpOtputTest

HttpOutputTest gives false positive results for couple of tests
(testAsyncWriteBufferLargeHEAD, testAsyncWriteBufferLarge). This happens
because only the tail of the response is being checked, and that fact that
the beginning of the response in not being sent is ignored.

For regular encoding responses it is easy to check that the entire content is
received by checking it with `response.endWith(expectedContent)`. However
for chunked responses extra parsing is required to check the content in such way.
For the sake of code simplicity only start and end of the response is being checked
for the chunked encoded responses.

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* Add testAsyncWriteBufferLargeDirect test to HttpOutputTest

Just to verify that everything is right when sending native buffers
asynchronously instead of heap ones.

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* HttpOtput: fix async write for heap ByteBuffer

Fix bug when asynchronous writes of Heap ByteBuffer were ignored.

ByteBuffer position was moved to the end in the constructor,
then in the `process` method `if (_buffer.hasRemaining())` condition
was always evaluated to `false` and the actual write was not performed.

Add assertion in `HttpOutputTest` to verify that after the asynchronous
write position of the buffer is always at the end.

Signed-off-by: arhimondr <andriyrosa@gmail.com>
2016-08-05 08:51:10 +10:00
Greg Wilkins d57a11668d Issue #798 Sporadic async IO failure 2016-08-03 17:22:31 +10:00
Greg Wilkins 83483e1f69 Response.reset does not clear session cookie #789
Added unit test
2016-08-02 13:49:05 +10:00
Greg Wilkins e0a1a1988f Response.reset does not clear session cookie #789 2016-07-29 16:45:09 +10:00
Greg Wilkins ad93923e1d Merge branch 'jetty-9.3.x' of github.com:eclipse/jetty.project into jetty-9.3.x 2016-07-29 16:43:04 +10:00
Greg Wilkins 23cb28e856 improved debug logging of request/response 2016-07-29 12:34:12 +10:00
Joakim Erdfelt 2830e51e04 Merge branch 'jetty-9.3.x' into release-9.3.11 2016-07-28 12:20:36 -07:00
Greg Wilkins ffb52a948b Buffering Response Handler #786 2016-07-28 15:05:44 +10:00
Greg Wilkins 32e2ee8cb9 start property for stopTimeout #774 2016-07-27 14:12:46 +10:00
Niels Basjes 117cbc2bd1 Fix NCSA request log in case of missing useragent. (#770)
Signed-off-by: Niels Basjes <niels@basjes.nl>
2016-07-27 10:32:31 +10:00
Greg Wilkins e53ea55f48 Issue #752 SETTINGS_MAX_HEADER_LIST_SIZE
Defined missing status codes (removed old/wrong javadoc)
Changed use of 413 to 431
Received SETTINGS_MAX_HEADER_LIST_SIZE is set on hpack encoded and warning generated only for large responses.
2016-07-23 12:17:50 +10:00
Jan Bartel 92e91e8695 Revert "Issue #759"
This reverts commit 7b6bf03133.
2016-07-22 16:10:37 +10:00