1
This commit is contained in:
parent
afdc699fb7
commit
45922a8e8a
@ -4,6 +4,32 @@
|
||||
|
||||
#ifdef USE_BOOST
|
||||
|
||||
static const unsigned char FIN = 0x80;
|
||||
static const unsigned char RSV1 = 0x40;
|
||||
static const unsigned char RSV2 = 0x20;
|
||||
static const unsigned char RSV3 = 0x10;
|
||||
static const unsigned char RSV_MASK = RSV1 | RSV2 | RSV3;
|
||||
static const unsigned char OPCODE_MASK = 0x0F;
|
||||
|
||||
static const unsigned char TEXT_MODE = 0x01;
|
||||
static const unsigned char BINARY_MODE = 0x02;
|
||||
|
||||
static const unsigned char WEBSOCKET_OPCODE = 0x0F;
|
||||
static const unsigned char WEBSOCKET_FRAME_CONTINUE = 0x0;
|
||||
static const unsigned char WEBSOCKET_FRAME_TEXT = 0x1;
|
||||
static const unsigned char WEBSOCKET_FRAME_BINARY = 0x2;
|
||||
static const unsigned char WEBSOCKET_FRAME_CLOSE = 0x8;
|
||||
static const unsigned char WEBSOCKET_FRAME_PING = 0x9;
|
||||
static const unsigned char WEBSOCKET_FRAME_PONG = 0xA;
|
||||
|
||||
static const unsigned char WEBSOCKET_MASK = 0x80;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN = 0x7F;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT16 = 126;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT64 = 127;
|
||||
|
||||
static const char* WEB_SOCKET_KEY = "Sec-WebSocket-Key: ";
|
||||
static const char* WEB_SOCKET_KEY2 = "Sec-Websocket-Key: ";
|
||||
|
||||
namespace a8
|
||||
{
|
||||
|
||||
@ -46,6 +72,21 @@ namespace a8
|
||||
if (!handshook_) {
|
||||
abort();
|
||||
}
|
||||
unsigned char szbuff [1024 * 65];
|
||||
szbuff[0] = FIN | BINARY_MODE | 0;
|
||||
if (bufflen < 126) {
|
||||
szbuff[1] = bufflen;
|
||||
memmove(szbuff + 2, buff, bufflen);
|
||||
tcp_client_->SendBuff((char*)szbuff, bufflen + 2);
|
||||
} else if (bufflen <= 0xFFFF) {
|
||||
szbuff[1] = 126;
|
||||
szbuff[2] = (bufflen >> 8) & 0xFF;
|
||||
szbuff[3] = bufflen & 0xFF;
|
||||
memmove(szbuff + 4, buff, bufflen);
|
||||
tcp_client_->SendBuff((char*)szbuff, bufflen + 4);
|
||||
} else {
|
||||
abort();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -9,31 +9,31 @@
|
||||
#include <a8/openssl.h>
|
||||
#include <a8/websocketsession.h>
|
||||
|
||||
const unsigned char FIN = 0x80;
|
||||
const unsigned char RSV1 = 0x40;
|
||||
const unsigned char RSV2 = 0x20;
|
||||
const unsigned char RSV3 = 0x10;
|
||||
const unsigned char RSV_MASK = RSV1 | RSV2 | RSV3;
|
||||
const unsigned char OPCODE_MASK = 0x0F;
|
||||
static const unsigned char FIN = 0x80;
|
||||
static const unsigned char RSV1 = 0x40;
|
||||
static const unsigned char RSV2 = 0x20;
|
||||
static const unsigned char RSV3 = 0x10;
|
||||
static const unsigned char RSV_MASK = RSV1 | RSV2 | RSV3;
|
||||
static const unsigned char OPCODE_MASK = 0x0F;
|
||||
|
||||
const unsigned char TEXT_MODE = 0x01;
|
||||
const unsigned char BINARY_MODE = 0x02;
|
||||
static const unsigned char TEXT_MODE = 0x01;
|
||||
static const unsigned char BINARY_MODE = 0x02;
|
||||
|
||||
const unsigned char WEBSOCKET_OPCODE = 0x0F;
|
||||
const unsigned char WEBSOCKET_FRAME_CONTINUE = 0x0;
|
||||
const unsigned char WEBSOCKET_FRAME_TEXT = 0x1;
|
||||
const unsigned char WEBSOCKET_FRAME_BINARY = 0x2;
|
||||
const unsigned char WEBSOCKET_FRAME_CLOSE = 0x8;
|
||||
const unsigned char WEBSOCKET_FRAME_PING = 0x9;
|
||||
const unsigned char WEBSOCKET_FRAME_PONG = 0xA;
|
||||
static const unsigned char WEBSOCKET_OPCODE = 0x0F;
|
||||
static const unsigned char WEBSOCKET_FRAME_CONTINUE = 0x0;
|
||||
static const unsigned char WEBSOCKET_FRAME_TEXT = 0x1;
|
||||
static const unsigned char WEBSOCKET_FRAME_BINARY = 0x2;
|
||||
static const unsigned char WEBSOCKET_FRAME_CLOSE = 0x8;
|
||||
static const unsigned char WEBSOCKET_FRAME_PING = 0x9;
|
||||
static const unsigned char WEBSOCKET_FRAME_PONG = 0xA;
|
||||
|
||||
const unsigned char WEBSOCKET_MASK = 0x80;
|
||||
const unsigned char WEBSOCKET_PAYLOAD_LEN = 0x7F;
|
||||
const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT16 = 126;
|
||||
const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT64 = 127;
|
||||
static const unsigned char WEBSOCKET_MASK = 0x80;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN = 0x7F;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT16 = 126;
|
||||
static const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT64 = 127;
|
||||
|
||||
const char* WEB_SOCKET_KEY = "Sec-WebSocket-Key: ";
|
||||
const char* WEB_SOCKET_KEY2 = "Sec-Websocket-Key: ";
|
||||
static const char* WEB_SOCKET_KEY = "Sec-WebSocket-Key: ";
|
||||
static const char* WEB_SOCKET_KEY2 = "Sec-Websocket-Key: ";
|
||||
|
||||
namespace a8
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user