Commit Graph

2029 Commits

Author SHA1 Message Date
Simone Bordet 8251ed5a12
Fixes #2311 - TimeoutException when server sends unexpected content. (#2324)
Now exiting the parse loop when the response is complete; if there
are bytes remaining in the buffer, then it's cleared out.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-21 16:25:18 +01:00
Joakim Erdfelt c3cc138a3b Updating to version 9.4.10-SNAPSHOT 2018-03-20 08:25:59 -05:00
Joakim Erdfelt 1f8159b1e4 Updating to version 9.4.9.v20180320 2018-03-20 07:18:24 -05:00
WalkerWatch 534b8ea38b Add edit warning for .mod files. Resolves #173 2018-03-15 13:23:42 -04:00
Joakim Erdfelt 484280bac6 Issue #2218 - Windows Selector Bug
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-03-14 17:42:50 -05:00
Simone Bordet 8b391a88dd Fixes #2318 - HttpParser.Listener.onBadMessage() should take BadMessageException.
Changed the signature of HttpParser.Listener.onBadMessage()
to take a BadMessageException and updated dependent code.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-12 19:51:57 +01:00
Greg Wilkins cf0b6140fe
Merge pull request #2299 from olamy/feature/available_processors
#2298 Override the processor number with an environment variable
2018-03-08 08:36:52 +11:00
olivier lamy 7004aaa538 #2298 Override the processor number with an environment variable
Signed-off-by: olivier lamy <olamy@webtide.com>
2018-03-07 21:02:26 +10:00
Simone Bordet b71cd70bf7 Fixes #2297 - HTTP/2 client transport should honor HttpClient.connectBlocking.
Introduced property connectBlocking in HTTP2Client so that it can
be forwarded by HttpClient and then used for HTTP/2 connects.

Also introduced HTTP2Client.bindAddress, again forwarded from HttpClient.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-07 11:52:28 +01:00
Greg Wilkins 74055b9837
Jetty 9.4.x 2293 pending multiplexed (#2294)
Issue #2293 Pending Multiplexed Connections

Added a AtomicBiInteger to allow both total connections and pending connections to be encoded in the
same atomic int.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-07 19:31:22 +11:00
Greg Wilkins bcb9fa3b32
Merge pull request #2257 from lachlan-roberts/jetty-9.4.x-2206-ReferenceEquality
Resolved errorprone ReferenceEquality warnings #2206
2018-03-07 11:11:40 +11:00
Simone Bordet 8fcfdd9d7f Fixes #2273 - Test failure: RoundRobinConnectionPoolTest.testRoundRobin.
Now making sure all connections are opened before testing
the round robin behavior.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-03-06 10:00:15 +01:00
Greg Wilkins a272fb6e39
Improve executorSizedThreadPool (#2253)
Improve executorSizedThreadPool (#2253)

* Improve executorSizedThreadPool

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

* Improved implementation.

Implemented name, thread priorities, thread group and daemon properties.
Implemented toString(), dump() and using a thread factory.

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

* added threadpool benchmark;

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

* Renamed ExecutorSizedThreadPool to ExecutorThreadPool

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-06 19:07:41 +11:00
Lachlan Roberts 31347db71b changes after second review from gregw
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-06 17:21:15 +11:00
Lachlan Roberts 020ebde77c found additional ReferenceEquality warnings which have been resolved
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-06 14:28:11 +11:00
Lachlan Roberts a639ee9275 Resolved errorprone MissingOverride warnings #2206
`@Override` was added to methods which were missing the annotation #2206

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-01 13:59:25 +11:00
Joakim Erdfelt a05b157c03 Updating to version 9.3.24-SNAPSHOT 2018-02-28 16:39:30 -06:00
Joakim Erdfelt 0554f8d8b4 Updating to version 9.3.23.v20180228 2018-02-28 15:45:57 -06:00
Simone Bordet cd7432da95 Issue #2238 - RoundRobinConnectionPoolTest.testRoundRobin test failure
Improved logging in case of test failures.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-02-27 18:49:23 +01:00
Joakim Erdfelt be64f322ad Issue #2217 adding parameter naming to help identify test run 2018-02-26 14:01:26 -06:00
Jesse McConnell cb67476de0
Resolves #2241 clean up javadoc warnings 2018-02-23 14:18:52 -06:00
Jesse McConnell d179bcf7ac
Resolves #2241 clean up javadoc warnings 2018-02-23 14:09:33 -06:00
Greg Wilkins b94d26a720 less fragile tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-02-20 10:19:32 +11:00
Alex Bleasdale 8a17563e6b Fixes #2160 - Digest authentication should use absolute path
Modified uri value in Authorized header as per discussion in #2160.

Signed-off-by: Alex Bleasdale <ableasdale@marklogic.com>
Reviewed-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-29 10:04:44 +01:00
Greg Wilkins c606d5f103 Issue #2126 removed sleep from test
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-16 17:56:03 +01:00
Jan Bartel 709da5efc6 Issue #2126 2018-01-16 17:47:07 +01:00
Greg Wilkins f4e37b1adb
Issue #2014 - Unix Socket Client (#2025)
There are still problems with this impl (some client tests ignored) and there is still a work around for the JNR bug 50, however this impl is already much better than the unix socket support that is already in the release.  So will merge for now and put more effort in once there is a JNR fix.

* WIP add unix domain sockets support in HttpClient
* move unix socket client part to unix socket module #2014
* some cleanup #2014
* add missing headers #2014
* add TODO
* UnixSocket client refactor
* cleanup test and pom
* minor changes, use LOG.isDebugEnabled() before using debug method
* add UNIX SOCKET http client test with all other tests, push this to see what happen on Jenkins
* fix some unit tests
* fix more tests
* fix load test
* UnixSocket client
* Demonstrate JNR bug
* Worked around JNR bug 50
* close channel on client side as well
* more details in log
* log file path as well
* #2014 disable test per default as doesn't work on some environement
* Revert "#2014 disable test per default as doesn't work on some environement"
* test only on unix
* Allow test of specific transport(s)
* Move unix socket to /tmp
* move test socket to /tmp
* move test socket to /tmp
* ignore failing tests for now
* fix bean name and possible to use sys prop org.eclipse.jetty.http.client.AbstractTest.Transports with mvn cli
* test isBlank as surefire props is not null
* correctly create tmp file with @Before
* do not delete file
* use /tmp as build directory doesn't seem to work within docker...
* do not delete sock file on client as it is own by the server
* file must not exist when binding unix socket
* #2014 fix license header
* network specific tests assumed
* Fixed to handle null selector keys
* add assume for tests that assume a network connector

Signed-off-by: olivier lamy <olamy@webtide.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-13 11:59:47 +01:00
Simone Bordet 0b3a276a9b
Fixes #2117 - Allow to configure HttpClient default request Content-Type (#2118)
* Fixes #2117 - Allow to configure HttpClient default request Content-Type.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-13 10:31:13 +01:00
Greg Wilkins 8b7480f088 Merge branch 'jetty-9.4.x' into jetty-9.4.x-2022-FineGrainedComplianceModes 2018-01-10 22:25:49 +01:00
Simone Bordet 6cefd1c7dd Issue #1918 - Scalable scheduler implementation.
Fixed destroy of HttpChannel for HTTP/1.1: not at release()
because the connection and therefore the channel will be reused,
but at close(), when we're sure the connection will not be reused.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-10 19:42:28 +01:00
Greg Wilkins 7138dc3828
Jetty 9.4.x #1918 scalable scheduler3 (#2101)
* Scalable scheduler changes for #1918
* Added HttpChannel.destroy to destroy CyclicTimer
* fixed rebase with HttpConnectionOverFCGI
* renamed to acquire
* Destroying the HttpChannel consistently in all transports.
* updated headers
* cleanup after final review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-01-10 16:56:41 +01:00
Greg Wilkins 356bf2e06f
Issue #2046 - Graceful stop of connections (#2100)
* Clean up of actions (now updates) prior to #2046 fix
* prevent exceptions from termincating lifecycle doStop or destroy
* Refactored ManagedSelector stop to always close endpoints
* Fixed NPE if SelectorManager is already stopped
* refactored after review
* further simplifications after review
* Wait only for oshut endpoints
* Cleanup from review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-09 20:36:41 +01:00
Joakim Erdfelt 21365234f8 Issue #2108 - Updating license headers for year 2018 2018-01-09 09:44:41 -06:00
Joakim Erdfelt 41ed9f29f4 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2018-01-09 09:37:25 -06:00
Joakim Erdfelt fa4c7b0ca9 Issue #2108 - Updating license headers for year 2018 2018-01-09 08:39:37 -06:00
Joakim Erdfelt 067fc5d2d8 Issue #2108 - Upgrade licenses for 2018 2018-01-09 07:42:06 -06:00
Greg Wilkins 54f49dec7d Merge branch 'jetty-9.4.x' into jetty-9.4.x-2022-FineGrainedComplianceModes 2018-01-09 13:32:19 +01:00
Greg Wilkins 88cf4603c5
Merge branch 'jetty-9.4.x' into bugfix/javadoc_fixes_2056 2018-01-08 21:31:48 +01:00
Greg Wilkins a81c1f3880 fixes after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-01-08 16:09:22 +01:00
olivier lamy 1a49a6fb7e more javadoc fixes #2056
Signed-off-by: olivier lamy <olamy@webtide.com>
2018-01-08 12:28:12 +11: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
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 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 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 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
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