LibVNCServer/LibVNCClient
Public Types | Data Fields
rfbClientPtr Struct Reference

#include <rfb.h>

Public Types

enum  {
  RFB_PROTOCOL_VERSION , RFB_SECURITY_TYPE , RFB_AUTHENTICATION , RFB_INITIALISATION ,
  RFB_NORMAL , RFB_INITIALISATION_SHARED , RFB_SHUTDOWN
}
 Possible client states: More...
 

Data Fields

rfbScreenInfoPtr screen
 back pointer to the screen More...
 
rfbScreenInfoPtr scaledScreen
 points to a scaled version of the screen buffer in cl->scaledScreenList More...
 
rfbBool PalmVNC
 how did the client tell us it wanted the screen changed? Ultra style or palm style? More...
 
void * clientData
 private data. More...
 
ClientGoneHookPtr clientGoneHook
 
rfbSocket sock
 
char * host
 
int protocolMajorVersion
 
int protocolMinorVersion
 
enum rfbClientRec:: { ... }  state
 Possible client states: More...
 
rfbBool reverseConnection
 
rfbBool onHold
 
rfbBool readyForSetColourMapEntries
 
rfbBool useCopyRect
 
int preferredEncoding
 
int correMaxWidth
 
int correMaxHeight
 
rfbBool viewOnly
 
uint8_t authChallenge [CHALLENGESIZE]
 
sraRegionPtr copyRegion
 the destination region of the copy More...
 
int copyDX
 
int copyDY
 the translation by which the copy happens More...
 
sraRegionPtr modifiedRegion
 
sraRegionPtr requestedRegion
 As part of the FramebufferUpdateRequest, a client can express interest in a subrectangle of the whole framebuffer. More...
 
struct timeval startDeferring
 The following member represents the state of the "deferred update" timer. More...
 
struct timeval startPtrDeferring
 
int lastPtrX
 
int lastPtrY
 
int lastPtrButtons
 
rfbTranslateFnType translateFn
 translateFn points to the translation function which is used to copy and translate a rectangle from the framebuffer to an output buffer. More...
 
char * translateLookupTable
 
rfbPixelFormat format
 
char updateBuf [UPDATE_BUF_SIZE]
 
int ublen
 
struct _rfbStatList * statEncList
 
struct _rfbStatList * statMsgList
 
int rawBytesEquivalent
 
int bytesSent
 
rfbBool compStreamInitedLZO
 
char * lzoWrkMem
 
rfbFileTransferData fileTransfer
 
int lastKeyboardLedState
 keep track of last value so we can send change events More...
 
rfbBool enableSupportedMessages
 client supports SupportedMessages encoding More...
 
rfbBool enableSupportedEncodings
 client supports SupportedEncodings encoding More...
 
rfbBool enableServerIdentity
 client supports ServerIdentity encoding More...
 
rfbBool enableKeyboardLedState
 client supports KeyboardState encoding More...
 
rfbBool enableLastRectEncoding
 client supports LastRect encoding More...
 
rfbBool enableCursorShapeUpdates
 client supports cursor shape updates More...
 
rfbBool enableCursorPosUpdates
 client supports cursor position updates More...
 
rfbBool useRichCursorEncoding
 rfbEncodingRichCursor is preferred More...
 
rfbBool cursorWasChanged
 cursor shape update should be sent More...
 
rfbBool cursorWasMoved
 cursor position update should be sent More...
 
int cursorX
 
int cursorY
 the coordinates of the cursor, if enableCursorShapeUpdates = FALSE More...
 
rfbBool useNewFBSize
 client supports NewFBSize encoding More...
 
rfbBool newFBSizePending
 framebuffer size was changed More...
 
struct _rfbClientRec * prev
 
struct _rfbClientRec * next
 
int progressiveSliceY
 if progressive updating is on, this variable holds the current y coordinate of the progressive slice. More...
 
rfbExtensionDataextensions
 
char * zrleBeforeBuf
 for threaded zrle More...
 
void * paletteHelper
 
char * beforeEncBuf
 for thread safety for rfbSendFBUpdate() More...
 
int beforeEncBufSize
 
char * afterEncBuf
 
int afterEncBufSize
 
int afterEncBufLen
 
rfbSslCtxsslctx
 
wsCtxwsctx
 
char * wspath
 
ClientFramebufferUpdateRequestHookPtr clientFramebufferUpdateRequestHook
 clientFramebufferUpdateRequestHook is called when a client requests a frame buffer update. More...
 
rfbBool useExtDesktopSize
 
int requestedDesktopSizeChange
 
int lastDesktopSizeChangeError
 

Detailed Description

Definition at line 425 of file rfb.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Possible client states:

Enumerator
RFB_PROTOCOL_VERSION 

establishing protocol version

RFB_SECURITY_TYPE 

negotiating security (RFB v.3.7)

RFB_AUTHENTICATION 

authenticating

RFB_INITIALISATION 

sending initialisation messages

RFB_NORMAL 

normal protocol messages

RFB_INITIALISATION_SHARED 

sending initialisation messages with implicit shared-flag already true

RFB_SHUTDOWN 

Client is shutting down.

Definition at line 484 of file rfb.h.

Field Documentation

◆ afterEncBuf

char* afterEncBuf

Definition at line 668 of file rfb.h.

◆ afterEncBufLen

int afterEncBufLen

Definition at line 670 of file rfb.h.

◆ afterEncBufSize

int afterEncBufSize

Definition at line 669 of file rfb.h.

◆ authChallenge

uint8_t authChallenge[CHALLENGESIZE]

Definition at line 508 of file rfb.h.

◆ beforeEncBuf

char* beforeEncBuf

for thread safety for rfbSendFBUpdate()

Definition at line 666 of file rfb.h.

◆ beforeEncBufSize

int beforeEncBufSize

Definition at line 667 of file rfb.h.

◆ bytesSent

int bytesSent

Definition at line 579 of file rfb.h.

◆ clientData

void* clientData

private data.

You should put any application client specific data into a struct and let clientData point to it. Don't forget to free the struct via clientGoneHook!

This is useful if the IO functions have to behave client specific.

Definition at line 442 of file rfb.h.

◆ clientFramebufferUpdateRequestHook

ClientFramebufferUpdateRequestHookPtr clientFramebufferUpdateRequestHook

clientFramebufferUpdateRequestHook is called when a client requests a frame buffer update.

Definition at line 690 of file rfb.h.

◆ clientGoneHook

ClientGoneHookPtr clientGoneHook

Definition at line 443 of file rfb.h.

◆ compStreamInitedLZO

rfbBool compStreamInitedLZO

Definition at line 602 of file rfb.h.

◆ copyDX

int copyDX

Definition at line 534 of file rfb.h.

◆ copyDY

int copyDY

the translation by which the copy happens

Definition at line 534 of file rfb.h.

◆ copyRegion

sraRegionPtr copyRegion

the destination region of the copy

Definition at line 533 of file rfb.h.

◆ correMaxHeight

int correMaxHeight

Definition at line 503 of file rfb.h.

◆ correMaxWidth

int correMaxWidth

Definition at line 503 of file rfb.h.

◆ cursorWasChanged

rfbBool cursorWasChanged

cursor shape update should be sent

Definition at line 616 of file rfb.h.

◆ cursorWasMoved

rfbBool cursorWasMoved

cursor position update should be sent

Definition at line 617 of file rfb.h.

◆ cursorX

int cursorX

Definition at line 618 of file rfb.h.

◆ cursorY

int cursorY

the coordinates of the cursor, if enableCursorShapeUpdates = FALSE

Definition at line 618 of file rfb.h.

◆ enableCursorPosUpdates

rfbBool enableCursorPosUpdates

client supports cursor position updates

Definition at line 614 of file rfb.h.

◆ enableCursorShapeUpdates

rfbBool enableCursorShapeUpdates

client supports cursor shape updates

Definition at line 613 of file rfb.h.

◆ enableKeyboardLedState

rfbBool enableKeyboardLedState

client supports KeyboardState encoding

Definition at line 611 of file rfb.h.

◆ enableLastRectEncoding

rfbBool enableLastRectEncoding

client supports LastRect encoding

Definition at line 612 of file rfb.h.

◆ enableServerIdentity

rfbBool enableServerIdentity

client supports ServerIdentity encoding

Definition at line 610 of file rfb.h.

◆ enableSupportedEncodings

rfbBool enableSupportedEncodings

client supports SupportedEncodings encoding

Definition at line 609 of file rfb.h.

◆ enableSupportedMessages

rfbBool enableSupportedMessages

client supports SupportedMessages encoding

Definition at line 608 of file rfb.h.

◆ extensions

rfbExtensionData* extensions

Definition at line 652 of file rfb.h.

◆ fileTransfer

rfbFileTransferData fileTransfer

Definition at line 605 of file rfb.h.

◆ format

Definition at line 562 of file rfb.h.

◆ host

char* host

Definition at line 446 of file rfb.h.

◆ lastDesktopSizeChangeError

int lastDesktopSizeChangeError

Definition at line 694 of file rfb.h.

◆ lastKeyboardLedState

int lastKeyboardLedState

keep track of last value so we can send change events

Definition at line 607 of file rfb.h.

◆ lastPtrButtons

int lastPtrButtons

Definition at line 555 of file rfb.h.

◆ lastPtrX

int lastPtrX

Definition at line 553 of file rfb.h.

◆ lastPtrY

int lastPtrY

Definition at line 554 of file rfb.h.

◆ lzoWrkMem

char* lzoWrkMem

Definition at line 603 of file rfb.h.

◆ modifiedRegion

sraRegionPtr modifiedRegion

Definition at line 536 of file rfb.h.

◆ newFBSizePending

rfbBool newFBSizePending

framebuffer size was changed

Definition at line 622 of file rfb.h.

◆ next

struct _rfbClientRec* next

Definition at line 625 of file rfb.h.

◆ onHold

rfbBool onHold

Definition at line 499 of file rfb.h.

◆ paletteHelper

void* paletteHelper

Definition at line 656 of file rfb.h.

◆ PalmVNC

rfbBool PalmVNC

how did the client tell us it wanted the screen changed? Ultra style or palm style?

Definition at line 433 of file rfb.h.

◆ preferredEncoding

int preferredEncoding

Definition at line 502 of file rfb.h.

◆ prev

struct _rfbClientRec* prev

Definition at line 624 of file rfb.h.

◆ progressiveSliceY

int progressiveSliceY

if progressive updating is on, this variable holds the current y coordinate of the progressive slice.

Definition at line 650 of file rfb.h.

◆ protocolMajorVersion

int protocolMajorVersion

Definition at line 449 of file rfb.h.

◆ protocolMinorVersion

int protocolMinorVersion

Definition at line 450 of file rfb.h.

◆ rawBytesEquivalent

int rawBytesEquivalent

Definition at line 578 of file rfb.h.

◆ readyForSetColourMapEntries

rfbBool readyForSetColourMapEntries

Definition at line 500 of file rfb.h.

◆ requestedDesktopSizeChange

int requestedDesktopSizeChange

Definition at line 693 of file rfb.h.

◆ requestedRegion

sraRegionPtr requestedRegion

As part of the FramebufferUpdateRequest, a client can express interest in a subrectangle of the whole framebuffer.

This is stored in the requestedRegion member. In the normal case this is the whole framebuffer if the client is ready, empty if it's not.

Definition at line 543 of file rfb.h.

◆ reverseConnection

rfbBool reverseConnection

Definition at line 498 of file rfb.h.

◆ scaledScreen

rfbScreenInfoPtr scaledScreen

points to a scaled version of the screen buffer in cl->scaledScreenList

Definition at line 431 of file rfb.h.

◆ screen

rfbScreenInfoPtr screen

back pointer to the screen

Definition at line 428 of file rfb.h.

◆ sock

rfbSocket sock

Definition at line 445 of file rfb.h.

◆ sslctx

rfbSslCtx* sslctx

Definition at line 679 of file rfb.h.

◆ startDeferring

struct timeval startDeferring

The following member represents the state of the "deferred update" timer.

  • when the framebuffer is modified and the client is ready, in most cases it is more efficient to defer sending the update by a few milliseconds so that several changes to the framebuffer can be combined into a single update.

Definition at line 543 of file rfb.h.

◆ startPtrDeferring

struct timeval startPtrDeferring

Definition at line 543 of file rfb.h.

◆ 

enum { ... } state

Possible client states:

◆ statEncList

struct _rfbStatList* statEncList

Definition at line 576 of file rfb.h.

◆ statMsgList

struct _rfbStatList* statMsgList

Definition at line 577 of file rfb.h.

◆ translateFn

rfbTranslateFnType translateFn

translateFn points to the translation function which is used to copy and translate a rectangle from the framebuffer to an output buffer.

Definition at line 560 of file rfb.h.

◆ translateLookupTable

char* translateLookupTable

Definition at line 561 of file rfb.h.

◆ ublen

int ublen

Definition at line 573 of file rfb.h.

◆ updateBuf

char updateBuf[UPDATE_BUF_SIZE]

Definition at line 572 of file rfb.h.

◆ useCopyRect

rfbBool useCopyRect

Definition at line 501 of file rfb.h.

◆ useExtDesktopSize

rfbBool useExtDesktopSize

Definition at line 692 of file rfb.h.

◆ useNewFBSize

rfbBool useNewFBSize

client supports NewFBSize encoding

Definition at line 621 of file rfb.h.

◆ useRichCursorEncoding

rfbBool useRichCursorEncoding

rfbEncodingRichCursor is preferred

Definition at line 615 of file rfb.h.

◆ viewOnly

rfbBool viewOnly

Definition at line 505 of file rfb.h.

◆ wsctx

wsCtx* wsctx

Definition at line 680 of file rfb.h.

◆ wspath

char* wspath

Definition at line 681 of file rfb.h.

◆ zrleBeforeBuf

char* zrleBeforeBuf

for threaded zrle

Definition at line 655 of file rfb.h.


The documentation for this struct was generated from the following file: