diff options
author | Floris Bos <bos@je-eigen-domein.nl> | 2015-01-17 22:49:48 +0100 |
---|---|---|
committer | Floris Bos <bos@je-eigen-domein.nl> | 2015-01-17 22:49:48 +0100 |
commit | 6836ccb208f8c16824b8c1e330acb077c70c98c6 (patch) | |
tree | 0be8f48f5160109fc10b19f5f9f90fbfd9e97c0e /rfb/rfb.h | |
parent | a48035a1ce6b5fa9738e9f1762294ddfe52b8d57 (diff) | |
download | libtdevnc-6836ccb208f8c16824b8c1e330acb077c70c98c6.tar.gz libtdevnc-6836ccb208f8c16824b8c1e330acb077c70c98c6.zip |
Fix handling of multiple VNC commands per websockets frame
- When processing input, check if there is any extra data
pending in the internal websocket frame and SSL buffers.
- Prevents input events lagging behind because they get
stuck in one of the buffers.
Data pending in our own buffers cannot be detected with
select() so was not processed until more input arrives
from the network.
- Closes # 55
Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Diffstat (limited to 'rfb/rfb.h')
-rw-r--r-- | rfb/rfb.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -765,6 +765,7 @@ extern rfbBool webSocketsCheck(rfbClientPtr cl); extern rfbBool webSocketCheckDisconnect(rfbClientPtr cl); extern int webSocketsEncode(rfbClientPtr cl, const char *src, int len, char **dst); extern int webSocketsDecode(rfbClientPtr cl, char *dst, int len); +extern rfbBool webSocketsHasDataInBuffer(rfbClientPtr cl); #endif /* rfbserver.c */ |