After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 590831 - unable to connect to newer Mac OS X computers using ARD 3.1+ or bonjour screensharing
unable to connect to newer Mac OS X computers using ARD 3.1+ or bonjour scree...
Status: RESOLVED FIXED
Product: vinagre
Classification: Applications
Component: VNC
2.27.x
Other Linux
: Normal normal
: ---
Assigned To: vinagre-maint
vinagre-maint
Depends on:
Blocks:
 
 
Reported: 2009-08-05 10:56 UTC by Dominic Evans
Modified: 2010-08-25 12:13 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28


Attachments
Sharing Preferences Pane (174.04 KB, image/png)
2009-08-12 08:13 UTC, Dominic Evans
Details

Description Dominic Evans 2009-08-05 10:56:42 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
Comment 1 Jonh Wendell 2009-08-06 14:41:11 UTC
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.
Comment 2 Dominic Evans 2009-08-06 16:23:22 UTC
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.
Comment 3 Dominic Evans 2009-08-12 08:12:07 UTC
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
Comment 4 Dominic Evans 2009-08-12 08:13:56 UTC
Created attachment 140530 [details]
Sharing Preferences Pane

screenshot of mac pref attached
Comment 5 Dominic Evans 2009-08-12 08:16:24 UTC
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?
Comment 6 Jonh Wendell 2010-08-25 12:10:17 UTC
This was fixed in gtk-vnc trunk (bug 570284), and the fix will be released in the next version of vinagre.
Comment 7 Dominic Evans 2010-08-25 12:13:20 UTC
(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!