#include <rfb/rfb.h>
#include <resolv.h>
#include <errno.h>
#include <byteswap.h>
#include <string.h>
#include "rfbconfig.h"
#include "rfbssl.h"
#include "rfbcrypto.h"
Go to the source code of this file.
Data Structures |
| struct | ws_ctx_t |
| union | ws_mask_t |
Defines |
| #define | WS_NTOH64(n) bswap_64(n) |
| #define | WS_NTOH32(n) bswap_32(n) |
| #define | WS_NTOH16(n) bswap_16(n) |
| #define | WS_HTON64(n) bswap_64(n) |
| #define | WS_HTON16(n) bswap_16(n) |
| #define | B64LEN(__x) (((__x + 2) / 3) * 12 / 3) |
| #define | WSHLENMAX 14 |
| #define | FLASH_POLICY_RESPONSE "<cross-domain-policy><allow-access-from domain=\"*\" to-ports=\"*\" /></cross-domain-policy>\n" |
| #define | SZ_FLASH_POLICY_RESPONSE 93 |
| #define | GUID "258EAFA5-E914-47DA-95CA-C5AB0DC85B11" |
| #define | SERVER_HANDSHAKE_HIXIE "HTTP/1.1 101 Web Socket Protocol Handshake\r\n\Upgrade: WebSocket\r\n\Connection: Upgrade\r\n\%sWebSocket-Origin: %s\r\n\%sWebSocket-Location: %s://%s%s\r\n\%sWebSocket-Protocol: %s\r\n\\r\n%s" |
| #define | SERVER_HANDSHAKE_HYBI "HTTP/1.1 101 Switching Protocols\r\n\Upgrade: websocket\r\n\Connection: Upgrade\r\n\Sec-WebSocket-Accept: %s\r\n\Sec-WebSocket-Protocol: %s\r\n\\r\n" |
| #define | WEBSOCKETS_CLIENT_CONNECT_WAIT_MS 100 |
| #define | WEBSOCKETS_CLIENT_SEND_WAIT_MS 100 |
| #define | WEBSOCKETS_MAX_HANDSHAKE_LEN 4096 |
Typedefs |
| typedef int(* | wsEncodeFunc )(rfbClientPtr cl, const char *src, int len, char **dst) |
| typedef int(* | wsDecodeFunc )(rfbClientPtr cl, char *dst, int len) |
Enumerations |
| enum | { WEBSOCKETS_VERSION_HIXIE,
WEBSOCKETS_VERSION_HYBI
} |
| enum | {
WS_OPCODE_CONTINUATION = 0x0,
WS_OPCODE_TEXT_FRAME,
WS_OPCODE_BINARY_FRAME,
WS_OPCODE_CLOSE = 0x8,
WS_OPCODE_PING,
WS_OPCODE_PONG
} |
Functions |
| struct | __attribute__ ((__packed__)) |
| void | webSocketsGenMd5 (char *target, char *key1, char *key2, char *key3) |
| rfbBool | webSocketsCheck (rfbClientPtr cl) |
| int | webSocketsEncode (rfbClientPtr cl, const char *src, int len, char **dst) |
| int | webSocketsDecode (rfbClientPtr cl, char *dst, int len) |
| rfbBool | webSocketCheckDisconnect (rfbClientPtr cl) |
Variables |
| | ws_header_t |
Define Documentation
| #define B64LEN |
( |
|
__x |
) |
(((__x + 2) / 3) * 12 / 3) |
| #define FLASH_POLICY_RESPONSE "<cross-domain-policy><allow-access-from domain=\"*\" to-ports=\"*\" /></cross-domain-policy>\n" |
| #define GUID "258EAFA5-E914-47DA-95CA-C5AB0DC85B11" |
| #define SERVER_HANDSHAKE_HIXIE "HTTP/1.1 101 Web Socket Protocol Handshake\r\n\Upgrade: WebSocket\r\n\Connection: Upgrade\r\n\%sWebSocket-Origin: %s\r\n\%sWebSocket-Location: %s://%s%s\r\n\%sWebSocket-Protocol: %s\r\n\\r\n%s" |
| #define SERVER_HANDSHAKE_HYBI "HTTP/1.1 101 Switching Protocols\r\n\Upgrade: websocket\r\n\Connection: Upgrade\r\n\Sec-WebSocket-Accept: %s\r\n\Sec-WebSocket-Protocol: %s\r\n\\r\n" |
| #define SZ_FLASH_POLICY_RESPONSE 93 |
| #define WEBSOCKETS_CLIENT_CONNECT_WAIT_MS 100 |
| #define WEBSOCKETS_CLIENT_SEND_WAIT_MS 100 |
| #define WEBSOCKETS_MAX_HANDSHAKE_LEN 4096 |
| #define WS_HTON16 |
( |
|
n |
) |
bswap_16(n) |
| #define WS_HTON64 |
( |
|
n |
) |
bswap_64(n) |
| #define WS_NTOH16 |
( |
|
n |
) |
bswap_16(n) |
| #define WS_NTOH32 |
( |
|
n |
) |
bswap_32(n) |
| #define WS_NTOH64 |
( |
|
n |
) |
bswap_64(n) |
Typedef Documentation
| typedef int(* wsDecodeFunc)(rfbClientPtr cl, char *dst, int len) |
| typedef int(* wsEncodeFunc)(rfbClientPtr cl, const char *src, int len, char **dst) |
Enumeration Type Documentation
- Enumerator:
| WEBSOCKETS_VERSION_HIXIE |
|
| WEBSOCKETS_VERSION_HYBI |
|
Definition at line 57 of file websockets.c.
- Enumerator:
| WS_OPCODE_CONTINUATION |
|
| WS_OPCODE_TEXT_FRAME |
|
| WS_OPCODE_BINARY_FRAME |
|
| WS_OPCODE_CLOSE |
|
| WS_OPCODE_PING |
|
| WS_OPCODE_PONG |
|
Definition at line 107 of file websockets.c.
Function Documentation
| struct __attribute__ |
( |
(__packed__) |
|
) |
[read] |
| rfbBool webSocketCheckDisconnect |
( |
rfbClientPtr |
cl |
) |
|
| rfbBool webSocketsCheck |
( |
rfbClientPtr |
cl |
) |
|
| int webSocketsDecode |
( |
rfbClientPtr |
cl, |
|
|
char * |
dst, |
|
|
int |
len | |
|
) |
| | |
| int webSocketsEncode |
( |
rfbClientPtr |
cl, |
|
|
const char * |
src, |
|
|
int |
len, |
|
|
char ** |
dst | |
|
) |
| | |
| void webSocketsGenMd5 |
( |
char * |
target, |
|
|
char * |
key1, |
|
|
char * |
key2, |
|
|
char * |
key3 | |
|
) |
| | |
Variable Documentation