2021-11-17 Daniel P. Berrangé Bump version to 1.3.0 and add release notes The vala-tools package was dropped long ago It has only existed as a virtual Provides line since Fedora 25 2021-11-15 Daniel P. Berrangé Remove bogus newlines from VNC_DEBUG calls This macro is a wrappar around g_debug and as such doesn't need to add its own newline, unless trying to break a single message across lines. 2021-11-12 Daniel P. Berrangé tools: fix gvnccapture handling of subauth types src: rewrite challenge code to use gnutls gcrypt refuses to encrypt DES data using an all-zeros key. While this might seem reasonable, this is the key that you get when someone sets a zero length password in a VNC server. IOW, the gcrypt behaviour prevents gtk-vnc connecting to a server with zero length password. GNUTLS doesn't have this problem but also doesn't support DES-ECB, so we have to fake it by calling DES-CBC for each block individually. Conceptually this is horribly inefficient, but since the VNC challenge is only 16 bytes long it isn't a problem in the real world. src: pull challenge encryption out into separate helper method 2021-05-27 Daniel P. Berrangé fix missing includes for quartz and broadway GDK backends This is another case of the bug fixed in commit d2c93a2bc0a9caa73bbebb41333fa7930d4165ab Author: Daniel P. Berrangé Date: Tue Mar 30 15:00:00 2021 +0100 Add missing include of gdkwin32.h Closes: https://gitlab.gnome.org/GNOME/gtk-vnc/-/issues/16 Remove unused variables 2021-05-27 Thomas Loimer Add a button to rotate the screen On each click on the new menu item, the screen is rotated by additional 90 degrees clockwise. 2021-05-27 Jakub Janků ard: set connection error As with vncEncryptBytes2 in the earlier patch, the connection error must be set, otherwise the connection stays in the mainloop, but nothing is happening. ard: cleanup properly With the current code, if one of the gcry functions in vnc_connection_perform_auth_ard() fails: * key isn't released * md5 isn't closed * mpis and dh aren't released vncEncryptBytes2: set connection error and cleanup If vncEncryptBytes2 fails, the false return value propagates upwards, but no error is set. The connection ends up stuck in the mainloop with nothing happening. Additionally, the mpis and dh aren't freed. To fix that, return the gcry error from vncEncryptBytes2 and set the connection error accordingly. vnc-auth: emit "vnc-auth-failure" for weak key In vnc_connection_perform_auth_vnc(), if the user enters an empty password, gcry_cipher_setkey() fails with GPG_ERR_WEAK_KEY. In such case, we want to give the useranother chance to reenter the password, as is the case when the password is incorrect. To enable that, the auth-failure signal needs to be emitted. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1941398 2021-05-07 Mart Raudsepp meson: Find python explicitly to honor downstream python choice 2021-04-28 Matt Turner meson: Fix configuration failure with -Dwith-vala=disabled Otherwise with_vala is not defined, and meson setup results in src/meson.build:169:5: ERROR: Unknown variable "with_vala". 2021-04-26 Jakub Janků build: improve --with-coroutine=auto choice When the required ucontext functions aren't found, switch to gthread coroutines instead of failing during the build. These functions are absent from the POSIX.1-2008. Fixes: https://gitlab.gnome.org/GNOME/gtk-vnc/-/issues/11