Commit Graph

479 Commits

Author SHA1 Message Date
Joakim Erdfelt 06fa8370fb removing debugging output 2016-02-04 11:25:18 -07:00
Joakim Erdfelt cfe823a7d6 487197 - Deflater/Inflater memory leak with WebSocket permessage-deflate extension
+ CompressExtension implementations are now part of the Jetty LifeCycle
+ Deflater and Inflater implementations are only instantiated when
  needed.
+ CompressExtension.doStop() LifeCycle will call .end() on instantiated
  Deflater and Inflater implementations
2016-02-04 11:03:45 -07:00
Joakim Erdfelt 2902a13463 485469 - permessage-deflate extension causes protocol error in Firefox/Chrome
+ Ensure that CONTINUATION frames are marked without RSV1 bit set
  during all code paths for permessage-deflate
2016-01-29 12:46:58 -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
Joakim Erdfelt 6808953561 485469 - permessage-deflate extension causes protocol error in Firefox/Chrome
+ Correcting behavior for RFC7692: Section 7.2.3.6 (permessage-deflate
  empty fin)
2016-01-15 16:26:02 -07:00
Joakim Erdfelt b7f9c9aca9 Updating to version 9.3.7-SNAPSHOT 2016-01-13 08:21:01 -07:00
Joakim Erdfelt 21ca3f6690 Updating to version 9.3.7.RC1 2016-01-13 07:30:24 -07:00
Joakim Erdfelt 30308f2316 Javadoc updates 2016-01-13 07:25:15 -07:00
Joakim Erdfelt a7b3a9f481 485663 - NullPointerException in WebSocketSession during upgrade with DEBUG logging
+ Defaulting session policy to container policy on session creation
2016-01-12 16:21:43 -07:00
Joakim Erdfelt 57224ec3ca 481986 - Dead JSR 356 Server Session still being tracked after Session/Connection closure
+ Removing SessionListener
+ Work in CDI layer for WebSocketContainerScope is reused for
  session tracking on the parent scope of the WebSocketSession only.
  no more multi-listener behavior
+ Reworked JsrSession ID behavior to not be based on AtomicLong
+ AbstractWebSocketConnection now has .hashCode and .equals
2016-01-12 16:15:51 -07:00
Joakim Erdfelt cd39fd84fe Happy New Year 2016 2016-01-04 14:31:22 -07:00
Joakim Erdfelt 88945478f7 Merge branch 'jetty-9.2.x' into jetty-9.3.x 2015-12-17 16:15:49 -07:00
Joakim Erdfelt 1543601968 484612 - Restore WebSocket Session.close() sending 1000/Normal status code 2015-12-17 16:15:06 -07:00
Joakim Erdfelt b9c1535552 481567 - permessage-deflate causing data-dependent ju.zip.DataFormatException: invalid stored block lengths
+ Reworked PerMessageDeflateExtensionTest to test with different
  modes (http/ws vs https/wss), different messages sizes, and
  input buffer sizes (these various configurations do trigger
  the reported bug)
+ Made CompressExtension loop over the input buffer if the buffer
  happens to not be entirely consumed.
2015-12-07 13:15:29 -07: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
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 6aae1265bd Removing redudant close reason trim (handled elsewhere now) 2015-10-02 10:47:10 -07:00
Joakim Erdfelt 64d5718e9e Removing System.out 2015-10-02 10:43:47 -07:00
Joakim Erdfelt cd17ff932a 478829 - WebsocketSession not cleaned up / memory leak
+ WebSocket Connection objects no longer need to
  hold a reference to the WebSocketSession object
  eliminating another reference to the WebSocketSession
  that could hold GC efforts to clean it up
2015-10-02 10:33:32 -07:00
Joakim Erdfelt 1e8d0db743 478829 - WebsocketSession not cleaned up / memory leak
+ Reducing looping references Session -> otherObj -> Session
 + Using Container LifeCycle bean management more consistently
 + All sessions are now child beans
 + A stopped session that hasn't been closed, will auto-close now
 + Using SessionListener more consistently
 + Client ConnectionManager no longer tracks Sessions
 + EventDriver stop cleans up its Session references
 + Moving all DummyConnection test classes to websocket-common:tests
2015-10-01 18:18:20 -07:00
Joakim Erdfelt 8946badbed Extracting IBlockheadServerConnection for refactoring prep 2015-09-30 12:47:31 -07:00
Joakim Erdfelt b865b50cb6 Extracting IBlockheadClient for refactoring prep 2015-09-30 12:47:31 -07:00
Joakim Erdfelt f22fcde971 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Calling onSessionOpen() before App.onOpen()
  This helps, as there is a race for the onSessionOpen()
  in the original behavior with short lived sockets.
  The short lived socket could handle onSessionClosed()
  before onSessionOpen() had a chance, making the close
  fail to remove the session from openSessions, and then
  the slower add occurs later, adding it into the openSession
+ Minor cleanup in IOState
2015-09-25 09:49:29 -07:00
Joakim Erdfelt 1bca608b48 Breaking out close logging into child logger of AbstractWebSocketConnection 2015-09-25 09:49:29 -07:00
Jesse McConnell 20ffd0dd0b Merge branch 'release-9.3.3' 2015-08-31 13:41:21 -05:00
Joakim Erdfelt 5312f2c0d7 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-util/src/main/java/org/eclipse/jetty/util/BufferUtil.java
	jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/WebSocketSession.java
2015-08-27 15:34:45 -07:00
Joakim Erdfelt 25cfffbe1e 428474 - Expose batch mode in the Jetty WebSocket API 2015-08-27 14:53:21 -07:00
Joakim Erdfelt 11b5d320f8 472082 - isOpen returns true on CLOSING Connection
+ Minor tweak to test for isOutputAvailable() instead of connection
  state.
2015-08-27 12:52:52 -07:00
Joakim Erdfelt ef067b2624 476023 - Incorrect trimming of WebSocket close reason
+ Fixed CloseStatus.trimMaxReasonLength() to perform trim correctly
+ Deprecated CloseStatus.trimMaxReasonLength() because it creates
  to many objects
+ Removed use of CloseStatus.trimMaxReasonLength() in implementation
  code
+ Improved CloseInfo ...
  + tracks reason via utf8 byte array (not String object)
  + trims utf8 byte array as-needed
+ All non-jsr implementations use CloseInfo logic
2015-08-27 11:12:51 -07:00
Joakim Erdfelt 54e3d0a2e8 476049 - When using WebSocket Session.close() there should be no status code or reason sent 2015-08-27 09:33:44 -07:00
Joakim Erdfelt 9c855bee76 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Adding testcase
+ Enabling Connection.onClose() -> ioState.onDisconnected()

Conflicts:
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketCloseTest.java
2015-08-27 09:33:28 -07:00
Joakim Erdfelt cb0852c53c 476049 - When using WebSocket Session.close() there should be no status code or reason sent 2015-08-27 09:27:28 -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
Joakim Erdfelt c07f11a1fd 474936 - WebSocketSessions are not always cleaned out from openSessions
+ Adding testcase
+ Enabling Connection.onClose() -> ioState.onDisconnected()
2015-08-26 17:08:14 -07: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
Joakim Erdfelt 2f4f4a2247 Minor improvements in WebSocketConnection.toString() 2015-08-14 14:48:51 -07:00
Joakim Erdfelt 25b692046f Merge branch 'jetty-9.2.x' 2015-08-07 09:40:11 -07:00
Joakim Erdfelt 55862e229e 471055 - Restore legacy/experimental WebSocket extensions (deflate-frame) 2015-08-07 09:39:12 -07:00
Joakim Erdfelt a71c543a7e Revert "Removing old websocket extensions x-webkit-deflate-frame and deflate-frame"
This reverts commit ec9504aab8.
2015-08-07 07:37:06 -07:00
Joakim Erdfelt c424b58153 474453 - Tiny buffers (under 7 bytes) fail to compress in permessage-deflate
+ Ensure compress() is sanely using Deflater.deflate()
+ Ensure output buffer in .deflate() is always a minimum
  of 256 bytes
2015-08-06 15:16:32 -07:00