5557 Commits

Author SHA1 Message Date
Lachlan
1bb928bbf0
#9344 changes from review
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-14 09:35:18 +11:00
Lachlan
e623511de2
#9344 changes from review
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-14 09:35:09 +11:00
Lachlan Roberts
a5344d7a26 bring back some multipart improvements from #9287
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-09 21:25:39 +11:00
Greg Wilkins
8bf7c9cef8
Fix #9285 use possibly wrapper response for redirection (#9286)
Use the servlet response sendRedirect method.
Always close the connection if there is content.

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2023-02-05 09:18:24 +11:00
dependabot[bot]
ca19b143a9
Bump maven.surefire.plugin.version from 3.0.0-M5 to 3.0.0-M8 (#9255) 2023-02-02 04:15:39 +00:00
Joakim Erdfelt
4993291af0
Wrong value of RequestDispatcher.FORWARD_CONTEXT_PATH attribute on root context (#9123)
* Wrong value of RequestDispatcher.FORWARD_CONTEXT_PATH on root context

* Fixes #9119 - uses proper context path that
  satisfies the root context rules of the servlet
  spec

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-01-20 08:16:43 -06:00
Joakim Erdfelt
54c4c03244
Updating to version 10.0.14-SNAPSHOT 2022-12-07 14:33:17 -06:00
Joakim Erdfelt
1c2636ea05
Updating to version 10.0.13 2022-12-07 14:12:50 -06:00
Joakim Erdfelt
7e1de8b1e2
Issue #8973 - Rework KeyStoreScanner handling for symlink related changes (#9014)
* Issue #8973 - Rework KeyStoreScanner handling for symlink related changes

+ Removed changes from #8786 and #8787
+ More test cases
+ revert jetty.sslContext.reload.followLinks boolean
+ Scanner should follow its own linkOptions setting
+ remove bad documentation in module-ssl-reload.adoc

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Co-authored-by: Lachlan Roberts <lachlan@webtide.com>
2022-12-07 09:24:19 -06:00
Simone Bordet
a546027db8
Fixes #9006 - WebSocket MessageInputStream.read() returns signed byte
Now properly coverting to `int`.
Added test.

Also fixed MultiPartInputStreamParser.Base64InputStream for the same issue.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-12-06 15:29:05 +01:00
Jan Bartel
cd7482a151
Issue #8460 simplify DefaultSessionIdManager start (#8464)
* Issue #8460 check DefaultSessionIdManager is started
2022-11-23 13:47:29 +11:00
Simone Bordet
e33c9a1284
Improved documentation about virtual threads. (#8900)
Added programming guide section about Jetty threading model.
Updated operations guide with new sections about virtual threads.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-21 21:16:10 +01:00
Joakim Erdfelt
44666573e2
Merge pull request #8906 from eclipse/fix/jetty-10-gziphandler-status-304-vary
Issue #8905 - GzipHandler should include `Vary` header on 304 (Not Modified) responses (per RFC9110)
2022-11-21 10:23:49 -06:00
Simone Bordet
83154b4ffe
Fixes #8863 - Provide a possibility to name virtual threads (#8903)
* Fixes #8863 - Provide a possibility to name virtual threads

Reworked the VirtualThreads APIs to be based on `Executor` rather than just `boolean`.
Introduced Jetty module `threadpool-virtual-preview`.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-21 15:39:54 +01:00
Greg Wilkins
55e9f738c9
Fix #8897 Ignore conditional headers as per RFC7232 (#8899)
* Ignore date based headers if etag ones are present.
* Also avoid parsing dates unless necessary.
* Check a resource has a lastModified date

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2022-11-17 12:27:21 +11:00
Joakim Erdfelt
cf0193421e
Issue #8905 - GzipHandler should include Vary header on 304 (Not Modified) responses (per RFC9110)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-11-16 14:31:44 -06:00
Lachlan
690220fc40
Merge pull request #8787 from eclipse/jetty-10.0.x-8786-KeyStoreScanner-Symlink
Issue #8786 - add configuration for KeyStoreScanner to not resolve aliases
2022-11-10 17:17:59 +11:00
Simone Bordet
c280e31b46
Fixes #7117 - Timeout with Expect 100 continue when using ProxyServlet. (#8873)
* Fixes #7117 - Timeout with Expect 100 continue when using ProxyServlet.

Now getReader() tests whether it has to send a 100 continue in case getInputStream() 
is not called because the reader is reused.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-11-09 12:16:42 +01:00
Joakim Erdfelt
793bee9e14
Issue #8716 - Handle bad host/authority headers better (#8717)
* Issue #8716 - Handle bad host/authority headers better
* Remove extra `Host` header in testcase that doesn't deal with bad Host headers
* Create URIUtil.isRegName
* Correcting HostPortTest.testValidAuthority
* Correcting RequestTest.testInvalidHostHeader
* Remove clonable, set to final

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-11-08 18:08:20 -06:00
Lachlan Roberts
0a14cca307 changes from review - rename resolveAlias to followLinks
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-11-03 20:37:55 +11:00
Lachlan Roberts
3b7ea99780 set type of arg in jetty-ssl-context-reload.xml
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-11-03 19:26:00 +11:00
Lachlan Roberts
8607e3ef15 changes to ssl-reload module & documentation from review
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-11-03 18:54:53 +11:00
Greg Wilkins
47c289188e
Fix #8536 HotSwap start race (#8544)
Don't stop until after new handler installed.
2022-09-23 16:54:21 +10:00
Olivier Lamy
dbd07146ec
merge back release branch to bump version to 10.0.13-SNAPSHOT (#8593)
* Updating to version 10.0.12

* Updating to version 10.0.13-SNAPSHOT

* VERSION.TXT =+ content of jetty-9.4.49.v20220914 release

* remove strange line and reorder
2022-09-16 19:50:12 +10:00
Joakim Erdfelt
8eba1c9924
Issue #8578 - Changes from review
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-09-12 09:55:14 -05:00
Joakim Erdfelt
a6a386a6cc
Issue #8578 - restore backward compat of getRequestURL and getRequestURI when working with CONNECT method
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-09-09 15:11:46 -05:00
Simone Bordet
77ad0189ba
Fixes #8532 - Review System.nanoTime() usages. (#8535)
* Fixes #8532 - Review System.nanoTime() usages.

Introduced o.e.j.util.NanoTime class to deal with nanoTimes.

Now NanoTime.now() should be used instead of System.nanoTime(),
and various <unit>[elapsed|since|until]() methods to calculate nanoTimes.

Furthermore, comparing 2 nanoTimes should be done via isBefore(),
rather than using the < operator, which is wrong as specified in
the System.nanoTime() javadocs.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-09-06 09:30:02 +02:00
Michael Weigmann
1b78db7be2
Use getSchemaTableName also in the create table statement (#8006)
When all other sql statements are built, this method is used for including the schema name in front of the table name (if specified). So to make it more consistent, it would be better to also create the table in the specified schema.

PS: Please indulge me for not opening an issue, as i think this optimization is pretty trivial and need no big discussion.

Signed-off-by: Michael Weigmann <michael.weigmann@hsh-berlin.com>

Signed-off-by: Michael Weigmann <michael.weigmann@hsh-berlin.com>
2022-09-02 14:18:27 +10:00
Lachlan
bcf3cd19e5
Merge pull request #8468 from eclipse/jetty-10.0.x-well-known-aliaschecking
define the resourceBase in well-known ContextHandler to allow alias checking
2022-08-17 22:00:03 +10:00
Lachlan Roberts
3db45e11dd define the resourceBase in well-known ContextHandler to allow alias checking
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-08-16 18:05:12 +10:00
Lachlan
32e081566e
Merge pull request #8433 from eclipse/jetty-10.0.x-aliasCheckingPerf
improve performance of alias checking
2022-08-15 10:23:16 +10:00
Simone Bordet
99a983ebf0
Fixed type from "int" to "boolean" in jetty-threadpool.xml.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-08-10 14:51:26 +02:00
Simone Bordet
be3d16bdbb
Fixes #8007 - Support Loom. (#8360)
Implemented support for virtual threads for HTTP/1.1, HTTP/2 and HTTP/3.

The virtual thread support is in AdaptiveExecutionStrategy.
When virtual threads are supported and enabled, reserved threads are disabled and
blocking tasks are run in a virtual thread instead that being executed by the Executor.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-08-10 14:31:04 +02:00
Lachlan Roberts
5b52570665 use CopyOnWriteArrayList for AliasCheck list
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-08-09 21:10:43 +10:00
Lachlan Roberts
4eff1a91c8 improve performance of alias checking
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-08-08 18:51:57 +10:00
Lachlan
998bc8c7e8
Merge pull request #8315 from eclipse/jetty-10.0.x-8296-AliasChecking
Issue #8296 and #8259 -  AllowedResourceAliasChecker improvements
2022-08-08 13:23:02 +10:00
Lachlan Roberts
99cb930d78 changes from review PR #8315
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-07-27 10:21:35 +10:00
Lachlan Roberts
cff4ff6c98 Issue #8296 - attempt to resolve symlinks for baseResource in ContextHandler.doStart()
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-07-21 18:59:51 +10:00
Greg Wilkins
26a255e481
Fix #8294 push added cookie (#8298)
* Fix #8294 push added cookie

Reparse cookie added with addCookie
Added extra test to ensure maxAge is being parsed with other cookie attributes

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2022-07-18 12:39:40 -05:00
Lachlan Roberts
6c35fc6f65 Issue #8259 - AliasCheckers for different resource bases on same Context
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-07-18 17:22:38 +10:00
Lachlan Roberts
23df34e2d4 Issue #8296 - let AllowedResourceAliasChecker work before fully started
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2022-07-18 15:21:17 +10:00
Greg Wilkins
c1c2bdbb45
Fix errors in Mapped pool and javadoc (#8264)
* Fix errors in javadoc
* Further RBBP improvements
2022-07-07 22:49:04 +10:00
Greg Wilkins
2b817f06c6
Combined ByteBufferPool (#8171)
All `ByteBufferPool` can now be accessed as `RetainableByteBufferPools`.

Users now need to configure only a single buffer pool and there is just the additional retained parameter that needs consideration.
Default buffer pool has been changed to logarithmic, but we may wish to review that before next release.
Default factor size has been increased to 4096.
2022-07-04 10:38:30 +10:00
Joakim Erdfelt
64d12e2a5a
Merge Release 10.0.11 back into jetty-10.0.x branch (#8194)
* Updating to version 10.0.11

* Updating to version 10.0.12-SNAPSHOT
2022-06-22 16:24:48 -05:00
Joakim Erdfelt
c2bc103cb9
Merge Release 10.0.10 back into jetty-10.0.x (#8180)
* Updating to version 10.0.11-SNAPSHOT
2022-06-21 14:41:41 +02:00
Joakim Erdfelt
ad757df736
Removing invalid maxConnections references (#8175)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-17 15:56:04 -05:00
Joakim Erdfelt
d63569d025
Migrate code from jetty-util Logger to slf4j Logger (#8162)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-15 20:01:48 +02:00
Lachlan
0699bc5326
Use static exceptions for closing websocket flushers and in ContentProducer (#8155)
* Use StaticException class in jetty-util for websocket flushers.
* Use StaticException class for ContentProducer recycle and consumeAll

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
Co-authored-by: Ludovic Orban <lorban@bitronix.be>
2022-06-13 14:11:31 +02:00
Jan Bartel
d725855194
Issue #8088 Add STOP.EXIT System property to configure ShutdownMonitor.exitVm (#8133)
* Issue #8088 Add STOP.EXIT System property to configure ShutdownMonitor.exitVm (#8089)

* Issue #8088 Add STOP.EXIT System property to configure ShutdownMonitor.exitVM

* Ensure missing STOP.EXIT doesn't override default exitVm=true

* Disable another test

* Disable test that might not work, depending on test execution order.
2022-06-09 08:06:55 +10:00
Joakim Erdfelt
8de55150fe
Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136)
* Cherry-pick of Improvements to PathSpec.
* From commit: 5b4d1dd1c64482d00919029e0a2ba4ac1f4d8e6b
* Fixing ConstraintSecurityHandler usage of PathMappings
* Fixing bad INCLUDE logic from cherry-pick in ServletHandler.doScope()
* Cleanup of non ServletPathSpec behaviors in ServletPathMapping class
* Skip optional group name/info lookup if regex fails.
* Prevent NPE on static servletPathMappings
* Update WebSocketMappings to use new PathMappings.getMatched(String)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-08 12:36:30 -05:00