Commit a48035a1 authored by Floris Bos's avatar Floris Bos

Only advertise xvp support when xvpHook is set

Prevent that clients show "reboot" "power down" buttons
that are not going to work.
Signed-off-by: 's avatarFloris Bos <bos@je-eigen-domein.nl>
parent 4674d463
...@@ -953,7 +953,6 @@ rfbSendSupportedMessages(rfbClientPtr cl) ...@@ -953,7 +953,6 @@ rfbSendSupportedMessages(rfbClientPtr cl)
/*rfbSetBit(msgs.client2server, rfbSetSW); */ /*rfbSetBit(msgs.client2server, rfbSetSW); */
/*rfbSetBit(msgs.client2server, rfbTextChat); */ /*rfbSetBit(msgs.client2server, rfbTextChat); */
rfbSetBit(msgs.client2server, rfbPalmVNCSetScaleFactor); rfbSetBit(msgs.client2server, rfbPalmVNCSetScaleFactor);
rfbSetBit(msgs.client2server, rfbXvp);
rfbSetBit(msgs.server2client, rfbFramebufferUpdate); rfbSetBit(msgs.server2client, rfbFramebufferUpdate);
rfbSetBit(msgs.server2client, rfbSetColourMapEntries); rfbSetBit(msgs.server2client, rfbSetColourMapEntries);
...@@ -961,7 +960,11 @@ rfbSendSupportedMessages(rfbClientPtr cl) ...@@ -961,7 +960,11 @@ rfbSendSupportedMessages(rfbClientPtr cl)
rfbSetBit(msgs.server2client, rfbServerCutText); rfbSetBit(msgs.server2client, rfbServerCutText);
rfbSetBit(msgs.server2client, rfbResizeFrameBuffer); rfbSetBit(msgs.server2client, rfbResizeFrameBuffer);
rfbSetBit(msgs.server2client, rfbPalmVNCReSizeFrameBuffer); rfbSetBit(msgs.server2client, rfbPalmVNCReSizeFrameBuffer);
rfbSetBit(msgs.server2client, rfbXvp);
if (cl->screen->xvpHook) {
rfbSetBit(msgs.client2server, rfbXvp);
rfbSetBit(msgs.server2client, rfbXvp);
}
memcpy(&cl->updateBuf[cl->ublen], (char *)&msgs, sz_rfbSupportedMessages); memcpy(&cl->updateBuf[cl->ublen], (char *)&msgs, sz_rfbSupportedMessages);
cl->ublen += sz_rfbSupportedMessages; cl->ublen += sz_rfbSupportedMessages;
...@@ -2214,13 +2217,15 @@ rfbProcessClientNormalMessage(rfbClientPtr cl) ...@@ -2214,13 +2217,15 @@ rfbProcessClientNormalMessage(rfbClientPtr cl)
cl->enableServerIdentity = TRUE; cl->enableServerIdentity = TRUE;
} }
break; break;
case rfbEncodingXvp: case rfbEncodingXvp:
rfbLog("Enabling Xvp protocol extension for client " if (cl->screen->xvpHook) {
"%s\n", cl->host); rfbLog("Enabling Xvp protocol extension for client "
if (!rfbSendXvp(cl, 1, rfbXvp_Init)) { "%s\n", cl->host);
rfbCloseClient(cl); if (!rfbSendXvp(cl, 1, rfbXvp_Init)) {
return; rfbCloseClient(cl);
} return;
}
}
break; break;
default: default:
#if defined(LIBVNCSERVER_HAVE_LIBZ) || defined(LIBVNCSERVER_HAVE_LIBPNG) #if defined(LIBVNCSERVER_HAVE_LIBZ) || defined(LIBVNCSERVER_HAVE_LIBPNG)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment