1
#include <openssl/ssl.h>
4
#define DBUFSIZE (BUFSIZE * 3) / 4 - 20
6
#define SERVER_HANDSHAKE_HIXIE "HTTP/1.1 101 Web Socket Protocol Handshake\r\n\
7
Upgrade: WebSocket\r\n\
8
Connection: Upgrade\r\n\
9
%sWebSocket-Origin: %s\r\n\
10
%sWebSocket-Location: %s://%s%s\r\n\
11
%sWebSocket-Protocol: %s\r\n\
14
#define SERVER_HANDSHAKE_HYBI "HTTP/1.1 101 Switching Protocols\r\n\
15
Upgrade: websocket\r\n\
16
Connection: Upgrade\r\n\
17
Sec-WebSocket-Accept: %s\r\n\
18
Sec-WebSocket-Protocol: %s\r\n\
21
#define HYBI_GUID "258EAFA5-E914-47DA-95CA-C5AB0DC85B11"
23
#define HYBI10_ACCEPTHDRLEN 29
25
#define HIXIE_MD5_DIGEST_LENGTH 16
27
#define POLICY_RESPONSE "<cross-domain-policy><allow-access-from domain=\"*\" to-ports=\"*\" /></cross-domain-policy>\n"
34
char connection[1024+1];
35
char protocols[1024+1];
56
char listen_host[256];
58
void (*handler)(ws_ctx_t*);
68
ssize_t ws_recv(ws_ctx_t *ctx, void *buf, size_t len);
70
ssize_t ws_send(ws_ctx_t *ctx, const void *buf, size_t len);
72
/* base64.c declarations */
73
//int b64_ntop(u_char const *src, size_t srclength, char *target, size_t targsize);
74
//int b64_pton(char const *src, u_char *target, size_t targsize);
76
#define gen_handler_msg(stream, ...) \
77
if (! settings.daemon) { \
78
fprintf(stream, " %d: ", settings.handler_id); \
79
fprintf(stream, __VA_ARGS__); \
82
#define handler_msg(...) gen_handler_msg(stdout, __VA_ARGS__);
83
#define handler_emsg(...) gen_handler_msg(stderr, __VA_ARGS__);