Commit Graph

361 Commits

Author SHA1 Message Date
Chris Boden
dffb8d2c1f [WAMP] CS, added unit tests for new features, 100% on WAMP 2014-02-16 19:09:54 -05:00
Konstantin Burkalev
48352fce63 Code fix for pull request 165 2014-02-11 11:16:25 +04:00
Konstantin Burkalev
0b5208507f Added subscribers filtering in topic broadcasting for taking into account exclude & eligible data 2014-02-09 00:44:05 +04:00
Chris Boden
3dc69de9d3 Enforce UTF-8 in App (disallow mbstring.func_overload) 2014-02-06 07:54:56 -05:00
Chris Boden
bf61fdbed4 [App] Use trigger_error instead of echo 2014-01-29 06:55:07 -05:00
Kinn Coelho Julião
daaff6c326 gc_enable is not called if running with HHVM
Since HHVM doesn't support garbage collector (for obvious reasons), the following patch make Ratchet works with HHVM as well.
2013-11-28 14:05:20 -05:00
Bramus
b48f0fa6fd Asterisk must be quoted inside array() 2013-11-05 17:34:15 +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
Chris Boden
78b6e2b6c8 Merge branch 'refs/heads/check' into 0.3 2013-10-14 10:22:29 -04:00
Chris Boden
069133ca35 Updated ops files for 0.3 release 2013-10-14 10:20:32 -04:00
Florian Rey
f40bb94a92 Test for connection attachement before cascading error 2013-10-10 13:40:26 +02:00
Loïc Doignié
1370cb6109 This modification gives Ratchet its own RequestFactory instance.
This way you can use guzzle as REST Client.
2013-10-08 08:51:25 +02:00
Chris Boden
25ff6deb77 [Flash] Close connection after delivering policy 2013-08-05 17:20:05 -04:00
Chris Boden
6559aaf1d4 [Http] Fixed bug in Origin check - browser may pass http:// 2013-08-05 16:23:38 -04:00
Chris Boden
4039a643ea API docs on new features 2013-07-22 21:03:19 -04:00
Chris Boden
eb77cf139e Updated example, slight Origin order change in app 2013-07-20 22:03:46 -04:00
Chris Boden
f50af83fa7 [Http][Security] OriginCheck + same host/origin policy
Added the Http\OriginCheck component that will only allow connections coming from desired Origins
Same host+origin policy by default: App.php, by default, will only allow connections from the given hostname
Fixes #102
2013-07-20 18:41:08 -04:00
Chris Boden
0cf4b614a1 5.5 tests 2013-07-20 14:52:18 -04:00
Chris Boden
5676161277 [WebSocket] Only select one sub-protocol, fixes #103 2013-07-20 12:38:23 -04:00
Chris Boden
9a50835637 [WAMP] Message verification, fixes #105
Validate all messages follow WAMP protocol
2013-07-20 12:31:44 -04:00
Chris Boden
b658ae6e7e Composer restrictions + update 2013-07-20 11:11:34 -04:00
Chris Boden
e7541fdfcf App uses counter for ID instead of random 2013-06-15 14:09:19 -04:00
Chris Boden
0edd37af3f Hostname check verification refs #102
host parameter of App now verified on incoming connections
2013-06-09 14:09:57 -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
6c0a8550dd Version bump fixes #99 2013-06-09 11:41:03 -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
b93581cdcd Version bump 2013-06-01 20:25:31 -04:00
Chris Boden
8e92f5fd9a Fixing more Guzzle API breaks 2013-06-01 20:24:11 -04:00
Chris Boden
1a5dd77bb8 Merge branch 'patch-2' of https://github.com/Barbarrosa/Ratchet 2013-06-01 19:49:50 -04:00
Barbarrosa
7bfa2d054e 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
49c39485e8 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
f4ddea5f44 Removed updating remoteAddress via proxy header 2013-05-29 07:51:33 -04:00
Chris Boden
8b3591ce0d App class 2013-05-08 20:44:01 -04:00
Chris Boden
37d1339359 [Tests] Refactor AB Fuzzing
AbFuzzyServer is now first class EchoServer
Updated meta files
Cleaned up a WAMP unit test slightly
composer alpha7
2013-05-08 20:32:02 -04:00
Chris Boden
1ff7998f58 [Http] Only update remoteAddress if local and header 2013-05-02 19:17:47 -04:00
Chris Boden
cd0efed085 Set $conn->remoteAddress if proxy forwarded
Refs #89
2013-05-01 19:42:15 -04:00
Chris Boden
1622caadad [Http][Router] Fixed bugs found from unit tests 2013-04-30 21:24:39 -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
1ea0bd3255 [Http] Cleanup and parse error fix 2013-04-27 16:51:24 -04:00
Chris Boden
5c41b2fbe1 [Http][Tests] Refactored unit tests, added new for HTTP 2013-04-27 10:27:45 -04:00
Chris Boden
26a760709f [Http] Facade class for routing
Not sure if it'll stick or not, but easier way to route for now
Refs #15
2013-04-27 00:05:10 -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
c24cdf379e [Http] Accept RouteCollection, spike CORS protection 2013-04-26 21:06:34 -04:00
Chris Boden
4a87375f10 [Http] HttpServerInterface
Force HttpServerInterface on route
Call controller on all events
2013-04-26 20:00:11 -04:00
Chris Boden
43003d69f9 [Http] Only pass Request, don't store (twice) 2013-04-26 19:19:47 -04:00
Chris Boden
18bc114408 [Http] Routing spike 2013-04-16 22:37:15 -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
3f64caf8cb Minor doc corrections 2013-04-13 10:55:28 -04:00
Chris Boden
51d2d0b340 Version bump 2013-04-01 19:38:50 -04:00
Chris Boden
92f3844a53 [WebSocket] Prevent division by 0 in Hixie handshake 2013-03-31 14:16:40 -04:00
Chris Boden
3030c81f03 [WebSocket] Fixed Hixie handshake bug (for real this time)
refs #80
2013-03-31 14:02:10 -04:00
Chris Boden
6140c94a33 Cleanup 2013-03-31 11:50:39 -04:00
Chris Boden
7e58dccdb7 Docs 2013-03-31 11:44:10 -04:00
Chris Boden
51f46332ad [WebSocket] Fixed failing Hixie handshake bug
refs #80
2013-03-31 11:41:31 -04:00
Andrey Tokarchuk
41db0c4ed3 Fix misprint error (in word Exception) 2013-03-04 16:05:35 +04:00
Chris Boden
e6622a8e46 [Session] Fixed bug when checking instance type 2013-01-05 16:30:37 -05:00
Chris Boden
e7887a4b17 OCD API documentation updates 2013-01-05 16:10:21 -05:00
Chris Boden
ffd29053bd Minor updates 2013-01-05 13:04:43 -05:00
Chris Boden
75bb5ac891 Cleaning 2013-01-04 19:52:57 -05:00
Chris Boden
786587226e Doc correction 2012-11-25 12:10:39 -05:00
Chris Boden
3a584bfe13 Deps + docs update 2012-11-17 18:31:38 -05:00
Chris Boden
faf3ee26b3 Tagging v0.2.1 2012-10-13 16:37:51 -04:00
Chris Boden
69e3d5a5a2 Merge pull request #52 from pborreli/typos
Fixed typos
2012-10-13 10:53:04 -07:00
Pascal Borreli
ebcc66f1bf Fixed typos 2012-10-11 18:33:29 +00: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
eef375ddae v0.2 references 2012-09-07 14:20:05 -04:00
Chris Boden
6b32996b8e [WebSocket] Connection API
All implementations of ConnectionInterface return themselves
2012-07-22 20:05:04 -04:00
Chris Boden
491d0c779c [WAMP] Removed default var from onPublish
Removed default array being set on WampServerInterface::onPublish
These methods are called by Ratchet's event components
Ratchet will never pass null values
This removes excess requirements from the end developer
2012-07-22 20:01:05 -04:00
Chris Boden
6ee81074d3 [WAMP][BCB] Property name change
Changed $conn->WAMP->topics to
$conn->WAMP->subscriptions
2012-07-22 17:55:53 -04:00
Chris Boden
226ec07b02 [WAMP] callError bugfix
callError accepts `$errorUri` as per the specification
It has previously, erroneously, been changed to $topic
Now loosely accepts a URI but can be any data structure that can be json'd

If it is given a topic, as they're to be URIs according to the spec
it will be transformed to a string
2012-07-22 15:17:34 -04:00
Chris Boden
002ae9419c API documentation 2012-07-22 11:25:55 -04:00
Chris Boden
b43c29a183 Micro optimization 2012-07-22 09:46:57 -04:00
Chris Boden
e7e8936b77 Merge branch 'refs/heads/unit-tests' into 0.2-beta 2012-07-20 10:25:18 -04:00
Chris Boden
1505124954 [WAMP] Topic subscription bug fix 2012-07-20 10:23:45 -04:00
Chris Boden
dd8a59df69 [WAMP][Tests] Full namespace coverage
Added `has` method to Topic class
Covering all of WAMP code in unit tests
2012-07-19 11:27:31 -04:00
Chris Boden
4a4e80a945 [Server] Tests
Increased unit test code coverage
Replaced concrete mock objects with PHPUnit mocks
2012-07-19 09:03:07 -04:00
Chris Boden
bd5b7d09aa [WAMP][Tests] Coverage
Sight bug fixes in WAMP topics
Unit tests coverage
2012-07-19 01:38:08 -04:00
Chris Boden
4078a360a8 [WAMP] Topic testing
Fixed bugs failing on Travis
More unit test coverage
2012-07-19 00:14:36 -04:00
Chris Boden
8d0cf5ffb2 [WAMP]
Lots of unit tests for new WAMP classes
Fixed parse error in TopicManager
Aliased Topic::getId -> __toString to WampConnection can work with Topics or raw protocol strings
API docs
CS
2012-07-18 23:55:59 -04:00
Chris Boden
9d0e6735db Merge branch 'refs/heads/0.2-beta' into wamp-topics
Conflicts:
	composer.lock
2012-07-18 20:34:17 -04:00
Chris Boden
b8a677a6bb [WAMP] Topic tests and fix
Fixed a bug in Topic
Created unit tests for Topic
2012-07-17 23:59:35 -04:00
Chris Boden
534375160a [Server] IoServer cleanup
Removed React event loop as a requirement; loop can be run outside
Removed Server as a requirement for Connection; wasn't used anymore
2012-07-17 17:22:51 -04:00
Chris Boden
c5cdd68cef [WAMP] Topic manager
Separated functionality of Ratchet component and topic manager
2012-07-17 17:06:35 -04:00
Chris Boden
5a80a67f03 [WAMP][BCB] Init new serer component
Moved WampServer to ServerProtocol
New WampServer component
New Topic class
2012-07-17 16:57:05 -04:00
Chris Boden
f43ab913c7 [WebSocket] Closing frame bug fix 2012-07-15 12:15:54 -04:00
Chris Boden
3a844edbfd [WebSocket] Performance
No more sprintf calls
2012-07-15 11:57:42 -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
188e9f04ce [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
f86230fd16 [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
dd0040aee9 Micro optimization on RFC Frame 2012-07-13 15:00:00 -04:00
Chris Boden
a2188a449e [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
5755a5f739 Merge branch 'refs/heads/master' into 0.2-beta 2012-07-13 01:16:08 -04:00
Chris Boden
3c617d96a2 Plugging memory leak
Apparently assigning a property to an object will prevent the object from being destroyed.
Thanks to @igorw to finding this memory leak
2012-07-13 00:55:15 -04:00
Chris Boden
1e298c634b Version tagging 2012-07-12 19:52:04 -04:00
Chris Boden
6d55e18dec mbstring no longer required for Ratchet 2012-07-12 15:41:30 -04:00
Chris Boden
f8a9eb56b5 API docs 2012-07-12 15:21:54 -04:00
Chris Boden
c15c324424 [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
89c24bd637 [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
fd9e03bd99 API docs and cleanup 2012-07-11 15:43:54 -04:00
Chris Boden
beacefa832 Version bump 2012-07-11 11:37:18 -04:00
Chris Boden
145de0d407 Cleanup 2012-07-11 11:00:44 -04:00
Chris Boden
d2294fa6a4 [WebSocket][Tests] Passing AB tests 3.* and 7.* 2012-07-11 10:45:34 -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
thrashr888
f529d36305 updated socket connection event name based on react-php/react commit 70bc398270c8dc8f2cb8e7b9fbf2dbbf96599fd2 2012-07-09 03:09:54 -07:00
Chris Boden
a1550994a1 Fixed composer breakage 2012-07-08 00:23:29 -04:00
Chris Boden
34fee70e04 Versioning 2012-06-17 23:04:25 -04:00
Chris Boden
f176790ed8 [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
cea49e714b [WebSocket] RFC Fragmentation
AB tests 5.* passing
Refs #13
2012-06-16 12:20:14 -04:00
Chris Boden
ccf7114a90 [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
f0d605a42e [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
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
87dcd1d510 [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
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
f9ce641f04 CS 2012-06-12 20:49:05 -04:00
Chris Boden
87b6b53dce Merge branch 'refs/heads/ws-ref-ctrls-msgs' into ws-refactor
Conflicts:
	composer.lock
2012-06-11 18:25:15 -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
724a15ceb2 [Server] Stream over Libevent 2012-06-03 21:26:20 -04:00
Chris Boden
b27c9700f4 [WebSocket] Refactored Frame masking/payload 2012-06-03 12:14:53 -04:00
Chris Boden
3a530c8c24 [WebSocket] RFC Masking
Full un/masking capabilities on RFC6455 Frames
2012-06-03 11:55:35 -04:00
Chris Boden
9f0e29fe7f [WebSocket] Frame masking 2012-06-03 02:03:16 -04:00
Chris Boden
54479da9d5 [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
7790ef39a1 [WebSocket] Frame overflow 2012-06-02 21:11:29 -04:00
Chris Boden
291bd5da5a [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
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
ff07104316 AutobahnTestSuite
Added files to test Ratchet against the AutobahnTestSuite
Bumped version v0.2b
Updated how to handle control frames to run the test suite
2012-05-20 13:24:37 -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
d075b99c26 [WebSockets] Handshake encoding + case insensitivity
Updated RFC6455 handshaker to check values case insensitively
Made sure RFC6455 handshaker matches encoding properly
Added mbstring as a requirement for Ratchet
Refs #28, #30
2012-05-19 23:42:13 -04:00
Chris Boden
27716fef78 [WebSocket] Encoding bug fix
In the handshake verifier, make sure we're checking byte length, not string length
2012-05-19 23:01:40 -04:00
Chris Boden
986edd9562 [WAMP] [BCB] Publishing
BC break: Updated the `WampServerInterface` to have a strict API
Exclude and Eligible are now always arrays acting like black/white list
Changed `uri` to `topic` to be more generic with Pub/Sub
Added unit tests for `onPublish`
2012-05-19 13:30:58 -04:00
Chris Boden
598da1e8b0 [Server] Long running tweaks
Added commands to [IoServer] that should be called in long-running scripts
Removed version information from composer
Updated dependencies
2012-05-16 17:16:50 -04:00
Chris Boden
cfd05b0557 [Server] Close fix
Another close fix from server->client close
2012-05-14 16:58:24 -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
1582853255 [Server] Fixed remoteAddress not being set on Connection
Updated to latest version of `React`
Fixed bug where `$conn->remoteAddress` always returned "127.0.0.1"
This will result in IpBlackList working properly
Added unit tests for IoServer
2012-05-12 19:35:39 -04:00
Chris Boden
d05cac8b6c [Io] Handle Application Exceptions 2012-05-11 11:59:18 -04:00
Chris Boden
5f80c291b7 CS and API docs 2012-05-11 00:51:11 -04:00
Chris Boden
710ec2535f [WAMP][BCB] Subscribe protocol compliance 2012-05-10 23:14:59 -04:00
Chris Boden
55e11bac7e [Server] Methods over closures, StreamSelectLoop 2012-05-10 22:24:47 -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
Chris Boden
5785a1ca93 Factory LSB 2012-05-08 16:33:58 -04:00
Chris Boden
ef6e777f31 Guzzle changes
Taking advantage of RequestFactory LSB
New tests to make sure Guzzle returns what's expected
2012-05-08 12:46:21 -04:00
Chris Boden
b537d8c98d [Flash] Removed Command object calls 2012-05-07 21:06:51 -04:00
Chris Boden
5078aa2e4c Merge branch 'refs/heads/master' into socket-server 2012-05-07 21:03:01 -04:00
Chris Boden
d9bc1af385 [WAMP] Cleanup
Removed all Command classes (WAMP and global)
We-wrote WAMP unit tests to match
refs #22
2012-05-07 20:59:47 -04:00
Chris Boden
bbea3e8e05 CI fix (last time :-|) 2012-05-07 19:37:55 -04:00
Chris Boden
949e5119db Autoload fix 2012-05-07 19:27:39 -04:00
Chris Boden
f5005d1a4e Composer correction 2012-05-07 19:20:19 -04:00
Chris Boden
d30c8358ef [BCB] [WIP] Overhaul
React at the core of Ratchet, refs #6
Removed Commands (except WAMP), refs #22
Updated Guzzle to 2.4 branch, refs #20
Fixed some Hixie bugs, refs #21
2012-05-07 18:49:13 -04:00
Mike Almond
52b1704155 FlashPolicy all the things
$policy = new Ratchet\Component\Server\FlashPolicyComponent();
$policy->addAllowedAccess('192.168.1.120', '8000');

$io = new Ratchet\Component\Server\IOServerComponent($policy);
$io->run(843);
2012-05-07 13:44:48 -04:00
Chris Boden
af35aab345 True errors 2012-05-06 14:27:14 -04:00
Chris Boden
dbc40b821d ConnectionInterface updates
Added write/end methods to Connections
Created decorator class implementing ConnectionInterface
2012-05-06 13:18:21 -04:00
Chris Boden
8404f911a3 Fixes from Guzzle update
Updated RequestFactory to match updated Guzzle RequestFactory API
2012-05-04 21:00:55 -04:00
Chris Boden
8ab79d217f Guzzle update
Updated Guzzle to 2.4.1
Fixed code to pass unit tests from update
2012-05-04 18:17:23 -04:00
Mike Almond
6374bb3dac Removing a method that isn't available in sockets and fixing validation and tests 2012-05-04 10:20:24 -04:00
Mike Almond
532323c497 Code cleanup and start of some commenting 2012-05-03 06:22:23 -04:00
Mike Almond
26d339dec7 Hixie now returns a Guzzle object for the handshake 2012-05-01 14:50:29 -04:00
Mike Almond
e7ed247393 [FlashPolicy] Updating the flash policy component 2012-05-01 14:49:54 -04:00
Chris Boden
86b3343b6f [WAMP] unit tests and fix
Increases code coverage on WAMP
Fixed a bug found while writing tests
2012-04-29 19:21:29 -04:00
Chris Boden
381dd7bab6 API docs and message length
RFC6455 Message::getPayloadLenght now returns a value
2012-04-29 19:20:59 -04:00
Chris Boden
852e5777e3 Silently fail unblock
If the user unblocks and address that was not blocked, silently fail
2012-04-29 13:53:10 -04:00
Chris Boden
550b32e1e7 IpBlackList
Fixed bug where onClose was propagated if onOpen wasn't
Filter out ports from IP4 addresses
2012-04-29 13:20:26 -04:00
Chris Boden
6be16bea4a Added IpBlackListComponent
refs #4
2012-04-29 12:35:46 -04:00
Chris Boden
b0d5274985 [WAMP] Oops, committed unit tests
Adding the unit tests for WAMP to the repo!
2012-04-28 23:46:23 -04:00
Chris Boden
9e667dfc8b [WAMP] Work
Unit testing WAMP; 0 -> 84% coverage
Fixed an Event command bug
API documentation
2012-04-28 19:32:32 -04:00
Chris Boden
228d0b8627 Composite Command updates
Unit tested Composite
Corrected interface to be E_STRICT compliant
Refactored enqueue method
2012-04-28 18:25:57 -04:00
Chris Boden
fb6351c60f [Sessions] API fix in accordance w/ Symfony BC breaks 2012-04-26 21:14:07 -04:00
Chris Boden
b6b2099415 Merge branch 'refs/heads/symfony/sessions'
Conflicts:
	composer.json
	composer.lock
2012-04-26 21:13:48 -04:00
Chris Boden
162d490b55 API Docs 2012-04-26 20:56:12 -04:00
Chris Boden
d91a88219b [WAMP] Static Factory
I'm sorry...
refs #11
Optionally, statically register namespaces for Command Factory
2012-04-26 20:22:55 -04:00
Chris Boden
45c44fb841 Branding 2012-04-26 20:05:53 -04:00
Chris Boden
c2642e1c74 [WAMP] Store sessionId in Connection 2012-04-26 20:01:12 -04:00
Chris Boden
56768b5963 Merge branch 'refs/heads/tickets' into wamp 2012-04-26 19:49:58 -04:00
Chris Boden
daf8731790 [WAMP] Welcome message 2012-04-26 19:49:49 -04:00
Chris Boden
4654acb7d6 Replaced Connection::getId() with resourceId property 2012-04-25 22:59:46 -04:00
Chris Boden
aa51ea53f9 IO adds remoteAddress to Connection 2012-04-25 22:15:06 -04:00
Chris Boden
dd79245ecf Simplified
Removed magic methods from Connection(Interface)
Connection is closer to a POPO now
2012-04-25 21:58:12 -04:00
Chris Boden
01ccbcf8c8 Fixed inheritdoc syntax 2012-04-25 21:00:08 -04:00
Chris Boden
3908a69741 Cleanup 2012-04-25 20:50:07 -04:00
Chris Boden
e06aa30096 BC Break - Server::run parameters change
Updated IoServerComponent::run parameters

* $port is now first
* only $port is required
* SocketInterface is last and optional
2012-04-22 13:15:43 -04:00
Chris Boden
a4bc626fae [Session] Fixes, cleanup, docs, tests 2012-03-29 17:42:42 -04:00
Chris Boden
c58814ab64 Serialize fix 2012-03-27 15:31:28 -04:00
Chris Boden
33ed96eba0 Session read working 2012-03-27 14:29:56 -04:00
Chris Boden
592752e18a Started SessionComponent w/ Symfony integration 2012-03-27 10:24:50 -04:00
Chris Boden
73b49b469d [WAMP] Init Welcome message 2012-03-26 15:59:24 -04:00
Chris Boden
a4b0990961 Typecast bug fix
Attempted to fix Travis CI failing unit test with typecasting
2012-02-08 17:11:10 -05:00
Chris Boden
f666ed95bc Travis CI test fix
A unit test failed on TravisCI, trying to fix...different in PHP versions seems to have made a single test fail
2012-02-08 17:04:18 -05:00
Mike Almond
f4c1cb110f [WebSocket] Fixing name spacing and a bug
Fixing the namespacing for the Guzzle response and the bug was the if statement should have been outside the loop.
2012-02-08 16:41:32 -05:00
Mike Almond
f6fef1a390 [WebSocket] Refactor
Fixing bugs in hixieeeeeeee
2012-02-08 13:19:42 -05:00