You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libtdevnc/rfb
dscho 951ec26b7c The PseudoEncoding extension code was getting silly:
If the client asked for an encoding, and no enabled extension handled it,
LibVNCServer would walk through all extensions, and if they promised to handle
the encoding, execute the extension's newClient() if it was not NULL.

However, if newClient is not NULL, it will be called when a client connects,
and if it returns TRUE, the extension will be enabled. Since all the state of
the extension should be in the client data, there is no good reason why
newClient should return FALSE the first time (thus not enabling the extension),
but TRUE when called just before calling enablePseudoEncoding().

So in effect, the extension got enabled all the time, even if that was not
necessary.

The resolution is to pass a void** to enablePseudoEncoding. This has the
further advantage that enablePseudoEncoding can remalloc() or free() the
data without problems. Though keep in mind that if enablePseudoEncoding()
is called on a not-yet-enabled extension, the passed data points to NULL.
21 years ago
..
.cvsignore forgotten .cvsignore 23 years ago
default8x16.h ANSIfy, fix some warnings from Linus' sparse 21 years ago
keysym.h moved include/ to rfb/ 23 years ago
rfb.h The PseudoEncoding extension code was getting silly: 21 years ago
rfbclient.h add an extension mechanism for LibVNCClient, modify the client data handling 21 years ago
rfbconfig.h.in API change: Bool, KeySym, Pixel get prefix "rfb"; constants in rfbconfig.h get prefix "LIBVNCSERVER_" 23 years ago
rfbproto.h kill BackChannel and CustomClientMessage: the new extension technique makes these hooks obsolete 21 years ago
rfbregion.h add convenience function to clip using x2,y2 instead of w,h 21 years ago
stamp-h.in another try to make CVS more helpful with configure 23 years ago