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