Package: remmina-plugin-vnc
Version: 1.0.0-6
Control: retitle -1 LIBVNCSERVER_WITH_CLIENT_TLS support



---------- Forwarded message ----------
Date: 2014-02-25 15:23 GMT+01:00
Subject: Proposal for fix in remmina-plugin-vnc


Hi,

On current latest versions on Debian and Ubuntu (and similar),
remmina-plugin-vnc does not connect to OSX Native VNC servers (in
Lion, Mountain Lion and Mavericks).
See this page for discussion
https://www.mail-archive.com/desktop-packages@lists.launchpad.net/msg268619.html

I have examined the source of both remmina-plugins and libvncclient
(libvncserver actually) in debian and have found the cause of the
problem.

Traditionally remmina-plugins-vnc ships with its own modified
implementation of libvncserver which has been patched to enable GnuTLS
support. Remmina sets a definition called LIBVNCSERVER_WITH_CLIENT_TLS
=1 in the config header (rfbconfig.h) of this modified libvncserver
implementation, then within the source for remmina-plugin-vnc it
checks for this definition each time it needs to check of encryption
is supported.

The default distro version of libvncserver (and libvncclient) has
GnuTLS support baked in for a while now, however the distro version
does not define LIBVNCSERVER_WITH_CLIENT_TLS=1 in its rfbconfig.h
config header files.

It seems as though current versions of remmina-plugins-vnc is built
against the distro version of libvncclient, rather than the
remmina-shipped version. As a result, all code which is wrapped in
"#ifdef LIBVNCSERVER_WITH_CLIENT_TLS" has been excluded. That is why
remmina throws the error stating that the Authentication scheme is not
supported, even though the code is there to support it in the source.

I have fixed this and recompiled the plugin file and verified it working.
Assuming that all Debian and Ubuntu libvncserver and libvncclient libs
are built with GnuTLS support by default these days, there are three
ways to fix this simply.

1) #define LIBVNCSERVER_WITH_CLIENT_TLS=1 at the top of vnc_plugin.c
in remmina-plugins-vnc

2) remove all #ifdef LIBVNCSERVER_WITH_CLIENT_TLS wrapper checks from
around cod in vnc_plugin.c in remmina-plugins-vnc (this is what I did)

3) ensure remmina-plugins-vnc is built against its shipped patched
version rather than the distro version of libvncserver.

This may fix some other bugs which have arisen also as a result of
remmina assuming that libvncclient was not built with GnuTLS support.
There are quite a few chucks which are wrapped in that #ifdef check
which are skipped.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to