| 1085 | } |
| 1086 | |
| 1087 | Result HttpWebSocketEndpoint::sendData(HttpWebSocketOpcode opcode, Span<const char> payload, bool fin, |
| 1088 | const uint8_t* maskKey, Span<char> storage, Span<const char>& encodedFrame) |
| 1089 | { |
| 1090 | SC_TRY_MSG(opcode == HttpWebSocketOpcode::Text or opcode == HttpWebSocketOpcode::Binary or |
| 1091 | opcode == HttpWebSocketOpcode::Continuation, |
| 1092 | "HttpWebSocketEndpoint sendData requires a data opcode"); |
| 1093 | HttpWebSocketFrameHeaderView header; |
| 1094 | header.opcode = opcode; |
| 1095 | header.fin = fin; |
| 1096 | header.payloadLength = payload.sizeInBytes(); |
| 1097 | SC_TRY(applyOutgoingMask(header, maskKey)); |
| 1098 | return sendFrame(header, payload, storage, encodedFrame); |
| 1099 | } |
| 1100 | |
| 1101 | Result HttpWebSocketEndpoint::sendPing(Span<const char> payload, const uint8_t* maskKey, Span<char> storage, |
| 1102 | Span<const char>& encodedFrame) |