Chris Boden
80124ec05e
[WebSocket] Halt communication after closing frame
...
Also send closing frame in Hixie
2014-06-08 10:55:57 -04:00
Grégoire Pineau
33c59a8de7
CS (trainling space)
2014-03-21 16:46:52 +01:00
Grégoire Pineau
c1754d302c
CS (eof_ending)
2014-03-21 16:46:43 +01:00
Chris Boden
e9d19c95ab
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
86e2484dfe
Fixing more Guzzle API breaks
2013-06-01 20:24:11 -04:00
Chris Boden
3e8b7826d9
Merge branch 'patch-2' of https://github.com/Barbarrosa/Ratchet
2013-06-01 19:49:50 -04:00
Barbarrosa
3158e4fcf3
Update HyBi10.php
...
I encountered the following error while attempting to use Ratchet. The __toString version of the request should contain the proper value, and retrieving the string before converting to an int would prevent this typecasting issue.
Notice: Object of class Guzzle\Http\Message\Header could not be converted to int in [file system path]\vendor\cboden\ratchet\src\Ratchet\WebSocket\Version\HyBi10.php on line 7
2013-05-31 23:08:27 -06:00
Barbarrosa
9c64881929
Fixed type conversion issue with isProtocol method in RFC6455
...
I encountered the following error while attempting to use Ratchet. The __toString version of the request contained the correct value (13), so I cast the result to a string before casting it to an integer.
Notice: Object of class Guzzle\Http\Message\Header could not be converted to int in [file system path]\vendor\cboden\ratchet\src\Ratchet\WebSocket\Version\RFC6455.php on line 53
2013-05-31 22:55:00 -06:00
Chris Boden
9d85a19309
Set $conn->remoteAddress if proxy forwarded
...
Refs #89
2013-05-01 19:42:15 -04:00
Chris Boden
791a31e05f
[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
404df1e0a8
[WebSocket] Prevent division by 0 in Hixie handshake
2013-03-31 14:16:40 -04:00
Chris Boden
db01d75fac
[WebSocket] Fixed Hixie handshake bug (for real this time)
...
refs #80
2013-03-31 14:02:10 -04:00
Chris Boden
777e928cea
Cleanup
2013-03-31 11:50:39 -04:00
Chris Boden
0be4299fd6
Docs
2013-03-31 11:44:10 -04:00
Chris Boden
7933d26269
[WebSocket] Fixed failing Hixie handshake bug
...
refs #80
2013-03-31 11:41:31 -04:00
Chris Boden
f905e3ad1f
OCD API documentation updates
2013-01-05 16:10:21 -05:00
Chris Boden
ba8289c7d9
Minor updates
2013-01-05 13:04:43 -05:00
Pascal Borreli
26342eb92d
Fixed typos
2012-10-11 18:33:29 +00:00
Chris Boden
491919f7dc
[WebSocket] Connection API
...
All implementations of ConnectionInterface return themselves
2012-07-22 20:05:04 -04:00
Chris Boden
faa4083b81
API documentation
2012-07-22 11:25:55 -04:00
Chris Boden
fbe1d1763b
[WebSocket] Closing frame bug fix
2012-07-15 12:15:54 -04:00
Chris Boden
a2edc02d97
[WebSocket] Performance
...
No more sprintf calls
2012-07-15 11:57:42 -04:00
Chris Boden
2f8bb3395b
[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
bb38fbb14b
[Server][WebSocket] Performance
...
Switched IoServer::factory to use React factory (libevent stable)
Bit operations in Frame for performance gains
Added performance tests back to fuzzing config
2012-07-14 11:58:26 -04:00
Chris Boden
52fbb59808
[WebSocket] Removed deprecated code
...
Removed some unused Frame code in favour of newer APIs
Removed RFC's Message::frame and Frame::create methods
2012-07-13 19:58:44 -04:00
Chris Boden
e42a8c3d7a
Micro optimization on RFC Frame
2012-07-13 15:00:00 -04:00
Chris Boden
22c0ea19d9
[WebSocket] Performance
...
Added unit tests for Rsv bit checks
Using binary operators to check bits resulting in massive performance gains
2012-07-13 11:38:16 -04:00
Chris Boden
59725ebc2d
mbstring no longer required for Ratchet
2012-07-12 15:41:30 -04:00
Chris Boden
87bac1a0d3
API docs
2012-07-12 15:21:54 -04:00
Chris Boden
37b8170eb1
[WebSocket] UTF-8 checking
...
mb_check_encoding first, as it's much faster, fail fast
Only do the other check if message is under 10k characters
Large payloads crawl otherwise
2012-07-12 13:29:12 -04:00
Chris Boden
ae9524a178
[WebSocket] UTF-8 checks
...
New method to check UTF-8
All non-binary AB tests passing
2012-07-12 12:12:08 -04:00
Chris Boden
cb163a7576
API docs and cleanup
2012-07-11 15:43:54 -04:00
Chris Boden
89660863c3
[WebSocket][Tests] Passing AB tests 3.* and 7.*
2012-07-11 10:45:34 -04:00
Chris Boden
46249d0579
[WebSocket] RFC compliance
...
Close connection if payload is not UTF-8
Fixed several AB 6.* tests
Refs #13
2012-06-16 12:49:28 -04:00
Chris Boden
5c8d11b8b3
[WebSocket] RFC Fragmentation
...
AB tests 5.* passing
Refs #13
2012-06-16 12:20:14 -04:00
Chris Boden
90c3d2107b
[WebSocket] RFC spec
...
AB fix 5.1, 5.2
Close connection on fragmented control frames
Refs #13
2012-06-16 11:54:15 -04:00
Chris Boden
653d8fb482
[WebSocket] RFC Protocol Compliance
...
Refs #13
Fixed AB tests: 2.5, 4.*
RFC fails connections on bad control frames
2012-06-16 11:49:46 -04:00
Chris Boden
8770c361bc
[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
f0a277cec9
[WebSocket] Cleanup
...
Removed some obsolete code
Handshakes always returns a response
2012-06-14 11:24:18 -04:00
Chris Boden
412f5c2d07
[WebSocket] Re-scoped variable
...
Protecting Frame::$data to prevent overflow error
Correct frame contents is fetched from ::getContents()
2012-06-14 10:54:26 -04:00
Chris Boden
305865a938
[WebSocket] Cleanup
...
Added a couple coverage unit tests
CS
2012-06-13 23:06:12 -04:00
Chris Boden
1c34e12be8
[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
ac660017fe
CS
2012-06-12 20:49:05 -04:00
Chris Boden
6cbf0eb186
[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
9670876e51
[WebSocket] Refactored Frame masking/payload
2012-06-03 12:14:53 -04:00
Chris Boden
08d7d6f8a0
[WebSocket] RFC Masking
...
Full un/masking capabilities on RFC6455 Frames
2012-06-03 11:55:35 -04:00
Chris Boden
49d1dc33ef
[WebSocket] Frame masking
2012-06-03 02:03:16 -04:00
Chris Boden
8e30b861c7
[WebSocket] Messaging
...
Fluent interface on MessageInterface::addFrame
RFC6455 Message unit tests
RFC handling TCP concatenation (refs #31 )
2012-06-02 22:08:27 -04:00
Chris Boden
0326ac99bd
[WebSocket] Frame overflow
2012-06-02 21:11:29 -04:00
Chris Boden
cea538429d
[WebSocket] RFC6455 Framing work
...
New code to create a frame
Unit tests for new code
API cleanup
2012-06-02 15:44:18 -04:00