Commit Graph

2874 Commits

Author SHA1 Message Date
Jan Bartel 6261150167 Add info to IllegalStateException on check for invalid session 2016-03-16 11:45:19 +11:00
Simone Bordet 26f8deddf7 Introduced Callback.Nested.
Refactored code that was using nested callbacks and removed
unnecessary overrides now that we have default methods.
2016-03-15 15:24:44 +01:00
Joakim Erdfelt c68d3b1d8d Updating to version 9.3.9-SNAPSHOT 2016-03-14 09:07:52 -07:00
Joakim Erdfelt 1f3b3f31f4 Updating to version 9.3.8.v20160314 2016-03-14 08:30:20 -07:00
Simone Bordet 0b82129cd8 Issue #423 (Duplicate Content-Length header not handled correctly)
Refactored tests into existing test class.
2016-03-12 00:27:48 +01:00
Simone Bordet 5f2e2820f4 Issue #423 (Duplicate Content-Length header not handled correctly)
Fixed as required by the spec, rejecting the request.
2016-03-11 22:49:24 +01:00
Jan Bartel d82b5ad65a Issue #411 Add more debug log for mongosessionmanager and remove debug printlns 2016-03-11 15:12:07 +11:00
Simone Bordet c0bc218202 Improved log formatting. 2016-03-10 16:10:45 +01:00
Jan Bartel ead37b1b57 Issue #411 MongoSessionManager does not save maxInactiveInterval and expiry correctly
Issue #415 Setting big session-timeout can overflow MAXINT
2016-03-10 18:52:34 +11:00
Greg Wilkins 4c99beeaba Issue #413 HotSwapHandler null handlers
Fixed #413
2016-03-10 12:21:06 +11:00
Greg Wilkins 53f187571d Added Test for ServletContextListener exceptions
See https://java.net/jira/browse/SERVLET_SPEC-152
2016-03-10 11:29:54 +11:00
Joakim Erdfelt 63f9224009 Merge branch 'jetty-9.3.x' of github.com:eclipse/jetty.project into jetty-9.3.x 2016-03-08 14:32:13 -07:00
Joakim Erdfelt 862ec6f848 Merge branch 'jetty-9.2.x' into jetty-9.3.x 2016-03-08 14:32:04 -07:00
Joakim Erdfelt 195a02fdaa Issue #85 - Expose TLS protocol used for connection in SecureRequestCustomizer 2016-03-08 14:27:38 -07:00
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