GNOME Bugzilla – Bug 590831
unable to connect to newer Mac OS X computers using ARD 3.1+ or bonjour screensharing
Last modified: 2010-08-25 12:13:20 UTC
Originally reported at: https://bugs.launchpad.net/bugs/390364 Binary package hint: vinagre error :vnc does not support newer Macs running ARD 3.1 + or bonjour screensharing Error Log don@dt-MBPro:~$ sudo vinagre --gtk-vnc-debug gtk-vnc: Expose 0x0 @ 442,395 gtk-vnc: Started background coroutine gtk-vnc: Resolving host ben-3.local 5900 gtk-vnc: Trying socket 17 gtk-vnc: Protocol initialization gtk-vnc: Server version: 3.889 gtk-vnc: Using version: 3.8 gtk-vnc: Possible auth 30 gtk-vnc: Possible auth 35 gtk-vnc: Requested auth type 30 gtk-vnc: Requesting that VNC close gtk-vnc: Requesting graceful shutdown of connection gtk-vnc: Waking up couroutine to shutdown gracefully gtk-vnc: Auth failed gtk-vnc: Doing final VNC cleanup gtk-vnc: Requesting that VNC close gtk-vnc: Releasing VNC widget Of course, when using ARD 3.2.2 on systems using Mac OS X 10.4.11 or 10.5.6, I can connect/control all versions of ARD - believe backward supports is back to rev 1.2x -Note- ARD 3.1 supports VNC port 5900 over encryption (typically port 22) --- Original bug report was against jaunty but I can confirm it on karmic as well with the following package versions. libgtk-vnc-1.0-0 0.3.8-2ubuntu2 A VNC viewer widget for GTK+ (runtime libraries) vinagre 2.27.5-0ubuntu2 VNC client for the GNOME Desktop
This happens because the authentication types that your MAC reports are unknown to us. We don't know auth types 30 and 35, they seem to be ADR specific. Notice that ADR even reports an undocumented rfb version (3.889). Do you have some public information that we can use to implement this 'extension'? I do not own a MAC anyway, so, I don't know if someone else is interested on doing that.
I did some more digging into this issue and discovered the following quote on the 'Chicken for VNC' client bug tracker. "Unfortunately this version (3.889) is a completely proprietary and undocumented modification to the regular RFB protocol. Apple uses this for their own ARD communication when you have _not_ selected [the checkbox for] "VNC viewers may control screen with password" in the options." If you check that box in the System Preferences-->Sharing control panel then it seems ARD will revert back to communicating using a standard RFB protocol. I shall test this workaround out when I return home later. If successful, It may be worth putting this in a FAQ, or even better adding some handling code to inform the user of the workaround when they try to connect to a server reporting 3.889 rfb.
Confirming the workaround. If you check the 'VNC viewers may control screen with password' checkbox in System Preferences-->Sharing on the mac then vinagre can successfully connect to the remote machine. gtk-vnc: Expose 0x0 @ 1388,1016 gtk-vnc: Started background coroutine gtk-vnc: Resolving host hostname.local 5900 gtk-vnc: Trying socket 28 gtk-vnc: Protocol initialization gtk-vnc: Server version: 3.889 gtk-vnc: Using version: 3.8 gtk-vnc: Possible auth 30 gtk-vnc: Possible auth 2 gtk-vnc: Possible auth 35 gtk-vnc: Requested auth type 2 gtk-vnc: Waiting for auth type gtk-vnc: Choose auth 2 gtk-vnc: Requesting missing credentials gtk-vnc: Set password credential gtk-vnc: Waiting for missing credentials gtk-vnc: Got all credentials gtk-vnc: Do Challenge gtk-vnc: Checking auth result gtk-vnc: Success
Created attachment 140530 [details] Sharing Preferences Pane screenshot of mac pref attached
so can we detect the non-compliant server protocol (i.e., auth types 30 and 35) and hence display a message to the user indicating they should click the checkbox on their macs system preferences to enable auth type 2? or should we just document the problem in a faq somewhere?
This was fixed in gtk-vnc trunk (bug 570284), and the fix will be released in the next version of vinagre.
(In reply to comment #6) > This was fixed in gtk-vnc trunk (bug 570284), and the fix will be released in > the next version of vinagre. > http://git.gnome.org/browse/gtk-vnc/commit/?id=416a0dc3592e831409e6e8c18929b785094ef87c > Wow, that's fantastic news!