Commit Graph

3430 Commits

Author SHA1 Message Date
Simone Bordet c85cef4da5 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-11-26 16:36:14 +01:00
Ludovic Orban aa8bd5d820 replace Trie interface and impls usage with new *Index interfaces and Builders
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-11-26 14:14:16 +01:00
Simone Bordet 68e70b47de
Merge pull request #5634 from eclipse/jetty-9.4.x-5310-http2_goaway
Review HTTP/2 GOAWAY handling
2020-11-26 11:29:44 +01:00
Ludovic Orban b4483d3b2a fix ArithmeticException "/ by zero"
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-11-26 08:59:44 +01:00
Lachlan 5941235725
Merge pull request #5726 from eclipse/jetty-9.4.x-websocketProxy
Implement and test a WebSocket Proxy with the 9.4 Jetty API
2020-11-26 16:55:36 +11:00
Joakim Erdfelt fe0a4f624e
Merge remote-tracking branch 'origin/release-9.4.35' into jetty-9.4.x 2020-11-25 15:56:09 -06:00
Lachlan Roberts ce11fb3e94 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-websocketProxy 2020-11-25 23:05:51 +11:00
gregw 116705037e Accidentally committed 2020-11-25 10:19:07 +01:00
Simone Bordet 96e068582b Fixes #1923 - GCThreadLeakPreventer won't work with Java 9.
GCThreadLeakPreventer has been removed, since the issue
it was trying to fix was solved in Java 9+.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-11-24 22:20:35 +01:00
Joakim Erdfelt a133e195d8
Fixing checkstyle violations
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-11-24 13:36:25 -06:00
gregw 0a70cba8ae Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: gregw <gregw@webtide.com>
2020-11-24 18:36:24 +01:00
Greg Wilkins 9f82ca0a80
Use File.list and File.walk within a try with resource (#5718)
* Use File.list and File.walk within a try with resource

The API contract of File.list and File.walk requires them to be closed after use.

* Fix from review

Left out filter

* Fix from review

Factored out deleteFile with better debug

* Fix from review

Can delete files whilst walking

* Fix from review

Restored sweepFile
fixed minor code suggestions
2020-11-24 18:12:42 +01:00
Lachlan Roberts b89adb8dae Improve WebSocketProxy, and write tests for it
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-11-24 18:55:09 +11:00
Joakim Erdfelt e8683cba9f Updating to version 9.4.36-SNAPSHOT 2020-11-20 16:05:27 -06:00
Joakim Erdfelt bdc54f03a5 Updating to version 9.4.35.v20201120 2020-11-20 15:05:50 -06:00
gregw 8884575f85 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: gregw <gregw@webtide.com>
2020-11-12 17:17:55 +01:00
Greg Wilkins f4c32e788a
Fix #5562 Improve HTTP Field cache allocation (#5565)
* Fix #5562 Improve HTTP Field cache allocation

Fix #5562 by initially putting cacheable fields into a inexpensive arraylist.
Only create the Trie (with space and complexity costs) if a second request is received.

* Fixed NPE

* Feedback from review

Create `HttpHeader.isPseudo()`` method
improved clarity with `createFieldCacheIfNeeded()``

* Feedback from review

Only defer Trie creation to first cacheable field, not until next request.

* Updates from review

* Update from review

 + more javadoc
 + empty set return
2020-11-12 17:05:32 +01:00
gregw 6ea9f11bc1 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-11-11 17:49:03 +01:00
Greg Wilkins bb886ad932
Fix #5575 SEARCH method (#5576)
+ Added all IANA methods
 + Used Trie for most lookups
 + Fixed ArrayTernayTrie lookup
 + optimised GET, POST and HEAD

Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-11-11 17:48:08 +01:00
Simone Bordet 226d616a8a Issue 5310 - Review HTTP/2 GOAWAY handling.
Reimplemented close/idle_timeout/stop/onGoAway/input_shutdown following more closely the specification.

In particular, the semantic of sending a GOAWAY is now to:
* stop creation of new both local and remote streams
* record the last processed stream
* continue processing streams that are pending

This means that a GOAWAY is "graceful" in the sense that it allows for streams to be completed by applications.

The semantic of stop() and idle timeout is harsher: for pending streams a RST_STREAM is sent to the other peer and they are failed locally.

Added support for GOAWAY with 2^31-1 lastStreamId.

Added support for a peer to send and receive multiple GOAWAY frames.

Reviewed the stream creation/destruction mechanism so that when the last stream completes after a GOAWAY, proper actions can be run to tear down the connection.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-11-10 10:07:19 +01:00
Greg Wilkins 1904d326fc
Fixes #5521 ResourceCollection NPE (#5527)
* Fixes #5521 ResourceCollection NPE

Fix constructor and addPath so that all resources in a RC must exist when created.

* Fixes #5521 ResourceCollection NPE

Cleanup the vestiges of non existent directories detected by resource ending in /

* Fixes #5521 ResourceCollection NPE

Revert adding paths ending in / as jar:file resource needs them

* feedback from review

improved javadoc.
2020-11-04 08:56:17 +01:00
Joakim Erdfelt edaadff55b Updating to version 9.4.35-SNAPSHOT 2020-11-02 09:04:51 -06:00
Joakim Erdfelt e46af88704 Updating to version 9.4.34.v20201102 2020-11-02 08:03:51 -06:00
Simone Bordet 40fd98d6a9 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2020-11-02 10:47:03 +01:00
Simone Bordet a1b3d3319d
Merge pull request #5491 from eclipse/jetty-9.4.x-5488-jetty-dir.css
Fixes #5488 - jetty-dir.css not found when using JPMS.
2020-11-02 10:40:19 +01:00
Joakim Erdfelt 3aba60c31f
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-30 13:12:50 -05:00
Joakim Erdfelt 249cb02a75
Issue #5535 - Removing irrelevant lines on test
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-30 11:22:46 -05:00
Joakim Erdfelt 074b4f90f7
Issue #5535 - Adding regex include/exclude of Protocols to SslContextFactory
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-30 10:29:35 -05:00
Joakim Erdfelt c969fba71a
Issue #5531 - Using .setExcludeProtocols correctly.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-29 20:28:21 -05:00
Joakim Erdfelt cff4771375
Issue #5531 - Test excluded protocol behavior
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-29 13:57:20 -05:00
Joakim Erdfelt dadd299e47
Cleanup of SslContextFactoryTest
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-29 13:44:21 -05:00
Lachlan 5bb47c954c
Merge pull request #5517 from eclipse/jetty-10.0.x-5493-StatisticsHandler
Issue #5493 - Fix and simplify graceful shutdown of StatisticsHandler
2020-10-29 08:55:22 +11:00
Greg Wilkins d3bdeefa1a Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2020-10-28 18:01:56 +01:00
Greg Wilkins 7a0de6af3a
Fixes #5498 ServletHolder cleanup (#5514)
* Fixes #55498 ServletHolder cleanup

Various cleanups for #5498 including:
 + renaming multiple `_servlet` fields in inner classes to avoid confusion
 + better comments in prepare method to describe why it is needed
 + call prepare from Invoker servlet
 + The `_servlet` field is not set until after the servlet is initialized
 + Consistent wrapping of `SingleThreadedWrapper` now in `initServlet`
 + The `getServlet` method now looks the volatile `_servlet` to avoid locking if possible
 + The `handle` method now calls `getServletInstance` as servlet will have been initialized in `prepare`
 + Found and fixed race with making unavaiable servlet available again
 + fixed nanotime overflow
 + fixed several compiler warnings/suggestions
 + removed while true from unavailable servlet
 + Do not destroy servlets unless init has been called.
 + Added TODOs about calling predestroy on instances not created by the holder.
 + Do not destroy servlets unless init has been called.
 + Added TODOs about calling predestroy on instances not created by the holder.
 + improved dump and toString
2020-10-28 17:46:49 +01:00
gregw c793b54781 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: gregw <gregw@webtide.com>
2020-10-28 15:31:02 +01:00
Greg Wilkins 6698a314ee
Fixes #5521 ResourceCollection list NPE (#5523)
Fixes #5521 ResourceCollection list NPE
2020-10-28 15:23:29 +01:00
Lachlan Roberts d6751c9936 Issue #5493 - Fix and simplify graceful shutdown of StatisticsHandler
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2020-10-27 15:40:58 +11:00
Simone Bordet 4a4a73df2e Fixes #5488 - jetty-dir.css not found when using JPMS.
Moved jetty-dir.css from jetty-util to jetty-server,
so that it can be found by ResourceHandler when using JPMS.

Updated DefaultServlet to call a ResourceHandler method
to retrieve the stylesheet.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2020-10-22 16:48:27 +02:00
Joakim Erdfelt e726eefb0b Updating to version 9.4.34-SNAPSHOT 2020-10-20 18:55:39 -05:00
Joakim Erdfelt 1be6875565 Updating to version 9.4.33.v20201020 2020-10-20 18:28:51 -05:00
Joakim Erdfelt 05f08fec4c
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-20 17:35:56 -05:00
Joakim Erdfelt fa6c8f7dec
Issue #5480 - Only delete non-persist temp dir if not-empty
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-20 17:19:54 -05:00
Joakim Erdfelt 0e98c370fd
Issue #5480 - NPE protection on IO.delete(File)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-20 16:28:36 -05:00
Joakim Erdfelt 5045244f54
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-17 05:38:31 -05:00
Joakim Erdfelt fed8484d88
Merge pull request #5458 from eclipse/jetty-9.4.x-5451-temp-perms-cleanup
Issue #5451 - Removing file/dir permission management from codebase
2020-10-17 05:28:13 -05:00
Joakim Erdfelt 1e9c736692
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-16 17:51:32 -05:00
Joakim Erdfelt 97f795160c Fixing windows build/test issues. 2020-10-16 13:54:27 -05:00
Joakim Erdfelt d612f12cf6
Issue #5451 - Removing file/dir permission management from codebase
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-16 13:17:28 -05:00
Joakim Erdfelt e12c3ce50b
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-16 08:11:42 -05:00
Joakim Erdfelt fdd880b66b
Issue #5451 - Cleanup of temp file cleanup.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-15 18:10:38 -05:00