File Coverage

src/panda/protocol/websocket/inc.h
Criterion Covered Total %
statement 2 2 100.0
branch 12 12 100.0
condition n/a
subroutine n/a
pod n/a
total 14 14 100.0


line stmt bran cond sub pod time code
1             #pragma once
2             #include
3              
4             namespace panda { namespace protocol { namespace websocket {
5              
6             enum class Opcode : uint8_t {
7             CONTINUE = 0x00,
8             TEXT = 0x01,
9             BINARY = 0x02,
10             CLOSE = 0x08,
11             PING = 0x09,
12             PONG = 0x0A,
13             };
14              
15             namespace CloseCode {
16              
17             enum CloseCode : uint16_t {
18             NOERR = 0,
19              
20             DONE = 1000,
21             AWAY = 1001,
22             PROTOCOL_ERROR = 1002,
23             INVALID_DATA = 1003,
24             UNKNOWN = 1005, // NOT FOR SENDING
25             ABNORMALLY = 1006, // NOT FOR SENDING
26             INVALID_TEXT = 1007,
27             BAD_REQUEST = 1008,
28             MAX_SIZE = 1009,
29             EXTENSION_NEEDED = 1010, // FOR SENDING BY CLIENT ONLY
30             INTERNAL_ERROR = 1011,
31             TLS = 1015 // NOT FOR SENDING
32              
33             };
34              
35 25           inline bool is_sending_forbidden(uint16_t code) {
36 25 100         return (code < DONE || code == 1004 || code == UNKNOWN || code == ABNORMALLY || (code > INTERNAL_ERROR && code < 3000));
    100          
    100          
    100          
    100          
    100          
37             }
38              
39             }
40              
41             }}}