Commit Graph

3010 Commits

Author SHA1 Message Date
Simone Bordet 710949dbb7 Issue #406 (GzipHandler: allow to override the Vary response header)
Added an overridable getVaryField() method that, if returns null,
disables the send of the Vary header.
2016-03-08 22:05:10 +01:00
Simone Bordet 87f011d98b Issue #402 (Don't use Thread.isAlive() in ShutdownMonitor).
Refactored completely ShutdownMonitor, fixing synchronization, race
conditions, cleaning up code, deleting unnecessary code, etc.
2016-03-08 14:29:49 +01:00
Simone Bordet 6ac2c4a701 Code cleanups. 2016-03-08 12:46:10 +01:00
Greg Wilkins 10bd934476 Issue #346 HttpParser RFC2616 Compliance mode
Empty header values returned as "" in all compliance modes
2016-03-05 14:26:47 +01:00
Joakim Erdfelt 0f0eb569e9 Issue #124 - Don't produce text/html if the request doesn't accept it
+ Using cleaner HttpFields access to 'Accept' header

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2016-03-04 11:28:34 -07:00
Joakim Erdfelt a7be6bc8ea Issue #124 - Don't produce text/html if the request doesn't accept it
+ If request has no 'Accept' header, produce text/html as before.
+ If request has 'Accept' header, then test for 'text/html' or '*/*'
  entries before producing html output.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2016-03-02 17:16:14 -07:00
Joakim Erdfelt b357521899 Issue #107 - ResourceHandler range support testcase 2016-03-02 16:48:05 -07:00
Joakim Erdfelt 4e426e9be3 Merge branch 'jetty-9.3.x' of github.com:eclipse/jetty.project into jetty-9.3.x 2016-03-02 09:07:33 -07:00
Joakim Erdfelt 1b310c84b0 Issue #247 improving invalid buffer manipulation exception messages 2016-03-02 09:06:21 -07:00
Greg Wilkins 3963309f62 Issue #379 Insufficient information on asyncNotSupported
Converted the boolean for asyncSupported to a String holding the source
of the async not supported.
2016-03-02 14:09:15 +01:00
Simone Bordet cec3694355 Consistently using BufferUtil, especially clearToFill() and
flipToFlush().
2016-02-29 16:31:38 +01:00
Jesse McConnell c74b0c23e9 Issue #367 Resolve remaining git.eclipse.org build references 2016-02-26 08:11:27 -07:00
Jesse McConnell b08f177d47 Issue #367 Resolve remaining git.eclipse.org build references 2016-02-26 08:09:12 -07:00
Jesse McConnell ce5a3b11d6 Issue #367 Resolve remaining git.eclipse.org build references 2016-02-26 08:03:33 -06:00
Simone Bordet 83baed0bfe Reformatted code. 2016-02-24 15:06:08 +01:00
Greg Wilkins 7b6c1af4a7 Removed extra ByteBuffer duplicate 2016-02-24 13:47:35 +01:00
Greg Wilkins 1eeecdaee5 Issue #355 Improve close behaviour
Inverted the logic of the handling of exceptions thrown in CommitCallback.
Now only if a BadMessageException is throw do we attempt to write a 500 response.
All other exceptions just abort the connection
2016-02-24 13:36:06 +01:00
Greg Wilkins 3c671aa8b6 Issue #346 HttpParser RFC2616 Compliance mode
Reimplmented HTTP/0.9 support in RFC2616 compliance mode
2016-02-23 17:33:53 +01:00
Simone Bordet 76689dd303 Issue #354 (Spin loop in case of exception thrown during accept()).
Fixed by introducing an overridable method that performs an arbitrary
sleep to avoid the spin loop. Subclasses may customize.
2016-02-23 11:37:08 +01:00
Greg Wilkins 55eb54799f Issue #346 HttpParser RFC2616 Compliance mode
Added HttpParser.Compliance field to HttpConnectionFactory
2016-02-19 11:41:07 +01:00
Joakim Erdfelt 4a6602d007 Issue #342 - Reintroducing Request to logExtended
+ the old/bad AbstractNCSARequestLog.logExtended is now
  deprecated
+ the corrected logExtended is the appropriate one to use
2016-02-18 11:31:55 -07:00
Greg Wilkins 8068aeead9 Fixed unit test race
Test was assuming that receiving completed response on client
always happened before server processing had completed.
Added a spin test.
2016-02-17 11:11:52 +01:00
Jan Bartel 11d3448e28 Issue #81 Exception not always thrown in Jetty to application when upload part is too big
Issue #82 Request.getPart() that results in Exception still allows other parts to be fetched
2016-02-16 17:43:56 +01:00
Jan Bartel f10f32c080 478918 Change javax.servlet.error,forward,include literals to RequestDispatcher constants 2016-02-16 10:48:20 +01:00
Greg Wilkins fd5b3a8062 487714 - Avoid NPE in close race for async write
The race has not been solved, as with lock-free style it is difficult to prevent a
close racing with a write in progress. Instead, the code has been made more
resiliant to such state changes and exceptions thrown are converted to IOExceptions.
2016-02-16 10:06:25 +01:00
Simone Bordet 26b6c848f3 Issue #80 (Spin loop in case of HTTP/2 prefaces without H2C).
Fixed by changing the state of the parser before calling the parser
handler callbacks, and by closing the parser if the upgrade to HTTP/2
is not successful.
2016-02-15 20:50:22 +01:00
Greg Wilkins 6a9002991a Issue #79 Parse HTTP request target starting with //
Added a new parseRequestTarget method
2016-02-15 19:40:10 +01:00
annorax 5167c52ab0 Add missing property configuration to jetty.xml
Signed-off-by: Ido <ido.dovrat@gmail.com>
2016-02-13 07:32:42 -07:00
Joakim Erdfelt f98dde5e5b Updating to version 9.2.16-SNAPSHOT 2016-02-10 15:36:41 -07:00
Joakim Erdfelt 9b6890d3c1 Updating to version 9.2.15.v20160210 2016-02-10 14:49:12 -07:00
Simone Bordet 6306f06e2f Merged branch 'jetty-9.2.x' into 'jetty-9.3.x'. 2016-02-09 18:12:04 +01:00
Greg Wilkins 7b5d12b338 Added HttpInput prepend content
Allows content to be reread
2016-02-05 14:54:39 +01:00
Greg Wilkins 90efbe62c8 487277 - Introduce http-forwarded module for X-Forwarded support 2016-02-04 11:58:23 -07:00
Jan Bartel 980ab316ca 487198 ContextScopeListener should be called on context start and stop 2016-02-04 10:45:33 +01:00
Greg Wilkins 6c9a444b6c 486530 - Handler added to WebAppContext prevents ServletContext initialization
Added warnings for loops and inappropriate handlers.
Used insertHandler in more XML files
2016-02-03 10:54:39 +01:00
Joakim Erdfelt 79a7863ac8 486877 - Google Chrome flagging 'obsolete cipher suite' in Jetty and will soon issue broken padlock
+ Rely on SslContextFactory defaults for Includes/Excludes of Cipher
  Suites
+ Reference documentation for advice on setting up custom includes
  and excludes
2016-02-02 12:48:17 -07:00
Joakim Erdfelt 1aef09acc2 486604 - Add debug logging of ErrorPageErrorHandler logic 2016-01-27 11:55:00 -07:00
Joakim Erdfelt e3dd0cb83b 486511 - Server.getURI() returns wrong scheme on SSL/HTTPS 2016-01-25 13:23:41 -07:00
Joakim Erdfelt e0ce545ad7 Updating to version 9.3.8-SNAPSHOT 2016-01-15 17:15:14 -07:00
Joakim Erdfelt c0b191119b Updating to version 9.3.7.v20160115 2016-01-15 16:40:15 -07:00
Greg Wilkins d41c0bba65 471171 - Support SYNC_FLUSH in GzipHandler 2016-01-15 14:27:09 +11:00
Joakim Erdfelt 0a1b0b2bc6 485714 - Update SSL configuration to mitigate SLOTH vulnerability 2016-01-13 15:00:16 -07:00
Joakim Erdfelt 30308f2316 Javadoc updates 2016-01-13 07:25:15 -07:00
Greg Wilkins 35134e2d05 485376 unit test 2016-01-08 11:38:06 +11:00
Jan Bartel 913ef1a39a 485064 HashSessionManager leaks ScheduledExecutorScheduler with reference to un-deployed webapp 2016-01-06 11:22:18 +11:00
Joakim Erdfelt cd39fd84fe Happy New Year 2016 2016-01-04 14:31:22 -07:00
Joakim Erdfelt b5db18378d Happy New Year 2016 2016-01-04 14:21:26 -07:00
Greg Wilkins 30557429cf 484801 Avoid non-cached memory mapped files 2015-12-24 15:13:46 +11:00
Greg Wilkins 3b49ed6d0a 484657 - Support HSTS rfc6797 2015-12-24 08:42:59 +11:00
Simone Bordet b7ab9e0a22 484818 - Expose interesting HTTP/2 attributes and operations via JMX.
Initial work to expose already existing attributes on the server.
2015-12-23 11:08:25 +01:00
Greg Wilkins 19d6e36ab9 484657 - Support HSTS rfc6797 2015-12-23 17:15:24 +11:00
Greg Wilkins f65a7db8c5 458745 Async ISE in async Echo
The HttpOutput class was throwing an ISE if it was dispatched when PENDING
or UNREADY.  However this can occur when it has been dispatched, but a prior call
to onDataAvailable() does output after calling isReady().

The HttpOutput now does not enforce that part of the state machine and defers to
the application correctly calling isReady()
2015-12-23 15:09:56 +11:00
Joakim Erdfelt 22f9c9826d Javadoc fixes 2015-12-19 12:46:52 -07:00
Greg Wilkins 5cd676581c 484622 - Improve handling of Direct and Mapped buffers for static content
ResourceHttpContent now applies a maxBufferSize that is passed through the call to getContent
ResourceCache now accounts for the exact memory usage of content, which may have an indirect
buffer plus either a direct or mapped buffer.  Thus content size may be 0, 1 or 2 times the
file size.

Some more limited unit tests
2015-12-18 12:36:27 +11:00
Joakim Erdfelt 343aa066ae Merge branch 'jetty-9.2.x' into jetty-9.3.x
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java
	jetty-rhttp/jetty-rhttp-gateway/src/main/java/org/eclipse/jetty/rhttp/gateway/Main.java
	jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/CompressedResponseWrapper.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/GzipHandler.java
	jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java
	jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java
	jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java
	jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java
2015-12-16 12:56:13 -07:00
Greg Wilkins 3527c6a71b StringUtil.csvSplit(String)
Conflicts:
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java
	jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/PushCacheFilter.java
	jetty-util/src/main/java/org/eclipse/jetty/util/StringUtil.java
	jetty-xml/src/main/java/org/eclipse/jetty/xml/XmlConfiguration.java
2015-12-08 14:54:33 -07:00
Greg Wilkins 6978eeb5c4 483422 - Empty chunked body in 304 Response
test harness only
2015-12-02 12:41:51 +11:00
Greg Wilkins a2c057892e 483039 - HTTP2 Upgrade case sensitivity on Connection header 2015-11-26 07:06:38 +11:00
Greg Wilkins 204591ce82 482855 - Content-Length omitted for POST requests with empty body
Removed HTTP 0.9 support
A few code simplifications
Fixed clients relying on Content-Length headers being ignored
2015-11-25 20:50:59 +11:00
Simone Bordet ce41b7124f 482506 - HTTP/2 load test with h2load fails.
Returning true if the upgrade succeeds to signal to the HttpParser to
stop parsing, leaving all the work and the buffer to the new connection.
2015-11-18 19:25:34 +01:00
Joakim Erdfelt 4e773c16e2 Merge branch 'release-9.3.6' into jetty-9.3.x 2015-11-18 11:24:04 -07:00
Greg Wilkins 12ec44894b 482272 Fixed relative symlink checking 2015-11-18 11:13:35 +11:00
Joakim Erdfelt edf686fe0a Updating to version 9.3.7-SNAPSHOT 2015-11-06 12:13:00 -07:00
Joakim Erdfelt d737e1c638 Updating to version 9.3.6.v20151106 2015-11-06 11:09:32 -07:00
Joakim Erdfelt ec8f8d3e4f Updating to version 9.2.15-SNAPSHOT 2015-11-06 11:06:48 -07:00
Joakim Erdfelt ecba378f5c Updating to version 9.2.14.v20151106 2015-11-06 10:32:14 -07:00
Greg Wilkins 4bb63b9e03 481355 Nested Symlinks 2015-11-06 13:54:47 +11:00
Greg Wilkins 56afc2b0e5 481554 DispatcherType reset race
Cherry pick of fa53b11850

Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
2015-11-06 10:38:08 +11:00
Joakim Erdfelt c8ec399af2 Merge branch 'jetty-9.2.x' into jetty-9.3.x 2015-11-05 10:34:30 -07:00
Joakim Erdfelt 486e890d5d 481236 - Make ShutdownMonitor java security manager friendly
+ Limit access to specific System properties
2015-11-05 10:33:25 -07:00
Greg Wilkins bd8f0b2dba 481418 ResourceHandler sets last modified 2015-11-05 08:52:03 +11:00
Greg Wilkins 8caef29126 481418 ResourceHandler sets last modified 2015-11-05 08:31:36 +11:00
Jan Bartel c63ef3e08b 481373 Corner cases where session may remain in JDBCSessionManager memory 2015-11-04 17:24:38 +11:00
Simone Bordet 58027a3421 481225 - Secondary resources with query parameters are not properly pushed.
Fixed by making PushCacheFilter remember the query parameters for
secondary resources, so that the PUSH_PROMISE frame can be correctly
generated with the query parameters.
2015-11-02 11:37:17 +01:00
Greg Wilkins c156f6593c 480162 - Continuations behavior differences due to HttpURI behavior
reverted 3e460dd219
added test clarifications
2015-10-21 15:18:12 +11:00
Joakim Erdfelt a01565fbc4 478757 - DebugHandler thread name is mangled
+ Removing scheme check, now that HttpURI is sane
2015-10-20 11:56:43 -07:00
Joakim Erdfelt 3e460dd219 480162 - Continuations behavior differences due to HttpURI behavior
+ When fixing URI.absolute with authority, default to scheme 'http'
  (allowing things like SecureRequestCustomizer to change it again
   to 'https')
2015-10-20 11:55:45 -07:00
Joakim Erdfelt 22573be353 Fixing format error on toString() 2015-10-20 11:28:19 -07:00
Joakim Erdfelt 8eda037de0 Merge branch 'jetty-9.3.x' of ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project into jetty-9.3.x 2015-10-19 11:59:21 -07:00
Joakim Erdfelt 435ce8c3ab 478757 - DebugHandler thread name is mangled
+ Replicating reopened bug with double-scheme https
  in testcase
+ Adding safety check for https in thread name determination
2015-10-19 11:58:04 -07:00
Greg Wilkins 570c751ec8 479179 Fixed NPE from debug 2015-10-17 09:37:43 +11:00
Joakim Erdfelt 28daeb912d Merge branch 'release-9.3.5' into jetty-9.3.x 2015-10-13 09:07:50 -07:00
Joakim Erdfelt 29d63b41b1 Merge branch 'jetty-9.2.x' into jetty-9.3.x
Conflicts:
	jetty-server/src/test/java/org/eclipse/jetty/server/ServerConnectorHttpServerTest.java
2015-10-13 08:39:45 -07:00
Joakim Erdfelt b02783220e Renaming old 'SelectChannel*' test for new naming scheme 2015-10-13 08:10:16 -07:00
Joakim Erdfelt dde32787c4 Updating to version 9.3.6-SNAPSHOT 2015-10-12 15:47:37 -07:00
Joakim Erdfelt 29722bd880 Updating to version 9.3.5.v20151012 2015-10-12 15:10:39 -07:00
Joakim Erdfelt 2cce7510e1 Updating to 9.3.5-SNAPSHOT 2015-10-08 17:49:09 -07:00
Joakim Erdfelt 37296bec3c Updating to version 9.3.4.v20151007 2015-10-07 14:58:38 -07:00
Joakim Erdfelt f2e0a46058 478752 - Clarify support for HttpServletRequest.upgrade()
+ Indicating lack of upgrade() support with ServletException
2015-10-07 14:40:01 -07:00
Greg Wilkins 4d4ed7bbe2 478923 Add XML property for blockingTimeout 2015-10-06 09:14:19 +11:00
Joakim Erdfelt 5300f0c7f7 478757 - DebugHandler thread name is mangled
+ Added testcase, and fixed handler for threadname output.
2015-09-30 12:47:31 -07:00
Simone Bordet 90743d301a Improved toString().
Changes imported manually from branch 9.2.x.
2015-09-29 12:06:01 +02:00
Simone Bordet 1f2f62cff4 Revert "Merged branch 'jetty-9.2.x' into 'master'."
This reverts commit 701ca1aa26, reversing
changes made to 64ba5a6ef8.
2015-09-29 11:31:56 +02:00
Simone Bordet 9549b32ea6 Revert "Merged branch 'jetty-9.2.x' into 'master'."
This reverts commit db61fc2a47.
2015-09-29 11:31:03 +02:00
Simone Bordet db61fc2a47 Merged branch 'jetty-9.2.x' into 'master'. 2015-09-29 09:43:12 +02:00
Simone Bordet 701ca1aa26 Merged branch 'jetty-9.2.x' into 'master'. 2015-09-29 09:42:28 +02:00
Simone Bordet fd5c5b5779 Improved toString(). 2015-09-28 19:23:50 +02:00
Joakim Erdfelt 58203893b6 Fixing javadoc 2015-09-25 09:49:29 -07:00
Greg Wilkins 007ac4a9dd 478372 - JavaUtilLog setSourceClass and setSourceMethod
Added some additional features to configure the java.util.logging mechansim
2015-09-25 14:08:31 +10:00
Jan Bartel 06fbf447fb 478247 WebappClassLoader pinned after redeploy 2015-09-24 14:03:37 +10:00
Simone Bordet 460673f04b 477890 - Overwhelmed HTTP/2 server discards data.
HttpInput was using a bounded ArrayQueue with max capacity 64.
The queue was overflowing if there were more than 64 reads within the
flow control window capacity.

Fixed by replacing the ArrayQueue with ArrayDeque, which is unbounded.
2015-09-21 09:34:15 +02:00
Greg Wilkins 269ac1a44e 477737 Improve handling of etags with dynamic and static gzip
Fixed spin on --gzip etag
2015-09-18 14:54:07 +10:00
Greg Wilkins 67aee72bdd 477680 Encode merged query parameters 2015-09-18 13:19:00 +10:00
Greg Wilkins 99f4ed7352 477737 Improve handling of etags with dynamic and static gzip 2015-09-18 12:30:02 +10:00
Simone Bordet 014d021618 Removed unnecessary test condition. 2015-09-18 01:46:46 +02:00
Greg Wilkins 2d88fdf386 477278 Refactored DefaultServlet for cached Gzip & Etags
Refactored the DefaultServlet to better handle static gzipped files with etags in the cache.
Required a simplification of always having a HttpContent rather than the prior situation of
having either a Resource or a HttpContent.  So introduced a HttpContent.Factory, of which
the ResourceCache is the normal implementation, but there is also now a ResourceContentFactory
that creates content when there is no cache.

The Gzip resource is now associated with the normal resource, so less lookups are needed.
This also give scope for caching dynamic gzipping in the future.

The GzipHttpContent class has been introduced to send content with the headers of the
uncompress, but content of the compressed resource.
2015-09-17 18:19:58 +10:00
Jan Bartel 03a601f2b2 477385 Make jetty osgi manifests only resolve jetty packages against a single distro version 2015-09-16 19:13:47 +10:00
Greg Wilkins 02c5ea30be 477123 - AsyncListener callbacks need context scope
Also added DebugListener and deprecated DebugHandler
2015-09-11 12:06:23 +10:00
Joakim Erdfelt 49c927974b Javadoc fix 2015-09-02 09:26:12 -07:00
Jesse McConnell 6409366499 [maven-release-plugin] prepare for next development iteration 2015-08-27 10:11:29 -05:00
Jesse McConnell 3086adc965 [maven-release-plugin] prepare release jetty-9.3.3.v20150827 2015-08-27 10:11:21 -05:00
Jesse McConnell f5d1fb1058 Merge branch 'master' into release-9.3.3 2015-08-27 08:31:22 -05:00
Simone Bordet bee5437bad 475927 - SecureRequestCustomizer fails to match host.
Cosmetic changes during review.
2015-08-27 11:14:33 +02:00
Greg Wilkins 8070ce61f3 475927 - SecureRequestCustomizer fails to match host.
Moved host and wildcard to new X509 class
2015-08-27 12:25:52 +10:00
Simone Bordet 7057dae67b 475927 - SecureRequestCustomizer fails to match host.
Fixed by storing in the SSLSession the SNI names correspondent to the
alias that was selected when the TLS connection was initiated.
2015-08-26 20:36:43 +02:00
Simone Bordet 874300472e Do not hardcode the "http" scheme, but use that of the request. 2015-08-26 11:58:18 +02:00
Jesse McConnell f8734f23ce [maven-release-plugin] prepare for next development iteration 2015-08-25 14:10:01 -05:00
Jesse McConnell e9edf4c24b [maven-release-plugin] prepare release jetty-9.3.3.v20150825 2015-08-25 14:09:54 -05:00
Simone Bordet bfeb7f56a6 Closing the connection also in case the parser is in CLOSED state.
When the request is fully read and the response is sent, the parser
may enter the CLOSE state if there were Connection: close headers.

It may happen that later the connection reads -1, then moves the
parser is CLOSED state, so the condition to close the connection must
include the CLOSED state.
2015-08-20 18:23:55 +02:00
Greg Wilkins d44ba7e24a Improved Context pluggability 2015-08-19 16:28:36 +10:00
Greg Wilkins 2cc663685a ContextHandler.ContextScopeListener
Added a listener that is called as any thread enters/exits a context/request scope. This is
both normal servlet dispatches and async callbacks.
2015-08-19 15:30:52 +10:00
Greg Wilkins afda638dd9 474685 - GzipHandler configuration supports csv paths and mimetypes.
readded for backward compatibility, but with a warning it will be removed.
2015-08-19 09:39:38 +10:00
Simone Bordet 805ec9554c 475195 - SNI matching fails when keystore does not contain wild certificates.
Fixed condition in SslContextFactory.getKeyManagers() that installs
the SniX509ExtendedKeyManager.

Miscellaneous code cleanups.
2015-08-17 20:55:20 +02:00
Simone Bordet b96f2f5b24 474634 - AsyncListener.onError() handling.
Simplified exception handling, making sure that we terminate the
handling even in case the state was COMPLETING but the container
could not write the response.
2015-08-14 14:48:51 -07:00
Simone Bordet b819273c7b 474634 - AsyncListener.onError() handling.
Refactored continuation tests.
2015-08-14 14:48:51 -07:00
Greg Wilkins 946b1476f8 474634 - AsyncListener.onError() handling.
reverted onComplete behaviour
2015-08-14 12:24:06 +10:00
Greg Wilkins d780839bec 474634 - AsyncListener.onError() handling.
Added HttpConfiguration.maxErrorDispatches to detect error loops
Fixed ManyWays... unit test to handle error dispatch.
2015-08-14 10:06:57 +10:00
Greg Wilkins 9b9b9524dc 474634 - AsyncListener.onError() handling.
Allow IOException from complete flush to goto an onError call.
2015-08-13 19:09:57 +10:00
Greg Wilkins 8c0e4f53d3 474634 - AsyncListener.onError() handling.
Fixed AsyncContextTests
2015-08-13 18:12:38 +10:00
Greg Wilkins f21ea15725 474634 - AsyncListener.onError() handling.
Handle errors thrown from dispatch when async is started with onError
2015-08-13 18:06:14 +10:00
Greg Wilkins d1aa9ce993 474634 - AsyncListener.onError() handling.
Removed special termination case handling. Unhandle can be avoided with a break loop.
Replaced actions COMPLETING and COMPLETED with COMPLETE (which is an action)

Refactored test harness to use a static history array rather than headers
2015-08-13 16:22:02 +10:00
Simone Bordet 79086f3fe3 474634 - AsyncListener.onError() handling.
Interim work on getting the right behavior for onError().
2015-08-13 01:33:28 +02:00
Joakim Erdfelt 791896339d Fixing javadoc 2015-08-12 14:22:53 -07:00
Simone Bordet 4c7d5f661e Fixed import error. 2015-08-11 12:32:27 +02:00
Simone Bordet aa684a5dcc 470311 - Introduce a proxy-protocol module.
Support for the PROXY protocol is now enabled via 2 new modules:
proxy-protocol and proxy-protocol-ssl, respectively for the HTTP
connector and the SSL connector.
2015-08-11 12:17:24 +02:00
Joakim Erdfelt 9ca235beca Revert "474618 - AsyncListener.onComplete not called when error occurs"
This reverts commit 60f409e4ff.
2015-08-10 09:38:40 -07:00
Joakim Erdfelt 60f409e4ff 474618 - AsyncListener.onComplete not called when error occurs 2015-08-10 07:56:14 -07:00
Joakim Erdfelt b522dd7fe2 474617 - AsyncListener.onError not called for errors
+ Making onError call correctly
2015-08-10 07:53:56 -07:00
Greg Wilkins 98f8852b51 more robust testharness for graceful stop 2015-08-05 15:44:46 +10:00
Greg Wilkins 4939854893 473321 - Overriding SSL context KeyStoreType requires explicit override of TrustStoreType 2015-08-05 14:58:08 +10:00
Joakim Erdfelt a3684f7fb8 [maven-release-plugin] prepare for next development iteration 2015-07-30 09:47:57 -07:00
Joakim Erdfelt 798fc8118b [maven-release-plugin] prepare release jetty-9.2.13.v20150730 2015-07-30 09:47:48 -07:00
Joakim Erdfelt 4b3879845d [maven-release-plugin] prepare for next development iteration 2015-07-30 07:02:10 -07:00
Joakim Erdfelt 6b7e9ac4b0 [maven-release-plugin] prepare release jetty-9.3.2.v20150730 2015-07-30 07:02:02 -07:00
Greg Wilkins 5aa5a4e525 fixed accidental NPE on Context logger 2015-07-30 18:50:04 +10:00
Greg Wilkins a568ee6f17 473832 SslConnection flips back buffers on handshake exception 2015-07-30 11:52:31 +10:00
Greg Wilkins 4a727a7f08 472974 Improved StatisticsHandler 503 generation 2015-07-30 11:24:30 +10:00
Greg Wilkins df6b935b94 470351 Fixed SNI matching of wildcard certificates 2015-07-23 19:49:06 +10:00
Greg Wilkins e1827f659e Ignore read/write timeout tests 2015-07-23 19:47:40 +10:00
Greg Wilkins ea7c0fed30 implemented ServletContext.getVersionServerName 2015-07-23 19:46:51 +10:00
Greg Wilkins 830b126e43 Fixed javadoc errors 2015-07-23 09:35:38 +10:00
Joakim Erdfelt fa92938243 Fixing javadoc errors 2015-07-22 10:22:39 -07:00
Greg Wilkins 607239028c 470727 - Thread Starvation of selector wakeups.
Changed the CallBack.NonBlocking to a default Callback.isNonBlocking, so that wrapping callbacks can determine if they are NonBlocking or not.
2015-07-22 17:31:54 +10:00
Jesse McConnell 4b8a6e584f Merge branch 'release-9.3.1' 2015-07-17 12:10:49 -05:00
Greg Wilkins 54995452d6 472931 - HttpConfiguration copy constructor incomplete 2015-07-17 23:50:39 +10:00
Greg Wilkins edc8bae556 472781 - GzipHandler isMimeTypeGzipable() bad logic
Added utility classes:

  IncludeExclude  - handles standard include exclude set
  RegexSet        - A set of regular expressions that have a combined compiled pattern
  PathMap.PathSet - A set of standard path mappings
2015-07-17 16:28:48 +10:00
Greg Wilkins 9ee4b64e89 472781, 472782 Improve GzipHandler Include/Exclude handling
Fixed javadoc
2015-07-17 11:54:18 +10:00
Greg Wilkins de39bf5227 472781, 472782 Improve GzipHandler Include/Exclude handling
Made a common utility class for include/exclude handling
Use path exclusion rather than mime exclusion for svg
2015-07-17 08:11:11 +10:00
Greg Wilkins deba2f0d6a 472621 - Unjustified timeout when serving static content
Created HttpConfiguration.setBlockingTimeout as a new timeout to apply to the total read/write operation.
Default is -1, which is no overall timeout and only the idle timeout will apply.
2015-07-15 17:09:18 +10:00
Jesse McConnell 9b790c38ce [maven-release-plugin] prepare for next development iteration 2015-07-14 11:42:34 -05:00
Jesse McConnell b35d32f2b8 [maven-release-plugin] prepare release jetty-9.3.1.v20150714 2015-07-14 11:42:28 -05:00
Greg Wilkins c2615d5fbd 472411 - PathResource.checkAliasPath typo 2015-07-12 21:33:15 +10:00
Greg Wilkins 2c3326e049 Improved graceful shutdown and added tests 2015-07-12 21:32:38 +10:00
Jan Bartel 325c65a6cb 464745 Remove @org.apache.xbean.XBean references 2015-07-10 18:14:02 +10:00
Jesse McConnell 7204707902 [maven-release-plugin] prepare for next development iteration 2015-07-09 12:14:38 -05:00
Jesse McConnell 3b1533673e [maven-release-plugin] prepare release jetty-9.2.12.v20150709 2015-07-09 12:14:30 -05:00
Greg Wilkins a9dd6ec676 fixed header 2015-07-02 17:24:37 +10:00
Greg Wilkins 04062a8383 Improved graceful shutdown and added tests 2015-07-02 16:57:56 +10:00
John Myers 2d0bedd9bf [Bug 470664] Handle multiple RequestLogHandler in chain
Signed-off-by: John Myers <jgmyers@proofpoint.com>
Change-Id: Iff4d80957f43ddeafc212500cf912ae9c928b261
2015-07-02 01:57:26 -04:00
Greg Wilkins 75f74ff76f 471251 - Improved debugging on async timeout 2015-07-02 15:53:52 +10:00
Greg Wilkins ca8ba1c080 471251 - Improved debugging on async timeout 2015-07-02 08:01:03 +10:00
Greg Wilkins 8d869bf88b 470727 - Thread Starvation with EWYK
Implemented NonBlockingCallbacks and fallback to PEC scheduling
2015-07-01 17:21:53 +10:00
Greg Wilkins 13ce021e5e 471464 - Parsing issues with HttpURI
Fixed parsing of CONNECT URIs
2015-07-01 15:50:31 +10:00
Joakim Erdfelt 7ebbe58c81 Fixing javadoc 2015-06-25 08:58:57 -07:00
Jan Bartel 3ac6a727cf 470803 If a webapp is not fully started do not fully stop it 2015-06-25 18:29:51 +10:00
Greg Wilkins 07c81d6ec7 Bug: 470790 Fixed alias checking of symlinked directories 2015-06-24 12:28:50 +10:00
Greg Wilkins 814000531f Bug: 447781 Allow additional methods to be x-www-form-encoded
Added configuration to the HttpConfiguration class to allow additional methods to be set as
acceptable for x-www-form-encoding.
2015-06-24 11:45:44 +10:00
Greg Wilkins 3e401a62e9 StringUtil.csvSplit(String) 2015-06-19 16:48:53 +10:00
Greg Wilkins b0a3c7c5ea Simplified ManagedAttribute mechanism 2015-06-19 15:24:06 +10:00
Greg Wilkins 1a572c3236 improved Dump 2015-06-18 17:24:06 +10:00
Jesse McConnell 60e45a940e [maven-release-plugin] prepare for next development iteration 2015-06-15 15:34:11 -05:00
Jesse McConnell d3dec8d513 [maven-release-plugin] prepare release jetty-9.2.12.M0 2015-06-15 15:34:03 -05:00
Joakim Erdfelt cf6c4a914e Updating version to 9.3.1-SNAPSHOT 2015-06-15 10:25:49 -07:00
Joakim Erdfelt 1a9da9f9e4 Updating versions to 9.3.0.v20150612 2015-06-12 09:34:24 -07:00
Joakim Erdfelt c6ac82f50b Merge branch 'master' into release-9.3 2015-06-12 09:30:46 -07:00
Joakim Erdfelt c20c5a2bed Jetty SSL distribution default port is 8443 (XML is now source of default) 2015-06-12 09:24:24 -07:00
Joakim Erdfelt 7c737a587b Removing [version] sections in modules 2015-06-12 09:14:34 -07:00
Joakim Erdfelt 496b4dfc83 [maven-release-plugin] prepare for next development iteration 2015-06-11 15:08:36 -07:00
Joakim Erdfelt f53c5d8fac [maven-release-plugin] prepare release jetty-9.3.0.v20150611 2015-06-11 15:08:29 -07:00
Joakim Erdfelt 1f24d44987 469341 - Not possible to use old/deprecated start properties
+ Distribution default is 8080, based on the XML
2015-06-11 12:58:48 -07:00
Joakim Erdfelt b670b9e47d Merge branch 'master' into bugs/469860
Conflicts:
	jetty-start/src/main/java/org/eclipse/jetty/start/StartArgs.java
	jetty-start/src/test/resources/assert-home-with-http2.txt
2015-06-11 06:57:16 -07:00
Greg Wilkins cd420d7db5 465118 Fixed GzipHandler handling of multiple closes 2015-06-11 12:39:03 +10:00
Joakim Erdfelt 916efd6aa7 469860 - Add module metadata versioning to support backwards compat
+ Adding [version] section to all existing jetty 9.3 distro modules
+ Updating testcases in jetty-start with new [version] sections too
+ Adding extra testcases for versioned modules
2015-06-10 10:59:18 -07:00
Greg Wilkins 8c89f141ab Revert "469341 - Not possible to use old/deprecated start properties"
This reverts commit fcd0a3b270.

Port 80 is the HTTP default
2015-06-10 13:42:43 +10:00
Joakim Erdfelt fcd0a3b270 469341 - Not possible to use old/deprecated start properties
+ Using xml for defaults, not the modules/ini section
2015-06-09 16:35:02 -07:00
Greg Wilkins 5ae9614d11 [469688] Added configuration for keystore type and provider 2015-06-10 08:46:57 +10:00
Simone Bordet b18adb525f 469633 - Make SpinLock behavior pluggable.
Renamed SpinLock to Locker, uses ReentrantLock by default, but can be
turned into a spin lock by setting the system property
org.eclipse.jetty.util.thread.Locker.spin=true.
2015-06-08 17:15:54 +02:00
Jesse McConnell bfe6c2638e [maven-release-plugin] prepare for next development iteration 2015-05-29 09:06:42 -05:00
Jesse McConnell 71e0f4d8ce [maven-release-plugin] prepare release jetty-9.2.11.v20150529 2015-05-29 09:06:36 -05:00
Greg Wilkins 69bf5ab46c Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ErrorHandler.java
	jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java
2015-05-29 21:05:26 +10:00
Greg Wilkins 4472b614b9 468747 - XSS vulnerability in HttpSpiContextHandler 2015-05-29 20:12:57 +10:00
Jesse McConnell a7087cbfbf [maven-release-plugin] prepare for next development iteration 2015-05-28 10:06:51 -05:00
Jesse McConnell 913c63e597 [maven-release-plugin] prepare release jetty-9.2.11.v20150528 2015-05-28 10:03:44 -05:00
Simone Bordet 6cabf8452e 468347 - Fix modules/debuglog.mod. 2015-05-26 18:22:22 +02:00
Greg Wilkins b2e8d2cd04 minor optimisations 2015-05-22 22:53:01 +10:00
Greg Wilkins 4028df12ca Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHttpOutputInterceptor.java
2015-05-22 10:50:33 +10:00
Greg Wilkins 68412d1958 Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-05-22 10:01:04 +10:00
Greg Wilkins 5bde7f34ea 467936 -w Check HttpOutput aggregateSize is < bufferSize 2015-05-22 09:56:51 +10:00
Greg Wilkins ff15aa4a5c Added optional http2 to https for ALPN ordering 2015-05-21 00:38:07 +10:00
Greg Wilkins 3f0fd550dc 467702 - SslContextFactory not backward compatible 2015-05-20 22:20:33 +10:00
Simone Bordet b844bdde0b Removed leftover configuration that was forgotten there. 2015-05-20 11:06:44 +02:00
Greg Wilkins 02a1350965 abstracted AbstractHandler setServer 2015-05-20 11:21:55 +10:00
Greg Wilkins c5e4abd792 467281 Remove Java 1.7 support from Jetty 9.3 2015-05-14 09:31:50 +10:00
Simone Bordet 61f6763a68 Removed example syntax leftovers. 2015-05-12 10:57:04 +02:00
Simone Bordet 1a2eca098a Fixed XML's <Ref> elements to use refid instead of id. 2015-05-12 08:55:17 +02:00
Jan Bartel fe0bbe8e2f Add scavenge interval property to jdbc-sessions.mod 2015-05-08 14:03:16 +10:00
Greg Wilkins f1f6c67acf fixed typo 2015-05-08 13:29:39 +10:00
Greg Wilkins 6428718962 457788 Powered By in o.e.j.util.Jetty conditional on sendServerVersion
moved conditional to HttpConfiguration
2015-05-08 09:44:19 +10:00
Jan Bartel 532b0019cc 466678 Make a .mod file for jdbc session management 2015-05-07 17:10:31 +10:00
Greg Wilkins 5d041ad54f 466645 Allow XmlConfiguration Properties to use Elements or Attributes 2015-05-07 16:24:11 +10:00
Jan Bartel e2c7499bae 466628 Improve IllegalStateException on ServletInputStream.setReadListener() 2015-05-07 14:24:08 +10:00
Greg Wilkins 13c7fc3c38 move keystore to test config 2015-05-07 10:35:11 +10:00
Joakim Erdfelt 8ae1de727f 466648 - jetty-ssl download of keystore should be from tags, not master
+ Using new ${jetty.tag.version} from start.jar to use
  an appropriate tag/branch/master for the download of
  the keystore
2015-05-06 16:27:25 -07:00
Greg Wilkins dd7313ca82 replaced keystore 2015-05-07 08:44:56 +10:00
Greg Wilkins ad16f0c334 fixed test integration to use example-keystore 2015-05-01 19:32:16 +10:00
Greg Wilkins 29393ace68 moved keystore to example-keystore 2015-05-01 18:23:17 +10:00
Greg Wilkins 2271464406 430951 Support SNI with ExtendedSslContextFactory
Made modules do automatic selection of Extended SSL Context if running java 8
2015-05-01 15:50:06 +10:00
Joakim Erdfelt 0443ef7b93 Fixing bad javadoc 2015-04-30 11:02:37 -07:00
Simone Bordet c04896c9cb 465857 - Support HTTP/2 clear-text server-side upgrade.
Added earlier check about the connection being upgraded to avoid
doing more work in the now obsolete connection.
2015-04-30 09:33:24 +02:00
Greg Wilkins fb958833de 464419 Removed xinetd support 2015-04-30 16:44:23 +10:00
Greg Wilkins 8b39e7ffb8 464629 JDK8 Socket customization
Added the SocketCustomizationListener class which may be added as a bean to either a Connector or a ConnectionFactory
so that customizations may be made per connector by connection type or even per connection factory.

SSL is unwrapped.
2015-04-30 11:46:10 +10:00
Greg Wilkins d5e868b645 less verbose unit tests 2015-04-30 10:58:01 +10:00
Jan Bartel e30c05cc2b Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	tests/test-integration/src/test/java/org/eclipse/jetty/test/support/TestableJettyServer.java
	tests/test-integration/src/test/resources/BIOHttp.xml
	tests/test-integration/src/test/resources/BIOHttps.xml
	tests/test-integration/src/test/resources/NIOHttp.xml
	tests/test-integration/src/test/resources/NIOHttps.xml
2015-04-30 10:44:44 +10:00
Jan Bartel 25474ff7ab 465700 NullPointerException in ResourceHandler with welcome files 2015-04-30 09:06:01 +10:00
Simone Bordet a6cc4ff2f5 465857 - Support HTTP/2 clear-text server-side upgrade.
Fixed and test both types of upgrade, from HTTP/1.1 via its
upgrade mechanism, and direct HTTP/2.
2015-04-29 22:27:50 +02:00
Simone Bordet aaaf65bf3c Code and Javadoc cleanups. 2015-04-29 22:27:50 +02:00
Simone Bordet 8bfb50176b Fixed XML syntax to create SecureRequestCustomizer. 2015-04-29 09:23:09 +02:00
Simone Bordet 49168077ce Restored default ports for http and tls to 8080 and 8443 respectively. 2015-04-29 09:16:43 +02:00
Greg Wilkins 0dc394869b 465754 Unchecked PrintWriter errors
Removed the old unused UncheckedPrintWriter
Added similar bahaviour to the ResponseWriter class
2015-04-29 14:34:24 +10:00
Greg Wilkins d5c95a1302 465747 - Jetty is failing to process all HTTP OPTIONS requests.
The Server handleOptions method was handling all OPTIONS * requests with a blank 200 response.
This has been fixed so that this method only checks that * URI is only applied to OPTIONS method.
2015-04-29 14:01:20 +10:00
Joakim Erdfelt 084a307ea1 socket.reuse-address on windows doesn't work from ServerConnector 2015-04-28 08:32:20 -07:00
Simone Bordet aa8ea82b28 Cleanup. 2015-04-27 17:21:57 +02:00
Jan Bartel 184c4d4af8 464564 NoSql sessions created inside a forward not persisted correctly 2015-04-23 14:27:11 +10:00
Greg Wilkins d434f419d2 457788 Powered By in o.e.j.util.Jetty conditional on sendServerVersion 2015-04-23 11:26:23 +10:00
Greg Wilkins e633189b48 457788 Powered By in o.e.j.util.Jetty 2015-04-23 11:07:30 +10:00
Greg Wilkins deec5291f0 460746 HttpConfiguration#setPersistentConnectionsEnabled(boolean) 2015-04-23 10:57:51 +10:00
Joakim Erdfelt f126d02944 464727 - Update Javadoc for Java 8 DocLint
+ Fixing now bad javadoc on RequestLog class
2015-04-22 08:45:57 -07:00
Greg Wilkins baede130c0 430951 Support SNI with ExtendedSslContextFactory
exclude certificates with usages
2015-04-22 17:16:41 +10:00
Greg Wilkins eee2a53197 Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-04-22 16:12:10 +10:00
Jan Bartel a7bd9d1dd9 464989 AbstractSessionManager.removeEventListener() should remove HttpSessionIdListener 2015-04-22 15:39:35 +10:00