diff --git a/CHANGELOG.md b/CHANGELOG.md index 7fffdb2..27de2b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,22 @@ All notable changes to rustvncserver will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [2.1.0] - 2025-12-17 + +### Fixed + +- **Critical ZRLE encoding bug:** Fixed buffer overflow on non-standard dimensions + - Root cause: Hardcoded `bytes_per_pixel = 4` instead of using `PixelFormat::bytes_per_pixel()` + - Affected screen resolutions not divisible by 64 (e.g., 960x540) + - Fixed CPIXEL size calculation per RFC 6143 + - Fixed input buffer validation to use correct bytes per pixel + +### Changed + +- Updated `rfb-encodings` dependency from `0.1.5` to `0.1.6` + - Includes comprehensive test suite with 44 automated tests + - All 10 encodings now have test coverage (golden, round-trip, or smoke tests) + ## [2.0.0] - 2025-10-27 **Stable Release** - This marks the official 2.0.0 release, graduating from beta status. diff --git a/Cargo.toml b/Cargo.toml index b1e5ab5..da3f6ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rustvncserver" -version = "2.0.0" +version = "2.1.0" edition = "2021" rust-version = "1.90" authors = ["Dustin McAfee"]