diff options
Diffstat (limited to 'rfb')
-rw-r--r-- | rfb/rfb.h | 10 | ||||
-rw-r--r-- | rfb/rfbclient.h | 4 | ||||
-rw-r--r-- | rfb/rfbproto.h | 16 |
3 files changed, 30 insertions, 0 deletions
@@ -10,6 +10,7 @@ */ /* + * Copyright (C) 2015 Timothy Pearson <kb9vqf@pearsoncomputing.net>. * Copyright (C) 2005 Rohit Kumar <rokumar@novell.com>, * Johannes E. Schindelin <johannes.schindelin@gmx.de> * Copyright (C) 2002 RealVNC Ltd. @@ -149,6 +150,7 @@ typedef rfbBool (*rfbSetTranslateFunctionProcPtr)(struct _rfbClientRec* cl); typedef rfbBool (*rfbPasswordCheckProcPtr)(struct _rfbClientRec* cl,const char* encryptedPassWord,int len); typedef enum rfbNewClientAction (*rfbNewClientHookPtr)(struct _rfbClientRec* cl); typedef void (*rfbDisplayHookPtr)(struct _rfbClientRec* cl); +typedef void (*rfbInetdDisconnectPtr)(); typedef void (*rfbDisplayFinishedHookPtr)(struct _rfbClientRec* cl, int result); /** support the capability to view the caps/num/scroll states of the X server */ typedef int (*rfbGetKeyboardLedStateHookPtr)(struct _rfbScreenInfo* screen); @@ -340,6 +342,9 @@ typedef struct _rfbScreenInfo rfbNewClientHookPtr newClientHook; /** displayHook is called just before a frame buffer update */ rfbDisplayHookPtr displayHook; + /* inetdDisconnectHook is called when the connection has been + interrupted before a client could connect. */ + rfbInetdDisconnectPtr inetdDisconnectHook; /** These hooks are called to pass keyboard state back to the client */ rfbGetKeyboardLedStateHookPtr getKeyboardLedStateHook; @@ -413,6 +418,7 @@ typedef struct sraRegion* sraRegionPtr; */ typedef void (*ClientGoneHookPtr)(struct _rfbClientRec* cl); +typedef void (*NegotiationFinishedHookPtr)(struct _rfbClientRec* cl); typedef struct _rfbFileTransferData { int fd; @@ -458,6 +464,9 @@ typedef struct _rfbClientRec { void* clientData; ClientGoneHookPtr clientGoneHook; + /* negotiationFinishedHook is called when the negotiation phase has ended */ + NegotiationFinishedHookPtr negotiationFinishedHook; + SOCKET sock; char *host; @@ -623,6 +632,7 @@ typedef struct _rfbClientRec { rfbBool enableServerIdentity; /**< client supports ServerIdentity encoding */ rfbBool enableKeyboardLedState; /**< client supports KeyboardState encoding */ rfbBool enableLastRectEncoding; /**< client supports LastRect encoding */ + rfbBool disableBackground; /**< client wants to disable background */ rfbBool enableCursorShapeUpdates; /**< client supports cursor shape updates */ rfbBool enableCursorPosUpdates; /**< client supports cursor position updates */ rfbBool useRichCursorEncoding; /**< rfbEncodingRichCursor is preferred */ diff --git a/rfb/rfbclient.h b/rfb/rfbclient.h index 4f6f4f4..17ddba6 100644 --- a/rfb/rfbclient.h +++ b/rfb/rfbclient.h @@ -169,6 +169,8 @@ typedef void (*SoftCursorUnlockScreenProc)(struct _rfbClient* client); typedef void (*GotFrameBufferUpdateProc)(struct _rfbClient* client, int x, int y, int w, int h); typedef void (*FinishedFrameBufferUpdateProc)(struct _rfbClient* client); typedef char* (*GetPasswordProc)(struct _rfbClient* client); +typedef void (*AuthenticationResultsProc)(struct _rfbClient* client, uint32_t authResult); +typedef void (*NetworkStatusProc)(struct _rfbClient* client, uint32_t errorCode); typedef rfbCredential* (*GetCredentialProc)(struct _rfbClient* client, int credentialType); typedef rfbBool (*MallocFrameBufferProc)(struct _rfbClient* client); typedef void (*GotXCutTextProc)(struct _rfbClient* client, const char *text, int textlen); @@ -301,6 +303,8 @@ typedef struct _rfbClient { GotFrameBufferUpdateProc GotFrameBufferUpdate; /** the pointer returned by GetPassword will be freed after use! */ GetPasswordProc GetPassword; + AuthenticationResultsProc AuthenticationResults; + NetworkStatusProc NetworkStatus; MallocFrameBufferProc MallocFrameBuffer; GotXCutTextProc GotXCutText; BellProc Bell; diff --git a/rfb/rfbproto.h b/rfb/rfbproto.h index ba643b1..6c1a2fb 100644 --- a/rfb/rfbproto.h +++ b/rfb/rfbproto.h @@ -13,6 +13,7 @@ */ /* + * Copyright (C) 2015 Timothy Pearson <kb9vqf@pearsoncomputing.net>. All Rights Reserved. * Copyright (C) 2009-2010 D. R. Commander. All Rights Reserved. * Copyright (C) 2005 Rohit Kumar, Johannes E. Schindelin * Copyright (C) 2004-2008 Sun Microsystems, Inc. All Rights Reserved. @@ -122,6 +123,14 @@ typedef uint32_t in_addr_t; #define MAX_ENCODINGS 64 +#define rfbNetworkConnectionSuccess 0 +#define rfbNetworkRFBConnectionSuccess 1 +#define rfbNetworkConnectionClosed 2 +#define rfbNetworkConnectionFailed 3 +#define rfbNetworkNameResolutionFailed 4 +#define rfbNetworkRFBServerNotValid 5 +#define rfbNetworkRFBProtocolFailure 6 + /***************************************************************************** * * Structures used in several messages @@ -445,6 +454,13 @@ typedef struct { #define rfbEncodingH264 0x48323634 +/* + * Reserved range for TDE: + * 0xFFFE0100 - 0xFFFE01FF + */ + +#define rfbEncodingBackground 0xFFFE0125 + /* Cache & XOR-Zlib - rdv@2002 */ #define rfbEncodingCache 0xFFFF0000 #define rfbEncodingCacheEnable 0xFFFF0001 |