Commit Graph

18043 Commits

Author SHA1 Message Date
Lachlan Roberts c40ba69222 add null checks in SslContextFactory for _factory, which could be null if reload failed
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-15 15:35:22 +10:00
Lachlan Roberts 2541f1f648 add javadoc for KeyStoreScanner class
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-15 11:20:57 +10:00
Lachlan Roberts a83844df32 changes from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-14 16:10:07 +10:00
Lachlan Roberts b03643961d add tests in KeystoreScannerTest for changes with symlinks
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-14 00:22:21 +10:00
Lachlan Roberts 62ee077b79 move code of ssl-reload module to jetty-util, move module files to jetty-server
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-13 23:11:09 +10:00
Lachlan Roberts 0705d8ea77 generalize the exception type tested in KeystoreReloadTest
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-13 13:35:47 +10:00
Lachlan Roberts dc91f690be use WorkDirExtension in KeystoreReloadTest to fix failing tests on jenkins
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-13 11:33:51 +10:00
Lachlan Roberts 80f09e1f71 fix issues with the ssl-reload module
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-10 18:44:44 +10:00
Lachlan Roberts f34873419e Issue #5019 - add jetty module files and xml to use ssl-reload with start.jar
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-10 18:44:35 +10:00
Lachlan Roberts 13e034fc5f Issue #5019 - add testing for the SslKeyStoreScanner
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-10 18:44:24 +10:00
Lachlan Roberts 24d0e50a0c Issue #5019 - add class to do SSL keystore hot-reload in new module
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-10 18:44:08 +10:00
Simone Bordet 94956d6e8b Issue #4904 - WebsocketClient creates more connections than needed.
Fixed MaxConcurrentStreamsTest - it was always broken.
The problem was that the call to super.onSettings(...) was done
_after_ sending the request, so the connection pool was still
configured with the default maxMultiplex=1024.

Also fixed AbstractConnectionPool to avoid a second call to
activate() if we are not trying to create a new connection.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-07-09 16:18:15 +02:00
Simone Bordet 6844c9362d Issue #4904 - WebsocketClient creates more connections than needed.
Fixed MultiplexConnectionPool.acquire() to use the new boolean
parameter to decide whether or not create a new connection.

This fixes ConnectionPoolTest instability.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-07-09 13:27:44 +02:00
olivier lamy 7bcbc21ca9 no need of system property for this
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-07-09 07:52:47 +10:00
Jan Bartel 6c161ca5c0 Fix checkstyle violation. 2020-07-08 09:04:53 +02:00
Lachlan 794d67c4d6
Merge pull request #5024 from eclipse/jetty-9.4.x-5018-ClientUpgradeRequestTimeout
Issue #5018 - add request timeout onto ClientUpgradeRequest
2020-07-08 16:36:07 +10:00
Jan Bartel 0808b5c0fc
Issue #4989 Prevent parsing of module-info.class in osgi bundles (#4991)
Signed-off-by: Jan Bartel <janb@webtide.com>
2020-07-07 14:07:19 +02:00
Lachlan Roberts 702a48c2d1 Issue #5018 - rename ClientUpgradeRequest timeout to setTimeout
and increase timeouts used for testing

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-07 22:05:01 +10:00
Lachlan effcccd27a
Merge pull request #4980 from eclipse/jetty-9.4.x-threadPoolDocumentation
fix documentation on where to configure ThreadPool
2020-07-07 18:18:48 +10:00
Lachlan Roberts 74916c2fc9 Issue #5018 - add test case for ClientUpgradeRequest timeout
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-07 16:38:51 +10:00
Simone Bordet f2c6b67827
Fixes #4971 - Simplify Connection.upgradeFrom()/upgradeTo(). (#5008)
Fixes #4971 - Simplify Connection.upgradeFrom()/upgradeTo().

Now the upgrade-from connection produces a "floating" buffer 
(not belonging to a pool), so that it can release the original buffer.

The upgrade-to connection is free to copy or store this "floating" buffer.

Strengthened ByteBufferPool behavior when releasing non-pooled
ByteBuffers: the buffer is now discarded.

Updated javadocs and all implementations.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-07-06 22:45:03 +02:00
Simone Bordet 43353d0ca9 Issue #4890 - JettyClient behavior when SETTINGS_HEADER_TABLE_SIZE is set to 0 in SETTINGS Frame.
Fixed NPE in debug logs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-07-06 17:29:07 +02:00
Jan Bartel d785b590b1
Issue #5000 Fix NPE in FilterMapping.appliesTo (#5005)
* Issue #5000 Fix NPE in FilterMapping.appliesTo

Signed-off-by: Jan Bartel <janb@webtide.com>
2020-07-06 10:24:10 +02:00
Lachlan Roberts fbe3803cd1 fix checkstyle issue
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-06 12:19:38 +10:00
Lachlan 9a56301de1
Merge pull request #5004 from eclipse/jetty-9.4.x-4985-AttributeNameSet
Issue #4985 - fix NPE related to use of Attributes.Wrapper getAttributeNameSet()
2020-07-06 11:34:27 +10:00
Lachlan Roberts 6a8a6efd1c Issue #5018 - add request timeout onto ClientUpgradeRequest
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-04 11:37:45 +10:00
Simone Bordet ae43b70a9f
Jetty 9.4.x 4967 buffer corruption for http2 failures (#5001)
Fixes #4967 - Possible buffer corruption in HTTP/2 session failures

Partially reverted the changes introduced in #4855, because they
were working only when sends were synchronous.

Introduced ByteBufferPool.remove(ByteBuffer) to fix the issue.
Now when a concurrent failure happens while frames are being
generated or sent, the buffer is discarded instead of being
recycled, therefore resolving the buffer corruption.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-07-03 16:35:33 +02:00
Simone Bordet e0955192b8
Jetty 9.4.x 4976 httpclient fix null network buffer (#5010)
Fixes #4976  HttpClient async content throws NPE in DEBUG log.

Reworked handling of asynchronous content by immediately exiting
HttpReceiverOverHTTP.process(), so that there is no race with
other threads that have been scheduled to resume the processing.

The call to HttpReceiver.dispose() that could be triggered by
an asynchronous failure is now performed either by the failing
thread (if the HttpReceiver is not processing) or by an I/O
thread (if the HttpReceiver is processing) similarly to what
happens when terminating the response.

The content decoding has been reworked to perform the required
state changes similarly to what non-decoded content is doing,
as this was completely lacking before (it was actually a side
bug that is now fixed).

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
2020-07-03 09:30:15 +02:00
Simone Bordet 5510d7a9b1
Merge pull request #5014 from eclipse/jetty-9.4.x-5012-badJaasTestDependency
Issue #5012 - Remove unneeded dependency for test-jaas-webapp
2020-07-02 09:44:26 +02:00
Zac Duncan c77ad80d94 add constructor that takes in all params that super needs.
Signed-off-by: Zac Duncan <zac.duncan@gmail.com>
2020-07-02 09:28:09 +02:00
Lachlan Roberts f35d6cfd80 Issue #4985 - remove TODO in Dispatcher
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-02 16:02:24 +10:00
Lachlan Roberts 6407322d9c Issue #5012 - Remove unneeded dependency for test-jaas-webapp
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-07-02 11:15:34 +10:00
Simone Bordet 43e5473998 Fixes #4981 - Incorrect example for TryFilesFilter API docs.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-06-30 09:28:43 +02:00
Lachlan Roberts 9126b282b1 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-4985-AttributeNameSet 2020-06-30 11:22:41 +10:00
Jan Bartel 49615156f9 Fix blank line in import. 2020-06-29 10:39:58 +02:00
Joakim Erdfelt 3adec35cf5
Fixing CustomImportOrder checkstyle violations
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-06-25 09:25:05 -05:00
Joakim Erdfelt cb898ac74a
Bumping up to Checkstyle 8.29
+ This is in response to a dependabot notification
  of vulnerabilities in Checkstyle 8.20

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-06-25 09:24:36 -05:00
Joakim Erdfelt eb84c244d2
Ensuring that usage of "/**/" within tests don't trigger checkstyle violation.
Example: arguments.add(Arguments.of("glob:/**/*.jar", true));
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-06-25 09:23:46 -05:00
Lachlan Roberts 693312a577 Issue #4985 - ensure every attribute in getAttributeNameSet has a non null value
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-06-25 23:15:12 +10:00
Lachlan 1b59672b7f
Merge pull request #4987 from eclipse/jetty-9.4.x-1100-WebSocketEncoderLifeCycle
Issue #1100 - ensure init and destroy are always called on JSR356 Encoders
2020-06-23 09:43:50 +10:00
Lachlan Roberts 0db20886d0 Issue #1100 - ensure init and destroy are always called on JSR356 Encoders
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-06-22 11:51:06 +10:00
Lachlan Roberts a03a352d79 Issue #1100 - replicate issue where Encoder init and destroy never called
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-06-22 11:21:46 +10:00
Olivier Lamy a644a4b390
no need of creating/attaching sources twice for release as it is done in the default build (and we do not need forking a lifecycle for that) (#4938)
* no need of creating/attaching sources twice for release as it is done in the default build

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* comment

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* no need to fork a lifecycle when attaching sources files

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-06-19 12:47:46 +10:00
Simone Bordet c0481a5e5f
Issue #4965 - WINDOW_UPDATE for locally failed stream should not clos… (#4969)
* Issue #4965 - WINDOW_UPDATE for locally failed stream should not close the HTTP/2 session.

Improved HTTP2Session.onWindowUpdate() code to correctly check whether
the stream is already closed, and if so, just drop the WINDOW_UPDATE.
Refactored onResetForUnknownStream() to base class.
Other small refactorings to improve logging.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-06-18 15:23:51 +02:00
Lachlan Roberts 5ce5737395 fix information on ThreadPool configuration
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-06-18 17:45:32 +10:00
olivier lamy f745d5d5df remove unused imports and upgrade testcontainers.version
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-06-15 17:40:15 +10:00
Joakim Erdfelt 4abd8b1b39
Merge remote-tracking branch 'origin/release-9.4.30' into jetty-9.4.x 2020-06-12 11:31:42 -05:00
Jan Bartel 004bbe4e9f Add deletion test for memcached session data cache.
Signed-off-by: Jan Bartel <janb@webtide.com>
2020-06-12 18:20:14 +10:00
olivier lamy 7f0c725fd4 upgrade testcontainers to 1.14.2
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-06-12 18:20:14 +10:00
olivier lamy a78d2f475d use testcontainers to start memcached via docker for testing real remote memcached server
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-06-12 18:20:14 +10:00