11#define WS_OP_CONTINUATION 0x0
13#define WS_OP_BINARY 0x2
14#define WS_OP_CLOSE 0x8
47 uint16_t mCloseCode = 0;
51 void Feed(
const uint8_t* data, uint32_t size);
52 bool Next(
Event& outEvent);
62 void Fail(
WsError err,
const char* message);
64 std::vector<uint8_t> mBuffer;
68 std::vector<uint8_t> mFragment;
69 uint8_t mFragmentOpcode = 0;
70 bool mFragmenting =
false;
74 std::string mErrorMessage;
Export macros for Polyphase Engine symbols.
#define POLYPHASE_API
Definition PolyphaseAPI.h:31
POLYPHASE_API void WsEncodeFrame(uint8_t opcode, const uint8_t *payload, uint32_t size, std::vector< uint8_t > &outBytes)
Definition WebSocketFraming.cpp:47
POLYPHASE_API uint32_t WsRandom32()
Definition WebSocketFraming.cpp:35
POLYPHASE_API void WsSha1(const uint8_t *data, uint32_t size, uint8_t outDigest[20])
Definition WebSocketFraming.cpp:351
POLYPHASE_API void WsEncodeClose(uint16_t code, const char *reason, std::vector< uint8_t > &outBytes)
Definition WebSocketFraming.cpp:96
POLYPHASE_API std::string WsBase64Encode(const uint8_t *data, uint32_t size)
Definition WebSocketFraming.cpp:430
WsError
Definition WebSocketTypes.h:25
#define WS_MAX_MESSAGE_BYTES
Definition WebSocketTypes.h:46
Definition WebSocketFraming.h:30
bool HasError() const
Definition WebSocketFraming.h:56
void SetMaxMessageBytes(uint32_t bytes)
Definition WebSocketFraming.h:54
const std::string & GetErrorMessage() const
Definition WebSocketFraming.h:58
WsError GetError() const
Definition WebSocketFraming.h:57
Definition WebSocketFraming.h:34
std::string mCloseReason
Definition WebSocketFraming.h:48
Type
Definition WebSocketFraming.h:36
@ Message
Definition WebSocketFraming.h:38
@ Pong
Definition WebSocketFraming.h:40
@ Ping
Definition WebSocketFraming.h:39
std::vector< uint8_t > mData
Definition WebSocketFraming.h:45