Commit Graph

14 Commits

Author SHA1 Message Date
James Coglan 609d4feac0 Make the pointer-clearing macro shouty. 2017-03-15 01:55:01 +00:00
James Coglan c22c952fb6 Rename ReadBuffer to StreamReader to match the Ruby version. 2017-03-14 21:59:50 +00:00
James Coglan 29dec87660 Wrap all buffers in the C implementation in an opaque struct that records the length of the buffer and an API that checks the offsets of common buffer operations. 2017-03-14 21:41:33 +00:00
James Coglan 5ba7910b17 Macros are SHOUTY. 2017-03-07 09:46:52 +00:00
James Coglan f95895f729 Check for hitting the max message size and max read buffer capacity without using additions that could overflow. 2017-03-07 09:42:23 +00:00
James Coglan 4564736fde Bring close frame handling into line between parser implementations. 2017-03-06 21:12:27 +00:00
James Coglan 61fabc7337 Integrate hooks for calling valid_frame_rsv? into the native extensions, so that WebSocket extension modules can override RSV validation. 2017-03-04 12:31:55 +00:00
James Coglan 914dadb973 Port the frame serializer to C. 2017-01-05 21:38:26 +00:00
James Coglan f36fe01a19 The parser opcode checking functions should take an opcode, not a Parser. 2016-12-31 17:57:37 +00:00
James Coglan ede6490add Refer to error messages as 'reasons' so as not to confuse them with WebSocket message structs. 2016-12-31 15:48:47 +00:00
James Coglan 99a6e459fe The parser should keep reading as long as the read length is the same as the required length; sometimes this is zero. 2016-12-29 11:28:18 +00:00
James Coglan 21bfd23f1a Implement basic RSV checking for the case when no extensions are active. 2016-12-29 01:55:23 +00:00
James Coglan 6ffb801dd1 Remove a redundant check for continuation frames when there's no initialised message. 2016-12-29 01:54:54 +00:00
James Coglan 97b497a520 Drop the old native extension and replace it with the new all-C parser. Replace the old masking code with a Ruby version, so that the Hybi class is pure Ruby. 2016-12-29 01:09:12 +00:00