0.9.15 sees some internal code structure cleanup, UTF-8 clipboard handling improvements and HTTP server support for multithreaded VNC servers. 27 issues and pull requests were closed/merged since 0.9.14.
🕯 I'd like to dedicate this release to those affected by the 2024 Magdeburg car attack which happened two days ago. In these sad times, let's hope that all these alt-right AfD alternative-facts explainer news that are popping up right now (and their prominent supporters) don't get the upper hand in people's heads.
Overall changes:
- Added fuzzing with OSS-Fuzz thanks to Catena Cyber.
- Improved build system to have files where they are expected in contemporary open source projects. Also split out Mac OS server example to own repo at https://github.com/LibVNC/macVNC
- Added Windows CI on GitHub.
LibVNCServer/LibVNCClient:
- Fixed building with OpenSSL >= 3.0.0.
- Fixed UTF-8 clipboard handling compatibility cases.
LibVNCClient:
- Fixed LibVNCClient handling of UltraVNC MSLogonII when built with OpenSSL.
- Added UTF-8 clipboard handling.
- Added API to allow the client to specify a subregion of the server's framebuffer and have LibVNCClient only ask for this, not the whole framebuffer.
- Fixed Tight decoding endianness issues.
- Added a Qt-based client example.
LibVNCServer:
- Added a proof-of-concept X11 example server.
- Improved SSH example by having it use libsshtunnel instead of custom code.
- Fixed HTTPD for multithreaded servers.
- Fixed UTF-8 clipboard crash.