Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GUACAMOLE-1196: Read VNC dimensions directly from the client, not the screen. #550

Conversation

jmuehlner
Copy link
Contributor

@jmuehlner jmuehlner commented Sep 11, 2024

Per https://libvnc.github.io/doc/html/structrfb_client.html#a46b40d74f04da6f6c302370156cc46c0, the screen field of the VNC client should only be used for setting intended dimensions, not reading updated / current dimensions.

@corentin-soriano
Copy link
Contributor

This partially fixes the issue I mentioned yesterday in the ticket.
With disable_display_resize checked, no more display problems, but without check disable_display_resize, I was disconnected instantly upon connection.

Is there no way to automatically detect if the remote vnc server supports dimension changes?

@necouchman
Copy link
Contributor

Is there no way to automatically detect if the remote vnc server supports dimension changes?

In my research, there is no consistent way to detect support for it - there is no standard handshake or capabilities message between the client and the server that passes this information, it's just up to the client to try and the server to either respond by changing the display size or ignore the request.

@jmuehlner
Copy link
Contributor Author

Is there no way to automatically detect if the remote vnc server supports dimension changes?

In my research, there is no consistent way to detect support for it - there is no standard handshake or capabilities message between the client and the server that passes this information, it's just up to the client to try and the server to either respond by changing the display size or ignore the request.

Sounds like there's not much left to do here, yeah? People will just have to disable VNC resizing for any server that can't handle the resize request.

@necouchman
Copy link
Contributor

Is there no way to automatically detect if the remote vnc server supports dimension changes?

In my research, there is no consistent way to detect support for it - there is no standard handshake or capabilities message between the client and the server that passes this information, it's just up to the client to try and the server to either respond by changing the display size or ignore the request.

Sounds like there's not much left to do here, yeah? People will just have to disable VNC resizing for any server that can't handle the resize request.

Agreed. I'll merge this and we'll probably have to call it good, unless someone else comes up with a more reliable way to test for server-side support of resizing.

@necouchman necouchman merged commit c5702d1 into apache:staging/1.6.0 Sep 12, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants