diff options
| author | Per Larsson <[email protected]> | 2022-02-16 12:32:27 +0100 |
|---|---|---|
| committer | Per Larsson <[email protected]> | 2022-02-16 12:32:27 +0100 |
| commit | 87bb9700722e8319aa58484bba03e398dedede87 (patch) | |
| tree | 1a82ce932f0a729f48bf8472d5f88fa897679a8f /zenhttp/include | |
| parent | Renamed asio web socket impl. (diff) | |
| download | zen-87bb9700722e8319aa58484bba03e398dedede87.tar.xz zen-87bb9700722e8319aa58484bba03e398dedede87.zip | |
Added websocket message parser.
Diffstat (limited to 'zenhttp/include')
| -rw-r--r-- | zenhttp/include/zenhttp/websocketserver.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/zenhttp/include/zenhttp/websocketserver.h b/zenhttp/include/zenhttp/websocketserver.h index 309119d2a..336d0bde5 100644 --- a/zenhttp/include/zenhttp/websocketserver.h +++ b/zenhttp/include/zenhttp/websocketserver.h @@ -1,5 +1,7 @@ // Copyright Epic Games, Inc. All Rights Reserved. +#include <zencore/memory.h> + #include <memory> namespace zen { @@ -21,4 +23,17 @@ public: static std::unique_ptr<WebSocketServer> Create(); }; +struct WebSocketMessageHeader +{ + static constexpr uint32_t ExpectedMagic = 0x7a776d68; // zwmh + + uint32_t Magic{}; + uint64_t ContentLength{}; + uint32_t Crc32{}; + + bool IsValid() const; + + static bool Read(MemoryView Memory, WebSocketMessageHeader& OutHeader); +}; + } // namespace zen |