Commit Graph

869 Commits

Author SHA1 Message Date
Greg Wilkins caacebc223 459845 - Support upgrade from http1 to http2
functioning implementation.  Not exactly the most elegant solution, but works with nghttp2 -u
2015-03-19 12:02:54 +11:00
Greg Wilkins 93a6811580 462040 reverted and deprecated getStringField methods 2015-03-13 14:51:08 +11:00
Greg Wilkins 0dd58d2efe 459845 - Support upgrade from http1 to http2
Moved the sneaky direct upgrade to its own method and added support to detect a standard upgrade.
The standard upgrade now creates the h2c connection and decodes the settings header, but it does not yet process the
settings nor send a response to the request.
2015-03-12 16:52:17 +11:00
Greg Wilkins 48b6bec64c Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
2015-03-05 20:17:20 +11:00
Greg Wilkins f4ad0dce98 461350 Update HttpParser IllegalCharacter handling to RFC7230 2015-03-05 19:54:25 +11:00
Greg Wilkins 042de2ec9f 461452 Double release of buffer by HttpReceiverOverHTTP
Updated HttpParse to always return from parseNext when messageComplete is called.  This allows it to notice reentrant state changes
and removes the need for HttpReceiverOverHTTP.methodComplete to return true, thus avoiding the race.
2015-03-05 15:26:19 +11:00
Joakim Erdfelt a32c9ed79c Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
	jetty-start/src/main/java/org/eclipse/jetty/start/Module.java
2015-02-23 18:05:19 -07:00
Joakim Erdfelt 3e7b5f0fa9 460642 - HttpParser error 400 can expose previous buffer contents in HTTP status reason message
+ Simplifying behavior
2015-02-23 14:57:22 -07:00
Joakim Erdfelt 4df5647f6d 460642 - HttpParser error 400 can expose previous buffer contents in HTTP status reason message 2015-02-23 14:44:53 -07:00
Joakim Erdfelt 22a0cb4a28 Improving HttpField.nameHashCode 2015-02-20 10:54:28 -07:00
Joakim Erdfelt 08b4bd439e Fixing tests on http2-hpack
+ HttpField.nameHashCode() fixed to actually be US-ASCII case
  insensitive per documentation
+ Since removal of MetaData equals/hashcode, the comparison
  of the MetaData and MetaData.Response is now done entirely
  within the HpackTest
2015-02-20 10:16:03 -07:00
Simone Bordet f61cfb7016 Fixed construction of MetaData.Request and handling of HttpFields by MetaData. 2015-02-20 16:36:11 +01:00
Simone Bordet 2d932fe5c7 Removed hashCode() and equals() and fixed toString().
MetaData instances are mutable, and hashCode() and equals() were
based on those mutable fields; mutable hash codes break hash data
structures, when the object is inserted and then its hash code changes.

Fixed toString() to avoid NPE if _fields is null.
2015-02-20 16:02:54 +01:00
Greg Wilkins c22d79f673 Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	VERSION.txt
	aggregates/jetty-all/pom.xml
	apache-jsp/pom.xml
	apache-jstl/pom.xml
	examples/async-rest/async-rest-jar/pom.xml
	examples/async-rest/async-rest-webapp/pom.xml
	examples/async-rest/pom.xml
	examples/embedded/pom.xml
	examples/pom.xml
	jetty-alpn/jetty-alpn-client/pom.xml
	jetty-alpn/jetty-alpn-server/pom.xml
	jetty-alpn/pom.xml
	jetty-annotations/pom.xml
	jetty-ant/pom.xml
	jetty-cdi/pom.xml
	jetty-client/pom.xml
	jetty-continuation/pom.xml
	jetty-deploy/pom.xml
	jetty-distribution/pom.xml
	jetty-fcgi/fcgi-client/pom.xml
	jetty-fcgi/fcgi-server/pom.xml
	jetty-fcgi/pom.xml
	jetty-http-spi/pom.xml
	jetty-http/pom.xml
	jetty-io/pom.xml
	jetty-jaas/pom.xml
	jetty-jaspi/pom.xml
	jetty-jmx/pom.xml
	jetty-jndi/pom.xml
	jetty-jsp/pom.xml
	jetty-jspc-maven-plugin/pom.xml
	jetty-maven-plugin/pom.xml
	jetty-monitor/pom.xml
	jetty-nosql/pom.xml
	jetty-osgi/jetty-osgi-alpn/pom.xml
	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
	jetty-osgi/jetty-osgi-boot/pom.xml
	jetty-osgi/jetty-osgi-httpservice/pom.xml
	jetty-osgi/jetty-osgi-npn/pom.xml
	jetty-osgi/pom.xml
	jetty-osgi/test-jetty-osgi-context/pom.xml
	jetty-osgi/test-jetty-osgi-webapp/pom.xml
	jetty-osgi/test-jetty-osgi/pom.xml
	jetty-plus/pom.xml
	jetty-proxy/pom.xml
	jetty-quickstart/pom.xml
	jetty-rewrite/pom.xml
	jetty-runner/pom.xml
	jetty-security/pom.xml
	jetty-server/pom.xml
	jetty-servlet/pom.xml
	jetty-servlets/pom.xml
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/AsyncGzipFilter.java
	jetty-spdy/pom.xml
	jetty-spdy/spdy-alpn-tests/pom.xml
	jetty-spdy/spdy-client/pom.xml
	jetty-spdy/spdy-core/pom.xml
	jetty-spdy/spdy-example-webapp/pom.xml
	jetty-spdy/spdy-http-client-transport/pom.xml
	jetty-spdy/spdy-http-common/pom.xml
	jetty-spdy/spdy-http-server/pom.xml
	jetty-spdy/spdy-npn-tests/pom.xml
	jetty-spdy/spdy-server/pom.xml
	jetty-spring/pom.xml
	jetty-start/pom.xml
	jetty-util-ajax/pom.xml
	jetty-util/pom.xml
	jetty-webapp/pom.xml
	jetty-websocket/javax-websocket-client-impl/pom.xml
	jetty-websocket/javax-websocket-server-impl/pom.xml
	jetty-websocket/pom.xml
	jetty-websocket/websocket-api/pom.xml
	jetty-websocket/websocket-client/pom.xml
	jetty-websocket/websocket-common/pom.xml
	jetty-websocket/websocket-server/pom.xml
	jetty-websocket/websocket-servlet/pom.xml
	jetty-xml/pom.xml
	pom.xml
	tests/pom.xml
	tests/test-continuation/pom.xml
	tests/test-integration/pom.xml
	tests/test-jmx/jmx-webapp-it/pom.xml
	tests/test-jmx/jmx-webapp/pom.xml
	tests/test-jmx/pom.xml
	tests/test-loginservice/pom.xml
	tests/test-quickstart/pom.xml
	tests/test-sessions/pom.xml
	tests/test-sessions/test-hash-sessions/pom.xml
	tests/test-sessions/test-jdbc-sessions/pom.xml
	tests/test-sessions/test-mongodb-sessions/pom.xml
	tests/test-sessions/test-sessions-common/pom.xml
	tests/test-webapps/pom.xml
	tests/test-webapps/test-jaas-webapp/pom.xml
	tests/test-webapps/test-jetty-webapp/pom.xml
	tests/test-webapps/test-jndi-webapp/pom.xml
	tests/test-webapps/test-mock-resources/pom.xml
	tests/test-webapps/test-proxy-webapp/pom.xml
	tests/test-webapps/test-servlet-spec/pom.xml
	tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml
	tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml
	tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml
	tests/test-webapps/test-webapp-rfc2616/pom.xml
2015-02-19 14:05:00 +11:00
Greg Wilkins 13040f300d 460291 - AsyncGzipFilter Mappings
Added test harness to confirm mapping precidence
2015-02-19 09:15:38 +11:00
Greg Wilkins b78faff1bf improved exception messages during tests 2015-02-18 17:35:43 +11:00
Greg Wilkins c3332e7d2e 459845 - Support upgrade from http1 to http2/websocket
Added support for unofficial "upgrade" from http/1 to h2c
2015-02-13 12:16:03 +11:00
Greg Wilkins 0f7ee8d607 Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpVersion.java
	jetty-io/src/main/java/org/eclipse/jetty/io/EndPoint.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2015-02-13 11:45:56 +11:00
Greg Wilkins 2b2a70a93a 459845 Support upgrade
Added the concept of UpgradeFrom and UpgradeTo connections that support
transferring a buffer with content before opening new connection.
Aded EndPoint.update method as utility
2015-02-13 11:41:18 +11:00
Greg Wilkins ca8015828c 458663 Handle null header values 2015-02-11 14:30:26 +11:00
Greg Wilkins afdc522d20 fixed merge 2015-01-23 12:15:28 +01:00
Greg Wilkins 5b42345cc6 Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-01-23 11:43:20 +01:00
Greg Wilkins 7e608a70eb 458209 Length check for HttpMethod MOVE lookahead 2015-01-23 11:04:33 +01:00
Greg Wilkins e1cc5fb487 Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
	jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +01:00
Joakim Erdfelt a3201a3c81 Happy New Year 2015 2015-01-07 17:06:59 -07:00
Joakim Erdfelt 6a0668b7a1 Happy New Year 2015 2015-01-07 17:03:30 -07:00
Simone Bordet 19570a7530 Removed printStackTrace() call. 2015-01-05 13:31:48 +01:00
Greg Wilkins a89a6927e8 yet another refactor of HttpInput.... must read -1 before isFinished is true 2014-12-24 19:34:06 +01:00
Greg Wilkins fecc03a2f5 fixed some more tests after EWYK refactor 2014-12-23 22:20:49 +01:00
Greg Wilkins dfe9dc3115 Further experimentation with PushBuilder 2014-12-09 12:27:39 +01:00
Simone Bordet 04b74d5ffe Merged branch 'jetty-9.2.x' into 'master'. 2014-12-02 21:09:23 +01:00
Simone Bordet ba3228fa21 453793 - _maxHeaderBytes>0 is not verified in parseNext() when in State.CLOSED.
Added expression to check whether _maxHeaderBytes>0.
2014-12-02 21:06:51 +01:00
Greg Wilkins 174f2992a8 439374 Use utf-8 as default charset for html 2014-11-27 17:04:54 +11:00
Simone Bordet 57f90ae7d1 452465 - 100% CPU spin on page reload.
Fixed by adding a MetaData.recycle() method that properly recycles
the MetaData.Request object so that HttpChannelOverHttp.earlyEOF()
properly closes the connection when it's idle.
2014-11-20 13:00:02 +01:00
Greg Wilkins ab2e9c357f Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
2014-11-20 16:34:30 +11:00
Greg Wilkins 1915e592b5 452424 Do not add Date header if already set 2014-11-20 15:33:22 +11:00
Greg Wilkins 593cb39059 Implemented the PROXY protocol
Removed old HttpParser PROXY tests
2014-11-14 10:28:04 +11:00
Greg Wilkins a62f68e438 Added 421 MISDIRECTED_REQUEST 2014-11-14 09:46:46 +11:00
Greg Wilkins a308c087ed Implemented the PROXY protocol
Moved the PROXY protocol support from HttpParser to a ConnectionFactory.
See http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt
2014-11-13 19:55:01 +11:00
Greg Wilkins 1834e360ea Added RFC6585 status codes and use 429 for DoSFilter 2014-11-12 14:16:41 +11:00
Greg Wilkins 47a92e9608 minor cleanups of HttpContent 2014-11-06 16:46:47 +11:00
Joakim Erdfelt b314bfcc94 446944 - ServletTester and HttpTester should be in <classifier>tests</classifier>
Moving HttpTester to "tests" scoped jetty-http artifact.

 + HttpTester, a testing class, was used by jetty-servlets,
   embedded-jetty-examples, and test-integration, all from
   those testing scopes.  Moved the HttpTester into the
   pre-existing jetty-http "tests" classified artifact.

Moving ServletTester to "tests" scoped jetty-servlet artifact.

 + ServletTester, a testing class, was used by jetty-servlets,
   test-integration, and test-jetty-webapp.  This move puts
   this class in the pre-existing jetty-servlet "tests" classified
   artifact.
2014-10-29 09:50:32 -07:00
Joakim Erdfelt 8a72a153a1 Merge branch 'jetty-9.2.x' 2014-10-28 12:32:55 -07:00
Joakim Erdfelt 264e0bce39 Revert "Moving HttpTester to "tests" scoped jetty-http artifact."
This reverts commit 8d85940077.
2014-10-28 07:50:56 -07:00
Greg Wilkins 31e448ffd6 Removed duplication of HttpGenerator$Info vs http.MetaData
Use MetaData throughout code base
2014-10-24 15:51:20 +11:00
Greg Wilkins 738c47bc55 447515 Remove GzipFilter
Moved all usages of GzipFilter to GzipHandler
added support to ServerContextHandler to create a GzipHandler
2014-10-24 08:17:05 +11:00
Greg Wilkins ec79a6f88e Improve HTTP header pre-encoding
The HttpContent class has been reworked to store HttpField instances, we may be generated on
demand or instances of PreEncodedHttpField.

The encoding of HTTP2 fields has been generalized to handle both indexed and literal fields, selected
by header enum set.

Default servlet and response classes have been cleaned up in how they set response headers.
2014-10-16 12:31:37 +11:00
Simone Bordet fb590a5fff Fixed merge conflict. 2014-10-13 17:10:03 +02:00
Simone Bordet e7d830c26e Merged branch 'jetty-9.2.x' into 'master'. 2014-10-13 16:57:52 +02:00
Joakim Erdfelt 8d85940077 Moving HttpTester to "tests" scoped jetty-http artifact.
+ HttpTester, a testing class, was used by jetty-servlets,
   embedded-jetty-examples, and test-integration, all from
   those testing scopes.  Moved the HttpTester into the
   pre-existing jetty-http "tests" classified artifact.
2014-10-13 07:35:12 -07:00
Joakim Erdfelt 1511be8c97 Committing proper testcase for bug 440823 2014-10-11 22:51:15 -07:00
Greg Wilkins a94e0287b9 446559 Avoid spin consuming extra data 2014-10-10 22:30:54 +11:00
Greg Wilkins bb2d77f00b Merge remote-tracking branch 'origin/jetty-9.2.x' 2014-10-10 14:20:30 +11:00
Greg Wilkins cd15bb187d 446559 Avoid spin consuming extra data 2014-10-10 13:16:41 +11:00
Jan Bartel f07387c703 442942 Content sent with status 204 (No Content) 2014-10-10 12:58:45 +11:00
Greg Wilkins 40a7d5984e 444222 replace CRLF in header values with whitespace rather than ? 2014-09-23 11:33:44 +02:00
Greg Wilkins 28cc68b210 444222 replace CRLF in header values with whitespace rather than ? 2014-09-19 09:49:09 +10:00
Greg Wilkins 2018098225 Merge remote-tracking branch 'origin/jetty-9.2.x'
Conflicts:
	jetty-io/src/main/java/org/eclipse/jetty/io/ssl/SslConnection.java
2014-09-18 16:36:51 +10:00
Greg Wilkins 88f4e5ab86 444222 added explicit folded header test 2014-09-18 14:36:24 +10:00
Greg Wilkins 5b97d652e1 Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-alpn/jetty-alpn-server/src/main/config/modules/protonego-impl/alpn.mod
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-npn/jetty-npn-server/src/main/config/modules/protonego-impl/npn.mod
	jetty-spdy/spdy-http-server/src/main/java/org/eclipse/jetty/spdy/server/http/HttpChannelOverSPDY.java
2014-09-04 17:43:18 +10:00
Greg Wilkins ed8abd1d53 443049 Improved HttpParser illegal character messages 2014-09-04 09:27:42 +10:00
Greg Wilkins e5c1d66916 avoid default port in http2 push 2014-08-22 16:25:20 +10:00
Greg Wilkins 98b654ba20 Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-distribution/pom.xml
2014-08-14 08:38:25 +10:00
Greg Wilkins 2af613a28b improved debugging output 2014-08-13 15:56:02 +10:00
Greg Wilkins 68a3ca8e31 improved debug logging of settings 2014-08-13 12:00:32 +10:00
Greg Wilkins 4d7ead76ce basic push cache filter 2014-08-08 17:01:05 +10:00
Greg Wilkins a4d4b3ab57 fix work around classloaders for field preencoders 2014-08-07 09:22:22 +10:00
Greg Wilkins 64e49a1fe5 work around classloaders for field preencoders 2014-08-07 09:10:35 +10:00
Greg Wilkins 17f46665df preencoded httpfield optimisation 2014-08-06 21:09:26 +10:00
Greg Wilkins b5971484a5 Basic push mechanism skeleton 2014-08-06 10:50:55 +10:00
Greg Wilkins 8108a811f0 extra HttpFields tests 2014-08-06 10:15:55 +10:00
Greg Wilkins a00e65cb1f optimised HttpFields fixes 2014-08-05 17:43:31 +10:00
Greg Wilkins bec34b460f optimised HttpFields 2014-08-05 17:26:27 +10:00
Greg Wilkins d7f2c42e2d misc optimisation of http2 field creation 2014-08-05 12:55:37 +10:00
Greg Wilkins 1fb07644a1 Use HttpHeader enum for :path and similar h2 fields 2014-08-02 16:37:43 +10:00
Greg Wilkins cd59d0085e improve known header handling in hpack encoding 2014-08-02 15:40:15 +10:00
Greg Wilkins 9c3eedfea8 Updates to hpack for hpack-09 draft 2014-07-31 13:26:23 +10:00
Greg Wilkins a14b2be0e6 Merge branch 'jetty-http2' into refset 2014-07-31 11:58:30 +10:00
Greg Wilkins 8905b979ec RFC7238 Permanent Redirect 308 defined 2014-07-28 15:27:17 +10:00
Greg Wilkins 093eea62b9 Revert "RFC7238 Permanent Redirect 308 defined"
This reverts commit 5d289c0a7b.
Keep RFC723x changes in 9.3 branch
2014-07-28 15:24:44 +10:00
Greg Wilkins 5d289c0a7b RFC7238 Permanent Redirect 308 defined 2014-07-28 14:58:03 +10:00
Greg Wilkins c13be6d932 Merge branch 'jetty-http2' into refset
Conflicts:
	jetty-http2/http2-hpack/src/test/java/org/eclipse/jetty/http2/hpack/HpackEncoderTest.java
2014-07-25 18:33:10 +10:00
Greg Wilkins eaf374fa58 refactored Dispatcher for new HttpURI 2014-07-25 17:28:35 +10:00
Greg Wilkins 22e57ef7b7 refactored Request to use new HttpURI 2014-07-25 15:03:51 +10:00
Greg Wilkins 30123607c6 Major refactor of metadata and HttpURI
This refactor strives to remove duplication between the Metadata class and the HttpURI class.

Both classes have been made mutable (as they partially were anyway so best not to pretend).

HttpURI now holds the decomposed strings rather than a single string with indexes. This allows it to be rebuilt after changing just parts of the URI. It is now a lot more similar to the
JVM URI class and we could consider replacing it (after checking peformance).

Next step is to refactor the Request class to prevent it duplicating these fields.
2014-07-24 15:49:52 +10:00
Greg Wilkins 7f62f2600b refactored URI handling 2014-07-20 10:23:47 +10:00
Greg Wilkins d4e7c0a279 update encoding strategy for no ref-set 2014-07-18 15:59:41 +10:00
Greg Wilkins 64e5c1e0ce Merge remote-tracking branch 'origin/master' into jetty-http2 2014-07-17 11:32:27 +10:00
Joakim Erdfelt cecb8d6d04 Minor typo fix 2014-07-17 08:31:08 +10:00
Greg Wilkins 6893027ecd Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-server/src/main/java/org/eclipse/jetty/server/Request.java
2014-07-16 17:23:29 +10:00
Greg Wilkins 5f033b48d5 438204 leave IPv6 addresses [] wrapped in getServerName 2014-07-16 16:39:02 +10:00
Greg Wilkins 4d2a580c2c 439375 preferred rfc7231 format is mime;charset=lowercase-9 2014-07-11 17:56:08 +10:00
Greg Wilkins f9ffefbe13 refactored to avoid copying MetaData.Request instances 2014-07-11 16:35:25 +10:00
Greg Wilkins fff2dd2f2d misc test fixes for rfc7230 issues 2014-07-11 16:10:06 +10:00
Greg Wilkins f594a6fc66 HttpField.contains ignores ;q=0 items 2014-07-11 16:08:18 +10:00
Greg Wilkins 5e281dd449 Merge remote-tracking branch 'origin/master' into jetty-http2
Conflicts:
	jetty-util/src/main/java/org/eclipse/jetty/util/IteratingCallback.java
2014-07-10 14:43:39 +10:00
Greg Wilkins 55ca09a00e 438190 findbug improvements 2014-07-10 14:41:32 +10:00
Greg Wilkins 068ec21419 438204 getServerName returns IPv6 addresses wrapped in [] 2014-07-09 16:44:34 +10:00
Greg Wilkins 42e1a60d65 438204 getServerName returns IPv6 addresses wrapped in [] 2014-07-09 14:38:06 +10:00
Greg Wilkins c8ee504291 rfc7230 ignore null value headers 2014-07-03 15:53:12 +10:00
Simone Bordet 66f3913527 Merged branch 'origin/master' into 'jetty-http2'. 2014-06-25 12:34:19 +02:00
Simone Bordet 3ff4195dbc Guarded calls to LOG.debug() with if (LOG.isDebugEnabled()) to reduce allocation of varargs Object[]. 2014-06-25 12:26:45 +02:00
Greg Wilkins f93a409589 Merge remote-tracking branch 'origin/master' into jetty-http2 2014-06-24 17:33:51 +02:00
Greg Wilkins 28ad689bcb 437996 avoid async status race by not setting 200 on handled 2014-06-24 12:27:03 +02:00
Greg Wilkins 9acf971cc1 cache path URI in table 2014-06-18 15:26:33 +02:00
Greg Wilkins 7fa4f1e9f8 cleaned up authority handling 2014-06-17 19:40:09 +02:00
Greg Wilkins 3fcb910c1a improved HttpField.contains 2014-06-17 19:02:53 +02:00
Simone Bordet 3832a8645d Properly implemented hashCode() and equals(). 2014-06-17 18:52:42 +02:00
Simone Bordet 2b494fde0e Miscellaneous refactorings. 2014-06-17 16:23:06 +02:00
Greg Wilkins 85cb290e1c minor clean ups 2014-06-17 15:39:55 +02:00
Greg Wilkins 0539b48b8a nicer constructors 2014-06-17 15:28:40 +02:00
Greg Wilkins 25295456ae renamed HTTP/2.0 to HTTP/2 2014-06-17 00:12:57 +02:00
Greg Wilkins 272e1d8da5 Refactored HttpChannel to not have direct HttpParser dependency 2014-06-17 00:02:50 +02:00
Simone Bordet adaeeefe32 Merged branch 'master' into 'jetty-http2'. 2014-06-16 16:08:40 +02:00
Greg Wilkins 1666f54b50 revert httpfields 2014-06-11 17:41:52 +02:00
Greg Wilkins c319c19125 convert MetaData to HttpField as a list 2014-06-11 16:53:17 +02:00
Greg Wilkins bbd61f8e19 Multiple mixed in changes and improvements
Simplified HttpParser as per rfc7230
implemented local/remote hpack max table sizes
2014-06-11 15:16:40 +02:00
Jan Bartel 144a460407 436894 GzipFilter code cleanup 2014-06-10 16:28:45 +02:00
Greg Wilkins 3c321e9b8f split authority field and hold results in header table 2014-06-09 15:34:09 +02:00
Greg Wilkins b2296cc2d4 simplified startRequest 2014-06-09 14:12:46 +02:00
Greg Wilkins 58ed30e710 header table mostly functional 2014-06-08 11:10:34 +02:00
Greg Wilkins d19eef3403 more tests 2014-06-04 12:05:31 +02:00
Jesse McConnell 5e3e0930e0 Revert "434810 better handling of bad messages"
This reverts commit 1e524f378e.
2014-05-26 11:20:07 -05:00
Greg Wilkins 1e524f378e 434810 better handling of bad messages 2014-05-21 20:13:21 +02:00
Simone Bordet 43454ebd0a Merged branch 'master' into '431642'. 2014-04-30 15:34:54 +02:00
Simone Bordet 95c6bad654 Improved handling of return values from parser callback, by returning
as early as possible to avoid race conditions with application code
 that may have returned true and reentered the parsing code.
2014-04-30 14:58:14 +02:00
Greg Wilkins 2e261b75d6 433692 improved buffer resizing 2014-04-29 20:36:13 +02:00
Greg Wilkins 4785121a53 431642 Allow for immediate return from content callback in HttpParser 2014-04-10 12:59:07 +10:00
Greg Wilkins 4dbabd72f2 429734 Implemented the HA ProxyProtocol 2014-04-04 08:47:37 +11:00
Simone Bordet 1089a33578 Fixed imports referencing JUnit 3 and old matcher libraries. 2014-03-27 15:34:48 +01:00
Greg Wilkins 31a377d829 425991 added qml mime type 2014-03-20 12:49:49 +11:00
Greg Wilkins f092561a8a 428383 limit white space between requests 2014-02-18 10:02:00 +11:00
Simone Bordet 3486046f1e 426870 - HTTP 1.0 Request with Connection: keep-alive and response
content hangs.

Refactored tests.
2014-01-29 18:26:32 +01:00
Simone Bordet cbdfd87d78 426870 - HTTP 1.0 Request with Connection: keep-alive and response
content hangs.

Fixed HttpGenerator to stay in the EOF_CONTENT mode if such case is
detected (while before it was moving to NO_CONTENT mode).
By staying in EOF_CONTENT mode the generator is made non-persistent
and eventually the connection is closed, signaling the end-of-content
to the client.
2014-01-29 11:20:00 +01:00
Joakim Erdfelt 5ed1a9dfb4 Adding parameterized version of HttpGeneratorServerTest.testHTTP() 2014-01-28 11:57:44 -07:00
Simone Bordet 7ce6aee304 426739 - Response with Connection: keep-alive truncated.
Fixed copy/paste error.
Also removed unnecessary constant.
2014-01-27 18:57:24 +01:00
Simone Bordet a22cfbd885 425049 - add json mime mapping to mime.properties. 2014-01-07 21:46:22 +01:00
Joakim Erdfelt a12fd9ea03 Happy New Year - 2014! 2014-01-02 14:50:14 -07:00
Greg Wilkins 084ed61711 423695 - <HT> Horizontal-tab used as HTTP Header Field separator unsupported
Added tests to confirm that multivalue parsing is OK
2013-12-12 15:15:54 +11:00
Joakim Erdfelt 3eb959a1e2 423695 - <HT> Horizontal-tab used as HTTP Header Field separator unsupported
+ Adding suggested fix to HttpParser
2013-12-10 06:58:00 -07:00
Joakim Erdfelt a345bdf4ff 423695 - <HT> Horizontal-tab used as HTTP Header Field separator unsupported
+ Adding @Ignore'd testcase HttpParserTest.testHeaderTab()
2013-12-10 06:31:56 -07:00
Greg Wilkins f1fc661a2c reenabled integration and RFC2616 tests 2013-11-29 17:33:05 +11:00
Greg Wilkins 8adf552c80 418888 Added strict mode to HttpGenerator 2013-11-22 22:54:09 +11:00
Greg Wilkins f567bddad9 global clean up imports 2013-11-04 13:48:03 +11:00
Greg Wilkins eb3bb660b5 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/util/DigestAuthentication.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpReceiverTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpSenderTest.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpField.java
	jetty-server/src/test/java/org/eclipse/jetty/server/AbstractHttpTest.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/AbstractDoSFilterTest.java
	jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/generator/HeadersBlockGenerator.java
	jetty-spdy/spdy-core/src/main/java/org/eclipse/jetty/spdy/parser/HeadersBlockParser.java
	jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/ClientUpgradeRequest.java
	jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketFrame.java
	jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java
	jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/DeflateCompressionMethodTest.java
	jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/PerMessageDeflateExtensionTest.java
2013-11-03 18:22:09 +11:00
Mikhail Mazursky 6b0269a16d [Bug 420930] Use Charset to specify character encoding
Signed-off-by: Mikhail Mazursky <mikhail.mazursky@gmail.com>
2013-11-02 14:44:36 +06:00
Greg Wilkins d5f83a8159 420034 Removed threads/timers from Date caching 2013-10-24 11:09:17 +11:00
Greg Wilkins cd1035d1d6 minor code cleanups 2013-10-21 16:30:22 +11:00
Greg Wilkins 33e2055468 minor code cleanups 2013-10-21 15:50:22 +11:00
Greg Wilkins 82a991dd07 Merge remote-tracking branch 'origin/master' into jetty-9.1 2013-10-21 12:32:54 +11:00
Greg Wilkins 24c1b30495 418732 - Add whiteListByPath mode to IPAccessHandler
Fixed the contribution.

The PathMap changes were not correct as "" is the pattern for "/" path only.
Also removed the use of the lazy list
2013-10-21 12:20:34 +11:00
Joakim Erdfelt dbc4f5357a Merge fixes
+ @Ignore on PathMapTest
2013-10-18 16:12:19 -07:00
Joakim Erdfelt d6d54e048b Merge branch 'master' into jetty-9.1
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ErrorPageErrorHandler.java
	jetty-websocket/websocket-client/src/main/java/org/eclipse/jetty/websocket/client/io/UpgradeConnection.java
	jetty-websocket/websocket-client/src/test/java/org/eclipse/jetty/websocket/client/WebSocketClientTest.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/AnnotatedMaxMessageSizeTest.java
2013-10-18 16:12:00 -07:00
Constantine Linnick b4052a2b53 [Bug 418732] Swap PathMap with IPAddressMap, also fix PathMap initialization bug
Signed-off-by: Constantine Linnick <theaspect@gmail.com>
2013-10-18 01:05:44 -04:00
Greg Wilkins f3b393aa5d Refactored complexity out of HttpFields
In preparation of merging Fields class and supporting HTTP/2.0 HPACK
2013-10-17 21:35:11 +11:00
Greg Wilkins 0fd656dcbe Merge remote-tracking branch 'origin/master' into jetty-9.1 2013-09-30 13:20:54 +10:00
Greg Wilkins a59439241f 418227 Null cookie value test 2013-09-30 12:59:34 +10:00
Joakim Erdfelt ac40e7ab6a Fixing various javadoc errors 2013-09-25 08:11:32 -07:00
Greg Wilkins 4708c907c1 417284 Precompiled regex in HttpField 2013-09-23 15:19:41 +10:00
Greg Wilkins 843e94e4e0 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-server/src/test/java/org/eclipse/jetty/server/RequestTest.java
2013-09-09 17:11:38 +10:00
Greg Wilkins e2e1b47edf 416015 Handle null Accept-Language and other headers 2013-09-09 16:51:37 +10:00
Greg Wilkins 070ce9dd22 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
	jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java
2013-09-09 15:41:17 +10:00
Mikhail Mazursky 767faece5c [Bug 415999] Fix some of FindBugs warnings
Mostly not closed streams/DB resources are fixed. But also less
important things.

Signed-off-by: Mikhail Mazursky <mikhail.mazursky@gmail.com>
2013-09-09 00:24:31 -04:00
Jan Bartel cdd95bb551 Merge remote-tracking branch 'origin/jetty-8' 2013-09-09 12:42:56 +10:00
Jan Bartel 11085742c8 416787 StringIndexOutOfBounds with a pathMap of "" 2013-09-09 12:41:28 +10:00
Jan Bartel 67bdc29b9b 416787 StringIndexOutOfBounds with a pathMap of "" 2013-09-09 12:30:52 +10:00
Simone Bordet 400f0ce5a2 Made remove() methods return the removed value. 2013-09-08 23:02:24 +02:00
Simone Bordet 8422dd5b1a Relaxed accessibility modifiers of a few methods to support FCGI
parsing, and introduced method setResponseStatus(int) to set the
response status programmatically (since in FCGI the response line does
not exist and therefore it is not parsed).
2013-09-03 16:10:07 +02:00
Greg Wilkins 44b07f44bb Merge remote-tracking branch 'origin/master' into jetty-9.1 2013-08-15 10:01:19 +10:00
Greg Wilkins 89f927ad0f 414898 Only upgrade v0 to v1 cookies on dquote , ; backslash space and tab in the value 2013-08-15 09:11:41 +10:00
Joakim Erdfelt aef8071d1d Fixing malformed Javadoc warnings in jetty-http 2013-08-14 12:46:25 -07:00
Greg Wilkins 1e25778d57 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java
2013-08-13 00:44:39 +10:00
Greg Wilkins 43946c62e0 414449 Added HttpParser strict mode for case sensitivity 2013-08-12 23:02:08 +10:00
Greg Wilkins 009113aacb 414640 HTTP header value encoding
fixed issues with merge
2013-08-09 16:31:11 +10:00
Greg Wilkins 8ce87ffafc Merge remote-tracking branch 'origin/master' into jetty-9.1 2013-08-09 16:12:55 +10:00
Greg Wilkins 7c2095725f 414640 HTTP header value encoding
Allow URL to be any encoding (pass the bytes and by default assume UTF-8), the header values are in ISO_8859_1 and everything else
must be US_ASCII
2013-08-09 16:11:59 +10:00
Greg Wilkins dbbc43edb1 414640 Improved Bad Message handling for non US_ASCII headers 2013-08-09 14:16:21 +10:00
Greg Wilkins 34cfc3ed10 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java
	jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java
2013-08-09 13:50:49 +10:00
Greg Wilkins a779425994 414101 Do not escape special characters in cookies 2013-08-09 12:42:52 +10:00
Simone Bordet 89be2de57f Merged branch 'master' into 'jetty-9.1'. 2013-07-26 19:17:30 +02:00
Simone Bordet 61ea4d6705 Fixed method parseResponse() that should never return null.
The response is "filled" by parser events even if at the end of
the parsing the parser returns false.
2013-07-26 19:07:39 +02:00
Simone Bordet 9d571af7b0 Merged branch 'master' into 'jetty-9.1'. 2013-07-26 13:55:05 +02:00
Jan Bartel e6974dadab Harmonize with jetty-9 apis 2013-07-26 18:01:37 +10:00
Jan Bartel 72b077921d Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-07-25 11:26:35 +10:00
Simone Bordet f4a41efaad Merged branch 'master' into 'jetty-9.1'. 2013-07-24 11:21:36 +02:00
Simone Bordet 0f702624a3 410668 - HTTP client should support the PATCH method.
Modified the Request interface to add method(String) so that
additional HTTP methods (such as from WebDAV) can be used.
2013-07-24 10:33:42 +02:00
Greg Wilkins 8645849272 398467 Servlet 3.1 Non Blocking IO
Added ByteBuffer write and improved test harnesses
2013-07-18 12:53:07 +10:00
Greg Wilkins 7303341ecf 398467 Servlet 3.1 Non Blocking IO
more test fixes
2013-07-11 18:45:04 +10:00
Greg Wilkins cd97b3dcbf 398467 Servlet 3.1 Non Blocking IO
fixed more tests
2013-07-11 15:57:42 +10:00
Simone Bordet 8eb6649709 412712 - HttpClient does not send the terminal chunk after partial writes.
HttpGenerator._header and HttpGenerator._buffer may be null when
the content is written after a partial write.
In this case, the terminal chunk was not prepared, and therefore never
written.

The fix simply creates a HttpGenerator._header to prepare the terminal
chunk, so that it will be written.
2013-07-10 22:57:48 +02:00
Greg Wilkins e35914e400 Merge remote-tracking branch 'origin/master' into jetty-9.1
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpConnection.java
2013-07-09 00:32:41 +10:00
Greg Wilkins 809c3aa472 412442 Avoid connection timeout after FIN-FIN close 2013-07-08 23:23:40 +10:00
Greg Wilkins 70b285eabd 398467 Servlet 3.1 Non Blocking IO
fixed some tests
2013-07-08 14:59:08 +10:00
Greg Wilkins 4a49a5e3f0 398467 Servlet 3.1 Non Blocking IO
Handle bad listeners
2013-07-08 13:08:53 +10:00
Greg Wilkins 981102fda5 398467 Servlet 3.1 Non Blocking IO
Asynchronous reads working.
2013-07-05 18:11:09 +10:00
Thomas Becker 8b31188ca7 405424 add X-Powered-By and Server header to SPDY 2013-07-01 21:57:22 +02:00
Thomas Becker 260b21f7df 405424 add X-Powered-By and Server header to SPDY 2013-07-01 17:08:35 +02:00
Joakim Erdfelt 568bb3db0d Merge branch 'jetty-7' into jetty-8 2013-06-28 10:21:17 -07:00
Joakim Erdfelt 162cbc1416 411909 - GzipFilter flushbuffer() results in erroneous finish() call
+ Bad finish() call changed to more appropriate flush() call
2013-06-28 10:20:20 -07:00
Jan Bartel 26b4db5c7d Merge branch 'master' of ssh://git.eclipse.org/gitroot/jetty/org.eclipse.jetty.project 2013-06-24 17:29:03 +10:00
Jan Bartel 7ce05f2c49 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/Response.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java
	test-jetty-servlet/src/main/java/org/eclipse/jetty/testing/HttpTester.java
2013-06-24 17:28:34 +10:00
Greg Wilkins 4d0a796f72 405424 X-Powered-By header 2013-06-24 17:09:44 +10:00
Greg Wilkins 0b804b3611 improved javadoc 2013-06-20 09:53:39 +10:00
Greg Wilkins 7bb3a7be28 409556 Resource files not closed
Made Resource a closeable so that it is easier to close in a try(){} block. Deprecated release() and made it close() instead.

FileResource no longer extends URLResource as it can more efficiently implement all the methods with pure File operations and have no
connections or streams that need to be release/closed
2013-06-03 18:21:11 +10:00
Greg Wilkins 8a09c4c787 409545 Change HttpChannel contract
Ensure HttpParser always calls sequential callbacks by avoiding |=
2013-05-31 10:03:35 +10:00
Greg Wilkins d8f2350f50 398467 Servlet 3.1 Non Blocking IO
Removed double dispatch due to HttpPArser content handler returning true for deferred dispatch.
2013-05-30 16:15:04 +10:00
Greg Wilkins 4996278849 Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-05-30 09:53:10 +10:00
Greg Wilkins ecbb532897 408909 GzipFilter setting of headers when reset and/or not compressed
defer commit until aggregate buffer overflows
2013-05-30 09:49:50 +10:00
Greg Wilkins 6ef865b153 Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	VERSION.txt
	example-jetty-embedded/pom.xml
	jetty-aggregate/jetty-all-server/pom.xml
	jetty-aggregate/jetty-all/pom.xml
	jetty-aggregate/jetty-client/pom.xml
	jetty-aggregate/jetty-plus/pom.xml
	jetty-aggregate/jetty-server/pom.xml
	jetty-aggregate/jetty-servlet/pom.xml
	jetty-aggregate/jetty-webapp/pom.xml
	jetty-aggregate/jetty-websocket/pom.xml
	jetty-aggregate/pom.xml
	jetty-ajp/pom.xml
	jetty-annotations/pom.xml
	jetty-client/pom.xml
	jetty-continuation/pom.xml
	jetty-deploy/pom.xml
	jetty-distribution/pom.xml
	jetty-http-spi/pom.xml
	jetty-http/pom.xml
	jetty-io/pom.xml
	jetty-jaspi/pom.xml
	jetty-jmx/pom.xml
	jetty-jndi/pom.xml
	jetty-jsp/pom.xml
	jetty-monitor/pom.xml
	jetty-nested/pom.xml
	jetty-nosql/pom.xml
	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
	jetty-osgi/jetty-osgi-boot/pom.xml
	jetty-osgi/jetty-osgi-httpservice/pom.xml
	jetty-osgi/pom.xml
	jetty-osgi/test-jetty-osgi-context/pom.xml
	jetty-osgi/test-jetty-osgi-webapp/pom.xml
	jetty-osgi/test-jetty-osgi/pom.xml
	jetty-overlay-deployer/pom.xml
	jetty-plus/pom.xml
	jetty-policy/pom.xml
	jetty-rewrite/pom.xml
	jetty-security/pom.xml
	jetty-server/pom.xml
	jetty-servlet/pom.xml
	jetty-servlets/pom.xml
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/gzip/GzipTester.java
	jetty-spdy/pom.xml
	jetty-spdy/spdy-core/pom.xml
	jetty-spdy/spdy-jetty-http-webapp/pom.xml
	jetty-spdy/spdy-jetty-http/pom.xml
	jetty-spdy/spdy-jetty/pom.xml
	jetty-start/pom.xml
	jetty-util/pom.xml
	jetty-webapp/pom.xml
	jetty-websocket/pom.xml
	jetty-xml/pom.xml
	pom.xml
	test-continuation/pom.xml
	test-jetty-nested/pom.xml
	test-jetty-servlet/pom.xml
	test-jetty-webapp/pom.xml
	tests/pom.xml
	tests/test-integration/pom.xml
	tests/test-loginservice/pom.xml
	tests/test-sessions/pom.xml
	tests/test-sessions/test-hash-sessions/pom.xml
	tests/test-sessions/test-jdbc-sessions/pom.xml
	tests/test-sessions/test-mongodb-sessions/pom.xml
	tests/test-sessions/test-sessions-common/pom.xml
	tests/test-webapps/pom.xml
	tests/test-webapps/test-webapp-rfc2616/pom.xml
2013-05-27 16:47:27 +10:00
Greg Wilkins 16994cbd6c 408909 GzipFilter setting of headers when reset and/or not compressed
The gzip filter now sets deferred headers (content-length and etag) when it decides not to commit.
Also does not allow a reset after a decision to commit
2013-05-27 16:09:12 +10:00
Jesse McConnell 74a4077dad Add package-info.java files to all jetty packages. 2013-05-21 15:09:49 -05:00
Greg Wilkins fce27416e3 406923 Accept CRLF or LF but not CR as line termination
Improved BadMessage handling
2013-05-09 15:18:47 +10:00
Greg Wilkins 09476ac235 406923 Accept CRLF or LF but not CR as line termination
Better handling of FF character
2013-05-09 15:01:50 +10:00
Greg Wilkins 50021c7ce4 407491 Better handle empty Accept-Language 2013-05-09 15:00:27 +10:00
Greg Wilkins 4dcc9b39fc 407614 added excludedMimeTypes to gzipFilter 2013-05-09 14:16:54 +10:00
Greg Wilkins d351e0790a 406617 Spin in Request.recycle
Numerous code cleanups with the handling of early closes of requests, specially when the response has already been sent.
2013-05-03 15:15:03 +10:00
Greg Wilkins 0b15aa5a76 406617 Spin in Request.recylce
Some more cleanups of the loops
2013-05-02 20:02:29 +10:00
Greg Wilkins e6dc08cf97 406923 Accept CRLF or LF but not CR as line termination
Fixed lookahead parsing of cached fields
2013-05-02 14:49:46 +10:00
Greg Wilkins e030088428 Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-05-02 11:19:24 +10:00
Greg Wilkins 58a282d01d 406923 CR line termination
Do not allow CR only line termination. Respond with 400 bad request.
2013-05-02 10:44:11 +10:00
Greg Wilkins 7ddd2c6cfd 406923 Accept CRLF or LF but not CR as line termination 2013-05-01 21:17:35 +10:00
Greg Wilkins e26d8e67e5 406861 Fixed IPv6 redirect 2013-04-30 18:49:29 +10:00
Greg Wilkins 7955548d10 406390 Close if at END and content remaining 2013-04-29 14:01:11 +10:00
Greg Wilkins cbb76283c9 406390 Close if at END and content remaining 2013-04-29 10:40:05 +10:00
Greg Wilkins a5c701c237 406390 Close if at END and content remaining 2013-04-29 09:55:34 +10:00
Greg Wilkins 04bcde9b14 406617 fixed close handling during content 2013-04-26 16:10:33 +10:00
Greg Wilkins e9185aa062 Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-04-04 16:09:19 +11:00
Greg Wilkins 060389147b 404128 Add Vary headers rather than set them 2013-04-04 16:05:27 +11:00
Greg Wilkins fd099aa77d 404511 Replaced all StringMap usage with Tries 2013-03-28 13:20:47 +11:00
Greg Wilkins d0f3db0f34 401150 close input stream used from cached resource 2013-03-15 16:00:40 +11:00
Greg Wilkins 41f7df18a6 402185 updated javascript mime-type 2013-03-04 16:52:49 +11:00
Greg Wilkins 7d7769475c removed printStackTrace 2013-03-04 15:44:30 +11:00
Greg Wilkins 8f2aa2f667 402106 fixed URI resize in HttpParser 2013-03-02 14:22:40 +11:00
Greg Wilkins 41952ebf1d 402075 Dont allocate the parser trie unless needed 2013-03-01 22:16:54 +11:00
Jan Bartel 6a48749f0c Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java
2013-02-22 11:32:57 +11:00
Greg Wilkins 27cad4960b 401382 Prevent parseAvailable from parsing next chunk when previous has not been consumed 2013-02-21 12:43:18 +11:00
Joakim Erdfelt a9f6f30242 Merge branch 'jetty-7' into jetty-8 2013-02-05 18:08:15 -07:00
Joakim Erdfelt 14e24c97aa 400040 - NullPointerException in HttpGenerator.prepareBuffers
+ Adding safety check on _header use
2013-02-05 18:07:23 -07:00
Jesse McConnell 06563d01b3 [Bug 393933] remove http's ssl context factory, it is in util 2013-01-28 15:04:21 -06:00
Greg Wilkins fd25e3a742 Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/gzip/GzipTester.java
2013-01-24 14:30:45 +11:00
Greg Wilkins 161a14d9d0 381521 Only set Vary header when content could be compressed 2013-01-24 14:07:25 +11:00
Greg Wilkins aba64046cf Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2013-01-21 12:13:10 +11:00
Greg Wilkins b36411d382 381521 Only set Vary header when content could be compressed 2013-01-21 12:09:46 +11:00
Greg Wilkins bc36eff330 jetty-9 fixed null value handling 2013-01-14 18:12:14 +11:00
Greg Wilkins 2d7b96bab1 jetty-9 added Ternary Trie impl for connection field cache 2013-01-14 17:36:03 +11:00
Jesse McConnell e1c516c7d1 merge from jetty-8 and update license blocks. 2013-01-11 17:04:53 -06:00
Jesse McConnell 863944873d merge from 7 and update license blocks for 2013 2013-01-11 15:01:16 -06:00
Jesse McConnell a4dbb5823c update license blocks for 2013 2013-01-11 14:57:51 -06:00
Greg Wilkins 27c31fb403 jetty-9 organised imports. Cleaned up some TODOs 2013-01-11 16:37:32 +11:00
Greg Wilkins 25324b666c jetty-9 made Trie abstract and added TreeTrie for the HttpParser cache to save space 2013-01-10 17:31:57 +11:00
Greg Wilkins 31def06214 jetty-9 URI parsing passed ByteBuffer so that strange query string encodings can be supported 2012-12-24 19:17:00 +11:00
Jan Bartel aa3b829fb1 Revert "395794 slightly modified fix for empty file extenstion to mime type mapping. Added a default, so it will also work with unknown file extensions"
This reverts commit 72cdab4934.
2012-12-24 14:11:15 +11:00
Jan Bartel 37ac5e7b16 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java
	jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStream.java
	jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java
	jetty-util/src/test/java/org/eclipse/jetty/util/URLEncodedTest.java
2012-12-22 16:42:33 +11:00
Greg Wilkins d4c4637f4d Merge remote-tracking branch 'origin/jetty-7' into jetty-8 2012-12-22 12:30:20 +11:00
Greg Wilkins 810ff3802f 397110 Accept %uXXXX encodings in URIs 2012-12-22 12:00:54 +11:00
Greg Wilkins 3216a284b3 jetty-9 per parser fields cache 2012-12-20 13:50:48 +11:00
Greg Wilkins f7c2e85040 jetty-9 per parser fields cache 2012-12-20 13:13:46 +11:00
Thomas Becker 72cdab4934 395794 slightly modified fix for empty file extenstion to mime type mapping. Added a default, so it will also work with unknown file extensions 2012-12-18 13:09:21 +01:00
Greg Wilkins 4d34e83c1c jetty-9 replaced Trie with indexed implementation 2012-12-17 19:21:28 +11:00
Jan Bartel 2966192aa4 395794 NullPointerException in when requesting a file without extension 2012-12-17 13:58:39 +11:00
Greg Wilkins ecf7563a79 jetty-9 use direct buffers for generated headers 2012-12-14 14:07:42 +11:00
Greg Wilkins 6f098dd69c jetty-9 use DateCache timer to set Date header once per second 2012-12-10 12:58:14 +11:00
Greg Wilkins aeade16b99 jetty-9 optimise generation of common fields 2012-12-09 09:46:50 +11:00
Greg Wilkins f01da31a0a jetty-9 some optimizations 2012-12-08 01:41:01 +11:00
Greg Wilkins 620d051087 jetty-9 recycle content-type 2012-12-08 01:41:01 +11:00
Greg Wilkins 3e151901bf jetty-9 Use public HttpField 2012-12-08 01:41:01 +11:00
Greg Wilkins a20d984d30 jetty-9 Added Trie for cached string lookup. HttpFields does not use StringMap 2012-12-08 01:41:00 +11:00
Greg Wilkins f89909e301 jetty-9 cleaning up dependencies 2012-11-23 16:25:57 +11:00
Greg Wilkins 8ff291d223 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpContent.java
	jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java
	jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/TemplateContext.java
	jetty-server/src/main/java/org/eclipse/jetty/server/AbstractHttpConnection.java
	jetty-server/src/main/java/org/eclipse/jetty/server/ResourceCache.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
	jetty-server/src/test/java/org/eclipse/jetty/server/ResourceCacheTest.java
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/AbstractCompressedStream.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/CompressedResponseWrapper.java
2012-11-12 12:30:26 +11:00
Greg Wilkins 3d3b035b22 Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
2012-11-12 09:08:53 +11:00
Greg Wilkins 75aedbbf45 393947 implement ETags and update gzip filter to handle them 2012-11-11 09:52:26 +11:00
Greg Wilkins f336511f87 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	VERSION.txt
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpParser.java
	jetty-server/src/main/java/org/eclipse/jetty/server/AbstractHttpConnection.java
2012-11-08 14:58:10 +11:00
Greg Wilkins 319ce3c508 393075 1xx, 204, 304 responses ignore headers that suggest content 2012-11-08 14:44:39 +11:00
Greg Wilkins b3274a6baa Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	VERSION.txt
2012-11-08 14:41:01 +11:00
Greg Wilkins eaf65a2902 393075 1xx 204 and 304 ignore all headers suggesting content 2012-11-08 14:37:07 +11:00
Greg Wilkins 52464a5ba6 Merge remote-tracking branch 'origin/jetty-8'
Conflicts:
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ResourceAnnotationHandler.java
	jetty-client/src/test/java/org/eclipse/jetty/client/SslHttpExchangeTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/SslSecurityListenerTest.java
	jetty-deploy/src/main/java/org/eclipse/jetty/deploy/WebAppDeployer.java
	jetty-deploy/src/main/java/org/eclipse/jetty/deploy/providers/ContextProvider.java
	jetty-http/src/main/resources/org/eclipse/jetty/http/mime.properties
	jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java
	jetty-io/src/main/java/org/eclipse/jetty/io/nio/SelectChannelEndPoint.java
	jetty-jmx/src/main/java/org/eclipse/jetty/jmx/MBeanContainer.java
	jetty-jmx/src/main/java/org/eclipse/jetty/jmx/ObjectMBean.java
	jetty-overlay-deployer/src/main/java/org/eclipse/jetty/overlays/OverlayedAppProvider.java
	jetty-plus/src/main/java/org/eclipse/jetty/plus/annotation/Injection.java
	jetty-plus/src/main/java/org/eclipse/jetty/plus/security/DataSourceLoginService.java
	jetty-proxy/src/main/java/org/eclipse/jetty/proxy/ProxyServlet.java
	jetty-rewrite/src/main/java/org/eclipse/jetty/rewrite/handler/ProxyRule.java
	jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java
	jetty-server/src/main/java/org/eclipse/jetty/server/session/JDBCSessionIdManager.java
	jetty-spdy/spdy-http-server/src/main/java/org/eclipse/jetty/spdy/server/proxy/ProxyHTTPSPDYConnection.java
	jetty-spdy/spdy-jetty-http/src/main/java/org/eclipse/jetty/spdy/http/ServerHTTPSPDYAsyncConnection.java
	jetty-start/src/main/java/org/eclipse/jetty/start/Main.java
	jetty-util/src/main/java/org/eclipse/jetty/util/Fields.java
	jetty-websocket/src/main/java/org/eclipse/jetty/websocket/WebSocketClientFactory.java
	jetty-websocket/src/main/java/org/eclipse/jetty/websocket/WebSocketConnectionRFC6455.java
	jetty-websocket/src/test/java/org/eclipse/jetty/websocket/WebSocketClientTest.java
	jetty-websocket/src/test/java/org/eclipse/jetty/websocket/WebSocketMessageRFC6455Test.java
	test-jetty-nested/src/main/java/org/eclipse/jetty/nested/Dump.java
	test-jetty-webapp/src/main/java/com/acme/Dump.java
2012-11-02 14:08:05 +11:00
Greg Wilkins 8723408731 Merge remote-tracking branch 'origin/jetty-7' into jetty-8
Conflicts:
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java
2012-11-02 13:17:53 +11:00
Greg Wilkins 65202e9abe 393363 Use Locale.ENGLISH for all toUpperCase and toLowerCase calls 2012-11-02 11:55:00 +11:00
Jesse McConnell e93a254306 [Bug 393218] add xsd=application/xml mime mapping to defaults 2012-11-01 10:57:17 -05:00
Simone Bordet 6ef412b776 Fixed case of writing a zero-length buffer that is not the last content:
we should return FLUSH instead of DONE, waiting for the last content flag.
2012-10-26 17:39:57 +02:00
Thomas Becker 8c3642754e 392470: Fix problem in suspend, expire cycle when HttpChannel.run() is called multiple times (happens for SPDY). Add test cases. Remove unused argument from HttpHandler.messageComplete() interface and it's implementations. 2012-10-19 18:17:29 +02:00
Greg Wilkins 2b13648b0e 392237 fixed many TODOs and many minor code cleanups 2012-10-19 16:17:30 +11:00
Greg Wilkins f420f5016d 392237 Implemented HttpOutput.sendContent for large content 2012-10-19 10:16:30 +11:00
Greg Wilkins fac580c374 Merge remote-tracking branch 'origin/jetty-8' into jetty-9
Conflicts:
	VERSION.txt
	example-async-rest/async-rest-jar/pom.xml
	example-async-rest/async-rest-webapp/pom.xml
	example-async-rest/pom.xml
	example-jetty-embedded/pom.xml
	jetty-aggregate/jetty-all-server/pom.xml
	jetty-aggregate/jetty-all/pom.xml
	jetty-aggregate/jetty-client/pom.xml
	jetty-aggregate/jetty-server/pom.xml
	jetty-aggregate/jetty-servlet/pom.xml
	jetty-aggregate/jetty-webapp/pom.xml
	jetty-aggregate/jetty-websocket/pom.xml
	jetty-aggregate/pom.xml
	jetty-ajp/src/main/java/org/eclipse/jetty/ajp/Ajp13Generator.java
	jetty-annotations/pom.xml
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AbstractDiscoverableAnnotationHandler.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationConfiguration.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/AnnotationParser.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletContainerInitializerListener.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/ServletSecurityAnnotationHandler.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotation.java
	jetty-annotations/src/main/java/org/eclipse/jetty/annotations/WebServletAnnotationHandler.java
	jetty-client/pom.xml
	jetty-continuation/pom.xml
	jetty-deploy/pom.xml
	jetty-distribution/pom.xml
	jetty-http-spi/pom.xml
	jetty-http/pom.xml
	jetty-http/src/main/java/org/eclipse/jetty/http/Generator.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpFields.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpURI.java
	jetty-http/src/main/java/org/eclipse/jetty/http/MimeTypes.java
	jetty-http/src/test/java/org/eclipse/jetty/http/HttpFieldsTest.java
	jetty-io/pom.xml
	jetty-io/src/main/java/org/eclipse/jetty/io/AbstractBuffer.java
	jetty-io/src/main/java/org/eclipse/jetty/io/Buffer.java
	jetty-io/src/main/java/org/eclipse/jetty/io/BufferUtil.java
	jetty-jaspi/pom.xml
	jetty-jmx/pom.xml
	jetty-jndi/pom.xml
	jetty-jndi/src/main/java/org/eclipse/jetty/jndi/ContextFactory.java
	jetty-jndi/src/test/java/org/eclipse/jetty/jndi/java/TestJNDI.java
	jetty-jsp/pom.xml
	jetty-monitor/pom.xml
	jetty-nested/pom.xml
	jetty-nosql/pom.xml
	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
	jetty-osgi/jetty-osgi-boot/pom.xml
	jetty-osgi/jetty-osgi-boot/src/main/java/org/eclipse/jetty/osgi/boot/OSGiDeployer.java
	jetty-osgi/jetty-osgi-httpservice/pom.xml
	jetty-osgi/pom.xml
	jetty-osgi/test-jetty-osgi-context/pom.xml
	jetty-osgi/test-jetty-osgi-webapp/pom.xml
	jetty-osgi/test-jetty-osgi/pom.xml
	jetty-overlay-deployer/pom.xml
	jetty-plus/pom.xml
	jetty-policy/pom.xml
	jetty-rewrite/pom.xml
	jetty-runner/pom.xml
	jetty-security/pom.xml
	jetty-security/src/main/java/org/eclipse/jetty/security/ConstraintSecurityHandler.java
	jetty-security/src/main/java/org/eclipse/jetty/security/authentication/FormAuthenticator.java
	jetty-security/src/main/java/org/eclipse/jetty/security/authentication/LoginAuthenticator.java
	jetty-security/src/test/java/org/eclipse/jetty/security/ConstraintTest.java
	jetty-server/pom.xml
	jetty-server/src/main/java/org/eclipse/jetty/server/AbstractHttpConnection.java
	jetty-server/src/main/java/org/eclipse/jetty/server/AsyncHttpConnection.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpOutput.java
	jetty-server/src/main/java/org/eclipse/jetty/server/Request.java
	jetty-server/src/main/java/org/eclipse/jetty/server/Response.java
	jetty-server/src/main/java/org/eclipse/jetty/server/bio/SocketConnector.java
	jetty-server/src/main/java/org/eclipse/jetty/server/session/SessionHandler.java
	jetty-server/src/test/java/org/eclipse/jetty/server/HttpServerTestBase.java
	jetty-server/src/test/java/org/eclipse/jetty/server/HttpURITest.java
	jetty-server/src/test/java/org/eclipse/jetty/server/ResponseTest.java
	jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SelectChannelServerSslTest.java
	jetty-server/src/test/java/org/eclipse/jetty/server/ssl/SslSocketServerTest.java
	jetty-server/src/test/resources/jetty-logging.properties
	jetty-servlet/pom.xml
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletContextHandler.java
	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/ServletHolder.java
	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DispatcherTest.java
	jetty-servlets/pom.xml
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/MultiPartFilter.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/MultipartFilterTest.java
	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/gzip/GzipTester.java
	jetty-spdy/pom.xml
	jetty-spdy/spdy-client/pom.xml
	jetty-spdy/spdy-core/pom.xml
	jetty-spdy/spdy-example-webapp/pom.xml
	jetty-spdy/spdy-http-server/pom.xml
	jetty-spdy/spdy-jetty-http/src/main/java/org/eclipse/jetty/spdy/http/ServerHTTPSPDYAsyncConnection.java
	jetty-start/pom.xml
	jetty-start/src/test/java/org/eclipse/jetty/start/CommandLineBuilderTest.java
	jetty-start/src/test/java/org/eclipse/jetty/start/MainTest.java
	jetty-util-ajax/pom.xml
	jetty-util/pom.xml
	jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStream.java
	jetty-util/src/main/java/org/eclipse/jetty/util/log/StdErrLog.java
	jetty-util/src/test/java/org/eclipse/jetty/util/MultiPartInputStreamTest.java
	jetty-webapp/pom.xml
	jetty-webapp/src/main/java/org/eclipse/jetty/webapp/StandardDescriptorProcessor.java
	jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebAppContext.java
	jetty-websocket/pom.xml
	jetty-websocket/src/test/java/org/eclipse/jetty/websocket/WebSocketServletRFCTest.java
	jetty-websocket/src/test/java/org/eclipse/jetty/websocket/helper/MessageSender.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/UnitGenerator.java
	jetty-xml/pom.xml
	pom.xml
	test-continuation/pom.xml
	test-jetty-nested/pom.xml
	test-jetty-servlet/pom.xml
	test-jetty-webapp/pom.xml
	test-jetty-webapp/src/main/webapp/WEB-INF/web.xml
	tests/pom.xml
	tests/test-integration/pom.xml
	tests/test-loginservice/pom.xml
	tests/test-sessions/pom.xml
	tests/test-sessions/test-hash-sessions/pom.xml
	tests/test-sessions/test-jdbc-sessions/pom.xml
	tests/test-sessions/test-mongodb-sessions/pom.xml
	tests/test-sessions/test-sessions-common/pom.xml
	tests/test-webapps/pom.xml
	tests/test-webapps/test-webapp-rfc2616/pom.xml
2012-10-12 21:19:21 +11:00
Simone Bordet 402afc6092 jetty-9: HTTP client: implemented support for 100-Continue. 2012-10-11 10:57:40 +02:00
Jan Bartel 7625f0b8b3 Merge remote-tracking branch 'origin/master' into jetty-8 2012-10-11 16:34:16 +11:00
Jan Bartel 5277122dd8 391622 Be lenient on RFC6265 restriction on duplicate cookie names in same response 2012-10-11 16:09:35 +11:00
Greg Wilkins 96dc4fe150 jetty-9 improved exception logging 2012-09-24 13:10:36 +10:00
Greg Wilkins 879cdf4b82 jetty-9 further lifecycle improvements 2012-09-21 16:17:00 +10:00
Simone Bordet 40382bad3a jetty-9 - Removed references to JUnit 3.x. 2012-09-20 18:23:02 +02:00
Simone Bordet 5590f21296 jetty-9 - Made HttpParser.shutdownInput() return a boolean to signal whether the message was completed. 2012-09-17 11:46:26 +02:00
Simone Bordet 5315a6dcff jetty-9 - HTTP client: implemented abort of request and responses. 2012-09-13 16:02:57 +02:00
Greg Wilkins c7c9c35fee jetty-9 remove leftover debug 2012-09-13 20:12:57 +10:00
Jan Bartel e1e321a243 Merge remote-tracking branch 'origin/master' into jetty-8 2012-09-13 14:10:01 +10:00
Jan Bartel 0035343af3 388675 Non utf8 encoded query strings not decoded to parameter map using queryEncoding 2012-09-13 13:35:27 +10:00
Greg Wilkins 73ebe89019 jetty-9 refactored configuration 2012-09-10 20:26:14 +10:00
Simone Bordet 8b7e1463a1 jetty-9 - HTTP client: implemented cookie functionalities. 2012-09-07 00:05:12 +02:00
Simone Bordet d8ed9116f1 jetty-9 - Moved SPDY's Headers class to jetty-util module as Fields. 2012-09-06 13:22:04 +02:00
Simone Bordet 7231c82b69 Merged branch 'jetty-9' into jetty-9-client. 2012-09-06 08:41:48 +02:00
Greg Wilkins 0b3865d749 jetty-9 removed unused schedulers 2012-09-06 09:12:31 +10:00