aboutsummaryrefslogtreecommitdiff
path: root/websocket.c
diff options
context:
space:
mode:
authorcbdev <cb@cbcdn.com>2019-08-25 13:26:40 +0200
committercbdev <cb@cbcdn.com>2019-08-25 13:26:40 +0200
commit4256eaae74f6f27167f84e2d469deaa3da3403bc (patch)
tree34183a1fb1d0579a152def9a96850805e8b002a3 /websocket.c
parentfadc42453aca482a9db4f5c92adf58d43d87cdc7 (diff)
downloadwebsocksy-4256eaae74f6f27167f84e2d469deaa3da3403bc.tar.gz
websocksy-4256eaae74f6f27167f84e2d469deaa3da3403bc.tar.bz2
websocksy-4256eaae74f6f27167f84e2d469deaa3da3403bc.zip
Fix minor bugs
Diffstat (limited to 'websocket.c')
-rw-r--r--websocket.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/websocket.c b/websocket.c
index 1fff538..f3c2631 100644
--- a/websocket.c
+++ b/websocket.c
@@ -13,11 +13,11 @@
#define WS_FRAME_HEADER_LEN 16
#define WS_FLAG_FIN 0x80
-#define WS_GET_FIN(a) ((a & WS_FLAG_FIN) >> 7)
-#define WS_GET_RESERVED(a) ((a & 0xE0) >> 4)
-#define WS_GET_OP(a) ((a & 0x0F))
-#define WS_GET_MASK(a) ((a & 0x80) >> 7)
-#define WS_GET_LEN(a) ((a & 0x7F))
+#define WS_GET_FIN(a) (((a) & WS_FLAG_FIN) >> 7)
+#define WS_GET_RESERVED(a) (((a) & 0xE0) >> 4)
+#define WS_GET_OP(a) ((a) & 0x0F)
+#define WS_GET_MASK(a) (((a) & 0x80) >> 7)
+#define WS_GET_LEN(a) ((a) & 0x7F)
/*
* Close and shut down a WebSocket connection, including a connected
@@ -165,8 +165,8 @@ static int ws_upgrade_http(websocket* ws){
sha1_update(&ws_accept_ctx, strlen(RFC6455_MAGIC_KEY), (uint8_t*) RFC6455_MAGIC_KEY);
sha1_digest(&ws_accept_ctx, sizeof(ws_accept_digest), (uint8_t*) &ws_accept_digest);
base64_encode_init(&ws_accept_encode);
- encode_offset = base64_encode_update(&ws_accept_encode, (uint8_t*) ws_accept_key, SHA1_DIGEST_SIZE, ws_accept_digest);
- encode_offset += base64_encode_final(&ws_accept_encode, (uint8_t*) ws_accept_key + encode_offset);
+ encode_offset = base64_encode_update(&ws_accept_encode, (char*) ws_accept_key, SHA1_DIGEST_SIZE, ws_accept_digest);
+ encode_offset += base64_encode_final(&ws_accept_encode, (char*) ws_accept_key + encode_offset);
memcpy(ws_accept_key + encode_offset, "\r\n\0", 3);
//send websocket accept key