Commit Graph

49 Commits

Author SHA1 Message Date
Chris Boden
5137c2122a Use httpRequest in favour of WebSocket->request 2016-02-25 19:19:58 -05:00
Chris Boden
d97ca0f3cb Switched index array storage to class container 2016-02-25 19:18:46 -05:00
Chris Boden
25c3e4fb3b Re-enable strict sub protocol check 2016-02-21 13:21:52 -05:00
Chris Boden
cc031e164b Inject RequestVerifier into ServerNegotiator 2016-02-15 17:19:29 -05:00
Chris Boden
e986a76cbb Keepalive in App, doc fix 2016-02-11 09:50:31 -05:00
Chris Boden
7f532e1747 Perf update
Cherrypicked from 075f122e1489b1cd1b4f332719e64f80be500021
Re-use same exception for Frame buffering flow control
2016-02-10 18:55:23 -05:00
Chris Boden
f9b052d85e New RFC interfaces, heartbeat init
Cherrypicked from 6b6a5f0d6d9a10547291a0d8c027584448481daf

:-/
2016-02-10 18:52:42 -05:00
Chris Boden
46487e756c Fixed sub-protocol negotiation support 2015-06-06 10:00:55 -04:00
Chris Boden
a744aea1f0 PSR-7 + RFC
Http components and APIs now use PSR-7 interfaces
No longer using deprecated Guzzle dependency
Use RFC6455 repo for WebSocket message handling
Remove Hixie76 (refs #201)
2015-05-30 10:19:30 -04:00
Chris Boden
1d5af1e34d [WebSocket] Halt communication after closing frame
Also send closing frame in Hixie
2014-06-08 10:55:57 -04:00
Grégoire Pineau
3a8578bd17 CS (eof_ending) 2014-03-21 16:46:43 +01:00
Chris Boden
ef5ece0739 [ws] Updated onError handle to make sure to close if conditions aren't met 2013-10-14 10:25:51 -04:00
Florian Rey
f40bb94a92 Test for connection attachement before cascading error 2013-10-10 13:40:26 +02:00
Chris Boden
5676161277 [WebSocket] Only select one sub-protocol, fixes #103 2013-07-20 12:38:23 -04:00
Chris Boden
40f267834a Merge branch 'refs/heads/master' (v0.2.7) into 0.3
Conflicts:
	CHANGELOG.md
	composer.json
	composer.lock
	src/Ratchet/ConnectionInterface.php
	src/Ratchet/WebSocket/Version/HyBi10.php
	src/Ratchet/WebSocket/Version/RFC6455.php
	src/Ratchet/WebSocket/WsServer.php
2013-06-09 12:04:42 -04:00
Chris Boden
b21b2007c5 Guzzle 3.6 conformance
Updated inheritance class to match API change
Use new Guzzle Header class when searching for values
Lock Ratchet into using Guzzle 3.6 to future-proof
2013-06-09 11:10:22 -04:00
Chris Boden
344818d0f5 [Tests] Bring up unit testing coverage
Coverage on Http and Session
Set version to 0.3-beta
Cleaned up a couple API doc things
Removed Origin code from RFC, will be moved to Http
2013-04-28 15:25:16 -04:00
Chris Boden
8df459548f [WebSocket][Http] Bug fix WS require nullifying, more strict on Request parameter 2013-04-28 09:55:43 -04:00
Chris Boden
5c41b2fbe1 [Http][Tests] Refactored unit tests, added new for HTTP 2013-04-27 10:27:45 -04:00
Chris Boden
4df71c3a35 [Http] ROUTING BABY
Decoupled routing from HTTP
Added Router implement HttpServerInterface
Fully functional Symfony routes in application!
As a result, this drastically decreased backwards compatibility breaks while introducing new functionality
2013-04-26 23:01:28 -04:00
Chris Boden
423b5cc355 [Http] Refactor header parsing from WS to HTTP 2013-04-14 18:34:28 -04:00
Chris Boden
7b2b6897e5 HTTP Decouple spike 2013-04-14 18:23:12 -04:00
Chris Boden
6140c94a33 Cleanup 2013-03-31 11:50:39 -04:00
Chris Boden
51f46332ad [WebSocket] Fixed failing Hixie handshake bug
refs #80
2013-03-31 11:41:31 -04:00
Chris Boden
e7887a4b17 OCD API documentation updates 2013-01-05 16:10:21 -05:00
Vladimir Kartaviy
fc17a0b395 Rewritten sub protocols string building 2012-09-22 04:01:28 +03:00
Vladimir Kartaviy
410550b3b2 #49 Fixed WsServer::getSubProtocolString method return value and related unit-test 2012-09-22 01:18:53 +03:00
Chris Boden
002ae9419c API documentation 2012-07-22 11:25:55 -04:00
Chris Boden
e27ab9891b [WebSocket] Encoding
Added the ability to turn UTF-8 encoding checks off to increase performance
Separated encoding checks into its own set of classes
Encoding checks now use mbstring or iconv depending on availability
2012-07-14 16:44:36 -04:00
Chris Boden
fd9e03bd99 API docs and cleanup 2012-07-11 15:43:54 -04:00
Chris Boden
145de0d407 Cleanup 2012-07-11 11:00:44 -04:00
Chris Boden
70ba5d18d5 [WebSocket] Added missing method
Re-added the disableVersion method to WsServer
Updated composer meta
Updated composer lock file with latest React changes
2012-07-09 15:28:40 -04:00
Chris Boden
fdff37ba60 CS 2012-06-15 09:56:16 -04:00
Chris Boden
5d1cabc751 [WebSocket] Fixed missing request headers bug
Accidentally removed HTTP request headers from connections
Added them back
2012-06-14 16:07:16 -04:00
Chris Boden
49d68ba7df [WebSocket] Hixie refactoring
Created parent interface for messages and frames
Created Hixie Connection
Applied updated interfaces to Hixie versions
Removed __toString on msgs/frames since there could be 2-3 types returned
2012-06-14 15:07:52 -04:00
Chris Boden
439ac1234f [WebSocket] Cleanup
Removed some obsolete code
Handshakes always returns a response
2012-06-14 11:24:18 -04:00
Chris Boden
9d2939e1e8 [WebSocket] Cleanup
Added a couple coverage unit tests
CS
2012-06-13 23:06:12 -04:00
Chris Boden
f1612a603f [WebSocket] Separating responsibilities
Separated HandshakeNegotiator into HttpRequestParser and VersionManager
Moved WsConnection to Version specific Connection
2012-06-13 22:46:08 -04:00
Chris Boden
55243550af [WebSocket] Refactoring
Updated deps; React Socket notify client of shutdown
Separated core interfaces into many
Removed initial version support out of handshake negotiator
Moved message parser responsibility to each version
Removed __toString method from MessageInterface as to not confuse message from payload
Support for RFC control frames
Support message concatenation
[BCB] (temporary) WsConnection hard coded to RFC version
Handshake checks for \r\n\r\n anywhere, not just at end of string
2012-06-09 19:38:44 -04:00
Chris Boden
e42abf912f Removed most of the mbstring calls
Moving forward we're going to assume `mbstring.func_overload` is off.
For that reason we're not going to call `mb_` functions when checking byte level strings.
2012-06-01 23:07:25 -04:00
Chris Boden
e38f81af64 Minor cleanups 2012-05-21 13:16:33 -04:00
Chris Boden
530469295b [WebSocket] Un-framing encoding
Parsing incoming RFC6455 frames with mb_string
2012-05-20 02:03:53 -04:00
Chris Boden
e9825e0ba7 [WebSocket] Message refactoring
Moved the message buffering into its own class
2012-05-20 01:04:09 -04:00
Chris Boden
ac7cc55d5f Oops - TCI fix 2012-05-20 00:11:04 -04:00
Chris Boden
0ef0410ab6 Cleanup
CS
Removed a var_dump
Removed garbage from a unit test
2012-05-19 23:57:20 -04:00
Chris Boden
935866c036 [WebSocket] Refactoring
Separated handshake negotiation into its own class
`HandshakeNegotiator` deals with Request/Response classes
These changes are geared towards separate responsibility
Refs #29
2012-05-19 23:43:30 -04:00
Chris Boden
6e44d6bafa [WebSocket] Bug fix on close frame 2012-05-14 16:33:46 -04:00
Chris Boden
f729be2ef3 [WebSocket] [WAMP] Sub-Protocols
Updated how Ratchet handles WebSocket sub-protocols
Broke out WsServerInterface to not extend MessageInterface;
Components will instead use Interface segregation principle
WAMP is now able to work without the developer having to
manually enable the WAMP sub-protocol
2012-05-12 22:42:56 -04:00
Chris Boden
4735218aa0 [BCB] Namespace changes
Removed the `Component` namespace
Removed the `Resource` namespace
Renamed components:
`IOServerComponent` => `IoServer`
`WebSocketComponent` => `WsServer`
`SessionComponent` => `SessionProvider`
`WAMPServerComponent` => `WampServer`
`IpBlackListComponent` => `IpBlackList`
`FlashPolicyComponent` => `FlashPolicy`
2012-05-08 23:14:28 -04:00