From d55827c772942a5a0d2854b3fb948a1890b7f8b4 Mon Sep 17 00:00:00 2001
From: devolutionsbot <31221910+devolutionsbot@users.noreply.github.com>
Date: Tue, 6 May 2025 00:48:39 -0400
Subject: [PATCH] chore(release): prepare for publishing
---
Cargo.lock | 354 ++++++++++-----------
benches/CHANGELOG.md | 21 ++
crates/ironrdp-acceptor/Cargo.toml | 4 +-
crates/ironrdp-async/CHANGELOG.md | 11 +
crates/ironrdp-async/Cargo.toml | 6 +-
crates/ironrdp-blocking/Cargo.toml | 4 +-
crates/ironrdp-client/Cargo.toml | 4 +-
crates/ironrdp-cliprdr-native/CHANGELOG.md | 15 +
crates/ironrdp-cliprdr-native/Cargo.toml | 4 +-
crates/ironrdp-cliprdr/CHANGELOG.md | 11 +
crates/ironrdp-cliprdr/Cargo.toml | 4 +-
crates/ironrdp-connector/CHANGELOG.md | 20 ++
crates/ironrdp-connector/Cargo.toml | 4 +-
crates/ironrdp-displaycontrol/Cargo.toml | 2 +-
crates/ironrdp-dvc/Cargo.toml | 2 +-
crates/ironrdp-graphics/CHANGELOG.md | 14 +
crates/ironrdp-graphics/Cargo.toml | 4 +-
crates/ironrdp-input/CHANGELOG.md | 8 +
crates/ironrdp-input/Cargo.toml | 4 +-
crates/ironrdp-pdu/CHANGELOG.md | 10 +
crates/ironrdp-pdu/Cargo.toml | 2 +-
crates/ironrdp-rdpdr-native/Cargo.toml | 4 +-
crates/ironrdp-rdpdr/CHANGELOG.md | 11 +
crates/ironrdp-rdpdr/Cargo.toml | 4 +-
crates/ironrdp-rdpsnd-native/Cargo.toml | 2 +-
crates/ironrdp-rdpsnd/CHANGELOG.md | 34 ++
crates/ironrdp-rdpsnd/Cargo.toml | 4 +-
crates/ironrdp-server/CHANGELOG.md | 64 ++++
crates/ironrdp-server/Cargo.toml | 8 +-
crates/ironrdp-session/CHANGELOG.md | 36 +++
crates/ironrdp-session/Cargo.toml | 6 +-
crates/ironrdp-svc/Cargo.toml | 2 +-
crates/ironrdp-tls/CHANGELOG.md | 8 +
crates/ironrdp-tls/Cargo.toml | 2 +-
crates/ironrdp-tokio/CHANGELOG.md | 11 +
crates/ironrdp-tokio/Cargo.toml | 2 +-
crates/ironrdp/CHANGELOG.md | 222 +++++++++++++
crates/ironrdp/Cargo.toml | 18 +-
fuzz/Cargo.lock | 99 ++++--
39 files changed, 781 insertions(+), 264 deletions(-)
create mode 100644 benches/CHANGELOG.md
diff --git a/Cargo.lock b/Cargo.lock
index 7d42d09ae..3b7b079c6 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -84,7 +84,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
dependencies = [
"cfg-if",
- "getrandom 0.2.15",
+ "getrandom 0.2.16",
"once_cell",
"version_check",
"zerocopy 0.7.35",
@@ -362,9 +362,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
[[package]]
name = "aws-lc-rs"
-version = "1.12.6"
+version = "1.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dabb68eb3a7aa08b46fddfd59a3d55c978243557a90ab804769f7e20e67d2b01"
+checksum = "19b756939cb2f8dc900aa6dcd505e6e2428e9cae7ff7b028c49e3946efa70878"
dependencies = [
"aws-lc-sys",
"zeroize",
@@ -372,9 +372,9 @@ dependencies = [
[[package]]
name = "aws-lc-sys"
-version = "0.27.0"
+version = "0.28.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bbe221bbf523b625a4dd8585c7f38166e31167ec2ca98051dbcb4c3b6e825d2"
+checksum = "bfa9b6986f250236c27e5a204062434a773a13243d2ffc2955f37bdba4c5c6a1"
dependencies = [
"bindgen 0.69.5",
"cc",
@@ -412,9 +412,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
[[package]]
name = "base64ct"
-version = "1.7.1"
+version = "1.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb97d56060ee67d285efb8001fec9d2a4c710c32efd2e14b5cbb5ba71930fc2d"
+checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3"
[[package]]
name = "benches"
@@ -560,18 +560,18 @@ checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf"
[[package]]
name = "bytemuck"
-version = "1.22.0"
+version = "1.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540"
+checksum = "9134a6ef01ce4b366b50689c94f82c14bc72bc5d0386829828a2e2752ef7958c"
dependencies = [
"bytemuck_derive",
]
[[package]]
name = "bytemuck_derive"
-version = "1.8.1"
+version = "1.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a"
+checksum = "7ecc273b49b3205b83d648f0690daa588925572cc5063745bfe547fe7ec8e1a1"
dependencies = [
"proc-macro2",
"quote",
@@ -645,9 +645,9 @@ dependencies = [
[[package]]
name = "cc"
-version = "1.2.16"
+version = "1.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c"
+checksum = "8691782945451c1c383942c4874dbe63814f61cb57ef773cda2972682b7bb3c0"
dependencies = [
"jobserver",
"libc",
@@ -1158,15 +1158,15 @@ checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
[[package]]
name = "data-encoding"
-version = "2.8.0"
+version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010"
+checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
[[package]]
name = "der"
-version = "0.7.9"
+version = "0.7.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
+checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb"
dependencies = [
"const-oid",
"der_derive",
@@ -1201,9 +1201,9 @@ dependencies = [
[[package]]
name = "deranged"
-version = "0.4.1"
+version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28cfac68e08048ae1883171632c2aef3ebc555621ae56fbccce1cbf22dd7f058"
+checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e"
dependencies = [
"powerfmt",
]
@@ -1317,9 +1317,9 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
[[package]]
name = "dpi"
-version = "0.1.1"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f25c0e292a7ca6d6498557ff1df68f32c99850012b6ea401cf8daf771f22ff53"
+checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76"
[[package]]
name = "drm"
@@ -1481,9 +1481,9 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
[[package]]
name = "errno"
-version = "0.3.10"
+version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
+checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e"
dependencies = [
"libc",
"windows-sys 0.59.0",
@@ -1548,15 +1548,15 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d"
[[package]]
name = "flagset"
-version = "0.4.6"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3ea1ec5f8307826a5b71094dd91fc04d4ae75d5709b20ad351c7fb4815c86ec"
+checksum = "b7ac824320a75a52197e8f2d787f6a38b6718bb6897a35142d749af3c0e8f4fe"
[[package]]
name = "flate2"
-version = "1.1.0"
+version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11faaf5a5236997af9848be0bef4db95824b1d534ebc64d0f0c6cf3e67bd38dc"
+checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece"
dependencies = [
"crc32fast",
"miniz_oxide",
@@ -1767,9 +1767,9 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.2.15"
+version = "0.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
+checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"
dependencies = [
"cfg-if",
"js-sys",
@@ -1780,14 +1780,14 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.3.1"
+version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8"
+checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0"
dependencies = [
"cfg-if",
"libc",
- "wasi 0.13.3+wasi-0.2.2",
- "windows-targets 0.52.6",
+ "r-efi",
+ "wasi 0.14.2+wasi-0.2.4",
]
[[package]]
@@ -1868,9 +1868,9 @@ dependencies = [
[[package]]
name = "h2"
-version = "0.4.8"
+version = "0.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2"
+checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5"
dependencies = [
"atomic-waker",
"bytes",
@@ -1887,9 +1887,9 @@ dependencies = [
[[package]]
name = "half"
-version = "2.4.1"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888"
+checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9"
dependencies = [
"cfg-if",
"crunchy",
@@ -1897,9 +1897,9 @@ dependencies = [
[[package]]
name = "hashbrown"
-version = "0.15.2"
+version = "0.15.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
+checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3"
[[package]]
name = "heck"
@@ -1997,17 +1997,6 @@ dependencies = [
"windows-sys 0.59.0",
]
-[[package]]
-name = "hostname"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867"
-dependencies = [
- "libc",
- "match_cfg",
- "winapi",
-]
-
[[package]]
name = "http"
version = "1.3.1"
@@ -2103,9 +2092,9 @@ dependencies = [
[[package]]
name = "hyper-util"
-version = "0.1.10"
+version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4"
+checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2"
dependencies = [
"bytes",
"futures-channel",
@@ -2113,6 +2102,7 @@ dependencies = [
"http",
"http-body",
"hyper",
+ "libc",
"pin-project-lite",
"socket2",
"tokio",
@@ -2122,16 +2112,17 @@ dependencies = [
[[package]]
name = "iana-time-zone"
-version = "0.1.61"
+version = "0.1.63"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
+checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8"
dependencies = [
"android_system_properties",
"core-foundation-sys",
"iana-time-zone-haiku",
"js-sys",
+ "log",
"wasm-bindgen",
- "windows-core 0.52.0",
+ "windows-core 0.61.0",
]
[[package]]
@@ -2184,9 +2175,9 @@ dependencies = [
[[package]]
name = "icu_locid_transform_data"
-version = "1.5.0"
+version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e"
+checksum = "7515e6d781098bf9f7205ab3fc7e9709d34554ae0b21ddbcb5febfa4bc7df11d"
[[package]]
name = "icu_normalizer"
@@ -2208,9 +2199,9 @@ dependencies = [
[[package]]
name = "icu_normalizer_data"
-version = "1.5.0"
+version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516"
+checksum = "c5e8338228bdc8ab83303f16b797e177953730f601a96c25d10cb3ab0daa0cb7"
[[package]]
name = "icu_properties"
@@ -2229,9 +2220,9 @@ dependencies = [
[[package]]
name = "icu_properties_data"
-version = "1.5.0"
+version = "1.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569"
+checksum = "85fb8799753b75aee8d2a21d7c14d9f38921b54b3dbda10f5a3c7a7b82dba5e2"
[[package]]
name = "icu_provider"
@@ -2296,9 +2287,9 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.8.0"
+version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3954d50fe15b02142bf25d3b8bdadb634ec3948f103d04ffe3031bc8fe9d7058"
+checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e"
dependencies = [
"equivalent",
"hashbrown",
@@ -2363,7 +2354,7 @@ dependencies = [
[[package]]
name = "ironrdp"
-version = "0.9.1"
+version = "0.10.0"
dependencies = [
"anyhow",
"async-trait",
@@ -2419,7 +2410,7 @@ dependencies = [
[[package]]
name = "ironrdp-async"
-version = "0.4.0"
+version = "0.4.1"
dependencies = [
"bytes",
"ironrdp-connector",
@@ -2485,7 +2476,7 @@ dependencies = [
[[package]]
name = "ironrdp-cliprdr"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -2506,7 +2497,7 @@ dependencies = [
[[package]]
name = "ironrdp-cliprdr-native"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"ironrdp-cliprdr",
"ironrdp-core",
@@ -2517,7 +2508,7 @@ dependencies = [
[[package]]
name = "ironrdp-connector"
-version = "0.4.0"
+version = "0.5.0"
dependencies = [
"arbitrary",
"ironrdp-core",
@@ -2593,7 +2584,7 @@ dependencies = [
[[package]]
name = "ironrdp-graphics"
-version = "0.3.0"
+version = "0.3.1"
dependencies = [
"bit_field",
"bitflags 2.9.0",
@@ -2613,7 +2604,7 @@ dependencies = [
[[package]]
name = "ironrdp-input"
-version = "0.2.0"
+version = "0.2.1"
dependencies = [
"bitvec",
"ironrdp-pdu",
@@ -2622,7 +2613,7 @@ dependencies = [
[[package]]
name = "ironrdp-pdu"
-version = "0.4.0"
+version = "0.5.0"
dependencies = [
"bit_field",
"bitflags 2.9.0",
@@ -2657,7 +2648,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpdr"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -2681,7 +2672,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpsnd"
-version = "0.4.0"
+version = "0.5.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -2705,7 +2696,7 @@ dependencies = [
[[package]]
name = "ironrdp-server"
-version = "0.5.0"
+version = "0.6.0"
dependencies = [
"anyhow",
"async-trait",
@@ -2733,7 +2724,7 @@ dependencies = [
[[package]]
name = "ironrdp-session"
-version = "0.3.0"
+version = "0.4.0"
dependencies = [
"ironrdp-connector",
"ironrdp-core",
@@ -2807,7 +2798,7 @@ dependencies = [
[[package]]
name = "ironrdp-tls"
-version = "0.1.2"
+version = "0.1.3"
dependencies = [
"tokio",
"tokio-native-tls",
@@ -2817,7 +2808,7 @@ dependencies = [
[[package]]
name = "ironrdp-tokio"
-version = "0.3.0"
+version = "0.3.1"
dependencies = [
"bytes",
"ironrdp-async",
@@ -2836,7 +2827,7 @@ dependencies = [
"chrono",
"futures-channel",
"futures-util",
- "getrandom 0.2.15",
+ "getrandom 0.2.16",
"gloo-net",
"gloo-timers",
"iron-remote-desktop",
@@ -2936,10 +2927,11 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
[[package]]
name = "jobserver"
-version = "0.1.32"
+version = "0.1.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0"
+checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a"
dependencies = [
+ "getrandom 0.3.2",
"libc",
]
@@ -2979,9 +2971,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
[[package]]
name = "libc"
-version = "0.2.171"
+version = "0.2.172"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
+checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
[[package]]
name = "libloading"
@@ -2995,9 +2987,9 @@ dependencies = [
[[package]]
name = "libm"
-version = "0.2.11"
+version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
+checksum = "a25169bd5913a4b437588a7e3d127cd6e90127b60e0ffbd834a38f1599e016b8"
[[package]]
name = "libredox"
@@ -3007,7 +2999,7 @@ checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [
"bitflags 2.9.0",
"libc",
- "redox_syscall 0.5.10",
+ "redox_syscall 0.5.12",
]
[[package]]
@@ -3030,9 +3022,9 @@ checksum = "2a385b1be4e5c3e362ad2ffa73c392e53f031eaa5b7d648e64cd87f27f6063d7"
[[package]]
name = "linux-raw-sys"
-version = "0.9.2"
+version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db9c683daf087dc577b7506e9695b3d556a9f3849903fa28186283afd6809e9"
+checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
[[package]]
name = "litemap"
@@ -3052,9 +3044,9 @@ dependencies = [
[[package]]
name = "log"
-version = "0.4.26"
+version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e"
+checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
[[package]]
name = "lru-cache"
@@ -3074,12 +3066,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "match_cfg"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4"
-
[[package]]
name = "matchers"
version = "0.1.0"
@@ -3137,9 +3123,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
[[package]]
name = "miniz_oxide"
-version = "0.8.5"
+version = "0.8.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5"
+checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a"
dependencies = [
"adler2",
"simd-adler32",
@@ -3621,9 +3607,9 @@ dependencies = [
[[package]]
name = "once_cell"
-version = "1.21.0"
+version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cde51589ab56b20a6f686b2c68f7a0bd6add753d697abf720d63f8db3ab7b1ad"
+checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]]
name = "oorandom"
@@ -3639,9 +3625,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
[[package]]
name = "openssl"
-version = "0.10.71"
+version = "0.10.72"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd"
+checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da"
dependencies = [
"bitflags 2.9.0",
"cfg-if",
@@ -3671,9 +3657,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
[[package]]
name = "openssl-sys"
-version = "0.9.106"
+version = "0.9.108"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd"
+checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847"
dependencies = [
"cc",
"libc",
@@ -3771,7 +3757,7 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
dependencies = [
"cfg-if",
"libc",
- "redox_syscall 0.5.10",
+ "redox_syscall 0.5.12",
"smallvec",
"windows-targets 0.52.6",
]
@@ -4067,7 +4053,7 @@ version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9"
dependencies = [
- "zerocopy 0.8.23",
+ "zerocopy 0.8.25",
]
[[package]]
@@ -4082,9 +4068,9 @@ dependencies = [
[[package]]
name = "prettyplease"
-version = "0.2.30"
+version = "0.2.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1ccf34da56fc294e7d4ccf69a85992b7dfb826b7cf57bac6a70bba3494cc08a"
+checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6"
dependencies = [
"proc-macro2",
"syn",
@@ -4116,9 +4102,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.94"
+version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84"
+checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
dependencies = [
"unicode-ident",
]
@@ -4151,9 +4137,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
[[package]]
name = "quick-xml"
-version = "0.37.2"
+version = "0.37.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "165859e9e55f79d67b96c5d96f4e88b6f2695a1972849c15a6a3f5c59fc2c003"
+checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb"
dependencies = [
"memchr",
]
@@ -4167,6 +4153,12 @@ dependencies = [
"proc-macro2",
]
+[[package]]
+name = "r-efi"
+version = "5.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5"
+
[[package]]
name = "radium"
version = "0.7.0"
@@ -4186,13 +4178,12 @@ dependencies = [
[[package]]
name = "rand"
-version = "0.9.0"
+version = "0.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94"
+checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97"
dependencies = [
"rand_chacha 0.9.0",
"rand_core 0.9.3",
- "zerocopy 0.8.23",
]
[[package]]
@@ -4221,7 +4212,7 @@ version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
dependencies = [
- "getrandom 0.2.15",
+ "getrandom 0.2.16",
]
[[package]]
@@ -4230,7 +4221,7 @@ version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38"
dependencies = [
- "getrandom 0.3.1",
+ "getrandom 0.3.2",
]
[[package]]
@@ -4288,9 +4279,9 @@ dependencies = [
[[package]]
name = "redox_syscall"
-version = "0.5.10"
+version = "0.5.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1"
+checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af"
dependencies = [
"bitflags 2.9.0",
]
@@ -4404,13 +4395,9 @@ dependencies = [
[[package]]
name = "resolv-conf"
-version = "0.7.0"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00"
-dependencies = [
- "hostname",
- "quick-error",
-]
+checksum = "fc7c8f7f733062b66dc1c63f9db168ac0b97a9210e247fa90fdc9ad08f51b302"
[[package]]
name = "rfc6979"
@@ -4439,7 +4426,7 @@ checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7"
dependencies = [
"cc",
"cfg-if",
- "getrandom 0.2.15",
+ "getrandom 0.2.16",
"libc",
"untrusted",
"windows-sys 0.52.0",
@@ -4540,22 +4527,22 @@ dependencies = [
[[package]]
name = "rustix"
-version = "1.0.2"
+version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f7178faa4b75a30e269c71e61c353ce2748cf3d76f0c44c393f4e60abf49b825"
+checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266"
dependencies = [
"bitflags 2.9.0",
"errno",
"libc",
- "linux-raw-sys 0.9.2",
+ "linux-raw-sys 0.9.4",
"windows-sys 0.59.0",
]
[[package]]
name = "rustls"
-version = "0.23.23"
+version = "0.23.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395"
+checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321"
dependencies = [
"aws-lc-rs",
"log",
@@ -4595,9 +4582,9 @@ checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c"
[[package]]
name = "rustls-webpki"
-version = "0.102.8"
+version = "0.103.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9"
+checksum = "7149975849f1abb3832b246010ef62ccc80d3a76169517ada7188252b9cfb437"
dependencies = [
"aws-lc-rs",
"ring",
@@ -4803,9 +4790,9 @@ dependencies = [
[[package]]
name = "sha2"
-version = "0.10.8"
+version = "0.10.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
+checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283"
dependencies = [
"cfg-if",
"cpufeatures",
@@ -4860,9 +4847,9 @@ dependencies = [
[[package]]
name = "signal-hook-registry"
-version = "1.4.2"
+version = "1.4.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1"
+checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410"
dependencies = [
"libc",
]
@@ -4934,9 +4921,9 @@ dependencies = [
[[package]]
name = "socket2"
-version = "0.5.8"
+version = "0.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8"
+checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef"
dependencies = [
"libc",
"windows-sys 0.52.0",
@@ -4962,7 +4949,7 @@ dependencies = [
"objc2-foundation",
"objc2-quartz-core",
"raw-window-handle",
- "redox_syscall 0.5.10",
+ "redox_syscall 0.5.12",
"rustix 0.38.44",
"tiny-xlib",
"wasm-bindgen",
@@ -5080,9 +5067,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
[[package]]
name = "syn"
-version = "2.0.100"
+version = "2.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0"
+checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf"
dependencies = [
"proc-macro2",
"quote",
@@ -5100,9 +5087,9 @@ dependencies = [
[[package]]
name = "synstructure"
-version = "0.13.1"
+version = "0.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
+checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
dependencies = [
"proc-macro2",
"quote",
@@ -5138,15 +5125,14 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
[[package]]
name = "tempfile"
-version = "3.18.0"
+version = "3.19.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2c317e0a526ee6120d8dabad239c8dadca62b24b6f168914bbbc8e2fb1f0e567"
+checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf"
dependencies = [
- "cfg-if",
"fastrand",
- "getrandom 0.3.1",
+ "getrandom 0.3.2",
"once_cell",
- "rustix 1.0.2",
+ "rustix 1.0.7",
"windows-sys 0.59.0",
]
@@ -5401,9 +5387,9 @@ dependencies = [
[[package]]
name = "tokio-util"
-version = "0.7.13"
+version = "0.7.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078"
+checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df"
dependencies = [
"bytes",
"futures-core",
@@ -5414,9 +5400,9 @@ dependencies = [
[[package]]
name = "toml"
-version = "0.8.20"
+version = "0.8.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148"
+checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae"
dependencies = [
"serde",
"serde_spanned",
@@ -5426,26 +5412,33 @@ dependencies = [
[[package]]
name = "toml_datetime"
-version = "0.6.8"
+version = "0.6.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
+checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3"
dependencies = [
"serde",
]
[[package]]
name = "toml_edit"
-version = "0.22.24"
+version = "0.22.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474"
+checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e"
dependencies = [
"indexmap",
"serde",
"serde_spanned",
"toml_datetime",
+ "toml_write",
"winnow",
]
+[[package]]
+name = "toml_write"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076"
+
[[package]]
name = "tower"
version = "0.5.2"
@@ -5588,7 +5581,7 @@ dependencies = [
"httparse",
"log",
"native-tls",
- "rand 0.9.0",
+ "rand 0.9.1",
"rustls",
"rustls-pki-types",
"sha1",
@@ -5683,7 +5676,7 @@ version = "1.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9"
dependencies = [
- "getrandom 0.3.1",
+ "getrandom 0.3.2",
"js-sys",
"serde",
"wasm-bindgen",
@@ -5774,9 +5767,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "wasi"
-version = "0.13.3+wasi-0.2.2"
+version = "0.14.2+wasi-0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2"
+checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3"
dependencies = [
"wit-bindgen-rt",
]
@@ -5897,9 +5890,9 @@ dependencies = [
[[package]]
name = "wayland-cursor"
-version = "0.31.8"
+version = "0.31.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a93029cbb6650748881a00e4922b076092a6a08c11e7fbdb923f064b23968c5d"
+checksum = "a65317158dec28d00416cb16705934070aef4f8393353d41126c54264ae0f182"
dependencies = [
"rustix 0.38.44",
"wayland-client",
@@ -5933,9 +5926,9 @@ dependencies = [
[[package]]
name = "wayland-protocols-wlr"
-version = "0.3.6"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "248a02e6f595aad796561fa82d25601bd2c8c3b145b1c7453fc8f94c1a58f8b2"
+checksum = "1cb6cdc73399c0e06504c437fe3cf886f25568dd5454473d565085b36d6a8bbf"
dependencies = [
"bitflags 2.9.0",
"wayland-backend",
@@ -6005,16 +5998,16 @@ version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6994d13118ab492c3c80c1f81928718159254c53c472bf9ce36f8dae4add02a7"
dependencies = [
- "redox_syscall 0.5.10",
+ "redox_syscall 0.5.12",
"wasite",
"web-sys",
]
[[package]]
name = "widestring"
-version = "1.1.0"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311"
+checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d"
[[package]]
name = "winapi"
@@ -6079,15 +6072,6 @@ dependencies = [
"windows-core 0.61.0",
]
-[[package]]
-name = "windows-core"
-version = "0.52.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9"
-dependencies = [
- "windows-targets 0.52.6",
-]
-
[[package]]
name = "windows-core"
version = "0.54.0"
@@ -6538,9 +6522,9 @@ dependencies = [
[[package]]
name = "winnow"
-version = "0.7.4"
+version = "0.7.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e97b544156e9bebe1a0ffbc03484fc1ffe3100cbce3ffb17eac35f7cdd7ab36"
+checksum = "d9fb597c990f03753e08d3c29efbfcf2019a003b4bf4ba19225c158e1549f0f3"
dependencies = [
"memchr",
]
@@ -6577,9 +6561,9 @@ dependencies = [
[[package]]
name = "wit-bindgen-rt"
-version = "0.33.0"
+version = "0.39.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c"
+checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
dependencies = [
"bitflags 2.9.0",
]
@@ -6761,11 +6745,11 @@ dependencies = [
[[package]]
name = "zerocopy"
-version = "0.8.23"
+version = "0.8.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fd97444d05a4328b90e75e503a34bad781f14e28a823ad3557f0750df1ebcbc6"
+checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb"
dependencies = [
- "zerocopy-derive 0.8.23",
+ "zerocopy-derive 0.8.25",
]
[[package]]
@@ -6781,9 +6765,9 @@ dependencies = [
[[package]]
name = "zerocopy-derive"
-version = "0.8.23"
+version = "0.8.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6352c01d0edd5db859a63e2605f4ea3183ddbd15e2c4a9e7d32184df75e4f154"
+checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef"
dependencies = [
"proc-macro2",
"quote",
diff --git a/benches/CHANGELOG.md b/benches/CHANGELOG.md
new file mode 100644
index 000000000..f0966d2f3
--- /dev/null
+++ b/benches/CHANGELOG.md
@@ -0,0 +1,21 @@
+# Changelog
+
+All notable changes to this project 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).
+
+
+## [[0.1.0](https://github.com/Devolutions/IronRDP/releases/tag/benches-v0.1.0)] - 2025-05-06
+
+### Features
+
+- Add perfenc ([dd787af5a0](https://github.com/Devolutions/IronRDP/commit/dd787af5a02557aae102988c534b055cce5f0996))
+
+ Make some internal APIs publicly visible thanks to "visibility" when
+ compiling with the "__bench" feature.
+
+ ("testsuite-core" also learned "__bench", because fast_path.rs is a
+ shared file)
+
+
diff --git a/crates/ironrdp-acceptor/Cargo.toml b/crates/ironrdp-acceptor/Cargo.toml
index 8d709d606..bb4efb157 100644
--- a/crates/ironrdp-acceptor/Cargo.toml
+++ b/crates/ironrdp-acceptor/Cargo.toml
@@ -17,9 +17,9 @@ test = false
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
-ironrdp-connector = { path = "../ironrdp-connector", version = "0.4" } # public
+ironrdp-connector = { path = "../ironrdp-connector", version = "0.5" } # public
ironrdp-async = { path = "../ironrdp-async", version = "0.4" } # public
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-async/CHANGELOG.md b/crates/ironrdp-async/CHANGELOG.md
index b83ee99e3..95b2d2eea 100644
--- a/crates/ironrdp-async/CHANGELOG.md
+++ b/crates/ironrdp-async/CHANGELOG.md
@@ -6,6 +6,17 @@ 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).
+## [[0.4.1](https://github.com/Devolutions/IronRDP/compare/ironrdp-async-v0.4.0...ironrdp-async-v0.4.1)] - 2025-05-06
+
+### Features
+
+- Add reqwest feature (#734) ([032c38be92](https://github.com/Devolutions/IronRDP/commit/032c38be9229cfd35f0f6fc8eac5cccc960480d3))
+
+ Move the client ReqwestNetworkClient to ironrdp-tokio, so other clients
+ can optionally use the implementation.
+
+
+
## [[0.3.2](https://github.com/Devolutions/IronRDP/compare/ironrdp-async-v0.3.1...ironrdp-async-v0.3.2)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-async/Cargo.toml b/crates/ironrdp-async/Cargo.toml
index bef94600a..f7f7c8f4f 100644
--- a/crates/ironrdp-async/Cargo.toml
+++ b/crates/ironrdp-async/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-async"
-version = "0.4.0"
+version = "0.4.1"
readme = "README.md"
description = "Provides `Future`s wrapping the IronRDP state machines conveniently"
edition.workspace = true
@@ -16,9 +16,9 @@ doctest = false
test = false
[dependencies]
-ironrdp-connector = { path = "../ironrdp-connector", version = "0.4" } # public
+ironrdp-connector = { path = "../ironrdp-connector", version = "0.5" } # public
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
tracing = { version = "0.1", features = ["log"] }
bytes = "1" # public
diff --git a/crates/ironrdp-blocking/Cargo.toml b/crates/ironrdp-blocking/Cargo.toml
index 8c802a46f..0afa82cd2 100644
--- a/crates/ironrdp-blocking/Cargo.toml
+++ b/crates/ironrdp-blocking/Cargo.toml
@@ -16,9 +16,9 @@ doctest = false
test = false
[dependencies]
-ironrdp-connector = { path = "../ironrdp-connector", version = "0.4" } # public
+ironrdp-connector = { path = "../ironrdp-connector", version = "0.5" } # public
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
tracing = { version = "0.1", features = ["log"] }
bytes = "1" # public
diff --git a/crates/ironrdp-client/Cargo.toml b/crates/ironrdp-client/Cargo.toml
index 5e6eaef56..7aa05dd36 100644
--- a/crates/ironrdp-client/Cargo.toml
+++ b/crates/ironrdp-client/Cargo.toml
@@ -30,7 +30,7 @@ native-tls = ["ironrdp-tls/native-tls", "tokio-tungstenite/native-tls"]
[dependencies]
# Protocols
-ironrdp = { path = "../ironrdp", version = "0.9", features = [
+ironrdp = { path = "../ironrdp", version = "0.10", features = [
"session",
"input",
"graphics",
@@ -43,7 +43,7 @@ ironrdp = { path = "../ironrdp", version = "0.9", features = [
"connector",
] }
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] }
-ironrdp-cliprdr-native = { path = "../ironrdp-cliprdr-native", version = "0.2" }
+ironrdp-cliprdr-native = { path = "../ironrdp-cliprdr-native", version = "0.3" }
ironrdp-rdpsnd-native = { path = "../ironrdp-rdpsnd-native", version = "0.2" }
ironrdp-tls = { path = "../ironrdp-tls", version = "0.1" }
ironrdp-tokio = { path = "../ironrdp-tokio", version = "0.3", features = ["reqwest"] }
diff --git a/crates/ironrdp-cliprdr-native/CHANGELOG.md b/crates/ironrdp-cliprdr-native/CHANGELOG.md
index 69f3ee386..bbcbaf3ca 100644
--- a/crates/ironrdp-cliprdr-native/CHANGELOG.md
+++ b/crates/ironrdp-cliprdr-native/CHANGELOG.md
@@ -6,6 +6,21 @@ 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).
+## [[0.3.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-cliprdr-native-v0.2.0...ironrdp-cliprdr-native-v0.3.0)] - 2025-05-06
+
+### Features
+
+- [**breaking**] Add on_ready() callback (#729) ([4e581e0f47](https://github.com/Devolutions/IronRDP/commit/4e581e0f47593097c16f2dde43cd0ff0976fe73e))
+
+ Give a hint to the backend when the channel is actually connected &
+ ready to process messages.
+
+### Build
+
+- Update `windows` crate to 0.61.1 (#743) ([135b8bc4f6](https://github.com/Devolutions/IronRDP/commit/135b8bc4f6e62a2b41ecc63c6804a01cc7d67b69))
+
+
+
## [[0.1.4](https://github.com/Devolutions/IronRDP/compare/ironrdp-cliprdr-native-v0.1.3...ironrdp-cliprdr-native-v0.1.4)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-cliprdr-native/Cargo.toml b/crates/ironrdp-cliprdr-native/Cargo.toml
index 7d0ec69f0..34f69a974 100644
--- a/crates/ironrdp-cliprdr-native/Cargo.toml
+++ b/crates/ironrdp-cliprdr-native/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-cliprdr-native"
-version = "0.2.0"
+version = "0.3.0"
readme = "README.md"
description = "Native CLIPRDR static channel backend implementations for IronRDP"
edition.workspace = true
@@ -16,7 +16,7 @@ doctest = false
test = false
[dependencies]
-ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.2" } # public
+ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.3" } # public
ironrdp-core = { path = "../ironrdp-core", version = "0.1" }
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-cliprdr/CHANGELOG.md b/crates/ironrdp-cliprdr/CHANGELOG.md
index d7ad5cc5f..e2e194b48 100644
--- a/crates/ironrdp-cliprdr/CHANGELOG.md
+++ b/crates/ironrdp-cliprdr/CHANGELOG.md
@@ -6,6 +6,17 @@ 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).
+## [[0.3.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-cliprdr-v0.2.0...ironrdp-cliprdr-v0.3.0)] - 2025-05-06
+
+### Features
+
+- [**breaking**] Add on_ready() callback (#729) ([4e581e0f47](https://github.com/Devolutions/IronRDP/commit/4e581e0f47593097c16f2dde43cd0ff0976fe73e))
+
+ Give a hint to the backend when the channel is actually connected &
+ ready to process messages.
+
+
+
## [[0.2.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-cliprdr-v0.1.3...ironrdp-cliprdr-v0.2.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-cliprdr/Cargo.toml b/crates/ironrdp-cliprdr/Cargo.toml
index 69eaac36b..b9804ca22 100644
--- a/crates/ironrdp-cliprdr/Cargo.toml
+++ b/crates/ironrdp-cliprdr/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-cliprdr"
-version = "0.2.0"
+version = "0.3.0"
readme = "README.md"
description = "CLIPRDR static channel for clipboard implemented as described in MS-RDPECLIP"
edition.workspace = true
@@ -17,7 +17,7 @@ test = false
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
thiserror = "1.0" # FIXME: handwrite the Error trait implementations.
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-connector/CHANGELOG.md b/crates/ironrdp-connector/CHANGELOG.md
index 8f9a8438a..cf0babed7 100644
--- a/crates/ironrdp-connector/CHANGELOG.md
+++ b/crates/ironrdp-connector/CHANGELOG.md
@@ -6,6 +6,26 @@ 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).
+## [[0.5.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-connector-v0.4.0...ironrdp-connector-v0.5.0)] - 2025-05-06
+
+### Features
+
+- Add no_audio_playback flag to Config struct ([9f0edcc4c9](https://github.com/Devolutions/IronRDP/commit/9f0edcc4c9c49d59cc10de37f920aae073e3dd8a))
+
+ Enable audio playback on the client.
+
+### Bug Fixes
+
+- [**breaking**] Fix name of client address field (#754) ([bdde2c76de](https://github.com/Devolutions/IronRDP/commit/bdde2c76ded7315f7bc91d81a0909a1cb827d870))
+
+- Inject socket local address for the client addr (#759) ([712da42ded](https://github.com/Devolutions/IronRDP/commit/712da42dedc193239e457d8270d33cc70bd6a4b9))
+
+ We used to inject the resolved target server address, but that is not
+ what is expected. Server typically ignores this field so this was not a
+ problem up until now.
+
+
+
## [[0.4.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-connector-v0.3.2...ironrdp-connector-v0.4.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-connector/Cargo.toml b/crates/ironrdp-connector/Cargo.toml
index 3e42081f7..e53a783d5 100644
--- a/crates/ironrdp-connector/Cargo.toml
+++ b/crates/ironrdp-connector/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-connector"
-version = "0.4.0"
+version = "0.5.0"
readme = "README.md"
description = "State machines to drive an RDP connection sequence"
edition.workspace = true
@@ -22,7 +22,7 @@ arbitrary = ["dep:arbitrary"]
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
ironrdp-error = { path = "../ironrdp-error", version = "0.1" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["std"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["std"] } # public
arbitrary = { version = "1", features = ["derive"], optional = true } # public
sspi = "0.15" # public
url = "2.5" # public
diff --git a/crates/ironrdp-displaycontrol/Cargo.toml b/crates/ironrdp-displaycontrol/Cargo.toml
index 0148d53e5..867decb4c 100644
--- a/crates/ironrdp-displaycontrol/Cargo.toml
+++ b/crates/ironrdp-displaycontrol/Cargo.toml
@@ -18,7 +18,7 @@ test = false
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
ironrdp-dvc = { path = "../ironrdp-dvc", version = "0.2" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-dvc/Cargo.toml b/crates/ironrdp-dvc/Cargo.toml
index 62795fe60..35ecaf436 100644
--- a/crates/ironrdp-dvc/Cargo.toml
+++ b/crates/ironrdp-dvc/Cargo.toml
@@ -22,7 +22,7 @@ std = []
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["alloc"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["alloc"] } # public
tracing = { version = "0.1", features = ["log"] }
slab = "0.4"
diff --git a/crates/ironrdp-graphics/CHANGELOG.md b/crates/ironrdp-graphics/CHANGELOG.md
index 727997e34..b9aaecfc6 100644
--- a/crates/ironrdp-graphics/CHANGELOG.md
+++ b/crates/ironrdp-graphics/CHANGELOG.md
@@ -6,6 +6,20 @@ 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).
+## [[0.3.1](https://github.com/Devolutions/IronRDP/compare/ironrdp-graphics-v0.3.0...ironrdp-graphics-v0.3.1)] - 2025-05-06
+
+### Features
+
+- Add helper to find diff between images ([20581bb6f1](https://github.com/Devolutions/IronRDP/commit/20581bb6f12561e22031ce0e233daeada836ea67))
+
+ Add some helper to find "damaged" regions, as 64x64 tiles.
+
+### Build
+
+- Yuvutils renamed to yuv (#774) ([d8ab533463](https://github.com/Devolutions/IronRDP/commit/d8ab533463b345b293a89b91b79d4ad974fe007d))
+
+
+
## [[0.3.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-graphics-v0.2.0...ironrdp-graphics-v0.3.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-graphics/Cargo.toml b/crates/ironrdp-graphics/Cargo.toml
index 25700f6a5..7d981ea37 100644
--- a/crates/ironrdp-graphics/Cargo.toml
+++ b/crates/ironrdp-graphics/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-graphics"
-version = "0.3.0"
+version = "0.3.1"
readme = "README.md"
description = "RDP image processing primitives"
edition.workspace = true
@@ -20,7 +20,7 @@ bit_field = "0.10"
bitflags = "2.4"
bitvec = "1.0"
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["std"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["std"] } # public
byteorder = "1.5" # TODO: remove
lazy_static.workspace = true # Legacy crate; prefer std::sync::LazyLock or LazyCell
num-derive.workspace = true # TODO: remove
diff --git a/crates/ironrdp-input/CHANGELOG.md b/crates/ironrdp-input/CHANGELOG.md
index 21122b4aa..55b4749eb 100644
--- a/crates/ironrdp-input/CHANGELOG.md
+++ b/crates/ironrdp-input/CHANGELOG.md
@@ -6,6 +6,14 @@ 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).
+## [[0.2.1](https://github.com/Devolutions/IronRDP/compare/ironrdp-input-v0.2.0...ironrdp-input-v0.2.1)] - 2025-05-06
+
+### Build
+
+- Bump smallvec from 1.14.0 to 1.15.0 (#739) ([e70e7e2c5f](https://github.com/Devolutions/IronRDP/commit/e70e7e2c5f4e3844e0d4135efb4b7b3d71f01c38))
+
+
+
## [[0.2.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-input-v0.1.3...ironrdp-input-v0.2.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-input/Cargo.toml b/crates/ironrdp-input/Cargo.toml
index dd8e60a80..ee0c0b6d1 100644
--- a/crates/ironrdp-input/Cargo.toml
+++ b/crates/ironrdp-input/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-input"
-version = "0.2.0"
+version = "0.2.1"
readme = "README.md"
description = "Utilities to manage and build RDP input packets"
edition.workspace = true
@@ -16,7 +16,7 @@ doctest = false
test = false
[dependencies]
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
bitvec = "1.0"
smallvec = "1.15"
diff --git a/crates/ironrdp-pdu/CHANGELOG.md b/crates/ironrdp-pdu/CHANGELOG.md
index 84ab37e24..c09a5a27e 100644
--- a/crates/ironrdp-pdu/CHANGELOG.md
+++ b/crates/ironrdp-pdu/CHANGELOG.md
@@ -6,6 +6,16 @@ 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).
+## [[0.5.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-pdu-v0.4.0...ironrdp-pdu-v0.5.0)] - 2025-05-06
+
+### Bug Fixes
+
+- Fix possible out of bound indexing in RFX module (#724) ([9f4e6d410b](https://github.com/Devolutions/IronRDP/commit/9f4e6d410b631d8a6b0c09c2abc0817a83cf042b))
+
+ An index bound check was missing in the RFX module. Found by fuzzer.
+
+
+
## [[0.4.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-pdu-v0.3.1...ironrdp-pdu-v0.4.0)] - 2025-03-12
### Bug Fixes
diff --git a/crates/ironrdp-pdu/Cargo.toml b/crates/ironrdp-pdu/Cargo.toml
index d2dbe0cc7..b0ae33466 100644
--- a/crates/ironrdp-pdu/Cargo.toml
+++ b/crates/ironrdp-pdu/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-pdu"
-version = "0.4.0"
+version = "0.5.0"
readme = "README.md"
description = "RDP PDU encoding and decoding"
edition.workspace = true
diff --git a/crates/ironrdp-rdpdr-native/Cargo.toml b/crates/ironrdp-rdpdr-native/Cargo.toml
index f7141981a..a7f5c1c2c 100644
--- a/crates/ironrdp-rdpdr-native/Cargo.toml
+++ b/crates/ironrdp-rdpdr-native/Cargo.toml
@@ -17,8 +17,8 @@ test = false
[target.'cfg(any(target_os = "macos", target_os = "linux"))'.dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" }
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
-ironrdp-rdpdr = { path = "../ironrdp-rdpdr", version = "0.2" } # public
+ironrdp-rdpdr = { path = "../ironrdp-rdpdr", version = "0.3" } # public
nix = { version = "0.29", features = ["fs", "dir"] }
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-rdpdr/CHANGELOG.md b/crates/ironrdp-rdpdr/CHANGELOG.md
index de7a6a176..e6162fc2c 100644
--- a/crates/ironrdp-rdpdr/CHANGELOG.md
+++ b/crates/ironrdp-rdpdr/CHANGELOG.md
@@ -6,6 +6,17 @@ 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).
+## [[0.3.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-rdpdr-v0.2.0...ironrdp-rdpdr-v0.3.0)] - 2025-05-06
+
+### Features
+
+- Add USER_LOGGEDON flag support ([5e78f91713](https://github.com/Devolutions/IronRDP/commit/5e78f917132a174bdd5d8711beb1744de1bd265a))
+
+ As I was debugging some related issue, I implemented that. It may become
+ useful some day.
+
+
+
## [[0.2.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-rdpdr-v0.1.3...ironrdp-rdpdr-v0.2.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-rdpdr/Cargo.toml b/crates/ironrdp-rdpdr/Cargo.toml
index 6da2690a1..91519e607 100644
--- a/crates/ironrdp-rdpdr/Cargo.toml
+++ b/crates/ironrdp-rdpdr/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-rdpdr"
-version = "0.2.0"
+version = "0.3.0"
readme = "README.md"
description = "RDPDR channel implementation."
edition.workspace = true
@@ -18,7 +18,7 @@ test = false
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
ironrdp-error = { path = "../ironrdp-error", version = "0.1" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
tracing = { version = "0.1", features = ["log"] }
bitflags = "2.4"
diff --git a/crates/ironrdp-rdpsnd-native/Cargo.toml b/crates/ironrdp-rdpsnd-native/Cargo.toml
index 45ac834c4..611549b15 100644
--- a/crates/ironrdp-rdpsnd-native/Cargo.toml
+++ b/crates/ironrdp-rdpsnd-native/Cargo.toml
@@ -22,7 +22,7 @@ opus = ["dep:opus", "dep:bytemuck"]
anyhow = "1"
bytemuck = { version = "1.21", optional = true }
cpal = "0.15"
-ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.4" } # public
+ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.5" } # public
opus = { version = "0.3", optional = true }
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-rdpsnd/CHANGELOG.md b/crates/ironrdp-rdpsnd/CHANGELOG.md
index d63702f61..9f83dabcd 100644
--- a/crates/ironrdp-rdpsnd/CHANGELOG.md
+++ b/crates/ironrdp-rdpsnd/CHANGELOG.md
@@ -6,6 +6,40 @@ 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).
+## [[0.5.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-rdpsnd-v0.4.0...ironrdp-rdpsnd-v0.5.0)] - 2025-05-06
+
+### Features
+
+- Add support for client custom flags ([7bd92c0ce5](https://github.com/Devolutions/IronRDP/commit/7bd92c0ce5c686fe18c062b7edfeed46a709fc23))
+
+ Client can support various flags, but always set ALIVE.
+
+### Bug Fixes
+
+- Correct TrainingPdu wPackSize field ([abcc42e01f](https://github.com/Devolutions/IronRDP/commit/abcc42e01fda3ce9c8e1739524e0fc73b8778d83))
+
+- Reply to TrainingPdu ([5dcc526f51](https://github.com/Devolutions/IronRDP/commit/5dcc526f513e8083ff335cad3cc80d2effeb7265))
+
+- Lookup the associated format from the client list ([3d7bc28b97](https://github.com/Devolutions/IronRDP/commit/3d7bc28b9764b1f37b038bb2fbb676ec464ee5ee))
+
+ This is an index to the client list, according to:
+ https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-rdpea/7df64d93-7594-4035-978d-229f2b15f1bc
+
+- Send client formats that match server (#742) ([a8b9614323](https://github.com/Devolutions/IronRDP/commit/a8b96143236ad457b5241f6a2f8acfaf969472b6))
+
+ Windows seems to be confused if the client replies with more formats, or
+ unknown formats (opus).
+
+ ---------
+
+### Refactor
+
+- [**breaking**] Pass format_no instead of AudioFormat ([4172571e8e](https://github.com/Devolutions/IronRDP/commit/4172571e8e061a6a120643393881b5e37f1e61ab))
+
+ This can help avoid extra lookups and cloning.
+
+
+
## [[0.4.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-rdpsnd-v0.3.1...ironrdp-rdpsnd-v0.4.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-rdpsnd/Cargo.toml b/crates/ironrdp-rdpsnd/Cargo.toml
index af53c636a..c4d624399 100644
--- a/crates/ironrdp-rdpsnd/Cargo.toml
+++ b/crates/ironrdp-rdpsnd/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-rdpsnd"
-version = "0.4.0"
+version = "0.5.0"
readme = "README.md"
description = "RDPSND static channel for audio output implemented as described in MS-RDPEA"
edition.workspace = true
@@ -24,7 +24,7 @@ bitflags = "2.4"
tracing = { version = "0.1", features = ["log"] }
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
ironrdp-core = { path = "../ironrdp-core", version = "0.1", features = ["alloc"] }
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["alloc"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["alloc"] } # public
[lints]
workspace = true
diff --git a/crates/ironrdp-server/CHANGELOG.md b/crates/ironrdp-server/CHANGELOG.md
index c88aa309f..e8656ca81 100644
--- a/crates/ironrdp-server/CHANGELOG.md
+++ b/crates/ironrdp-server/CHANGELOG.md
@@ -6,6 +6,70 @@ 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).
+## [[0.6.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-server-v0.5.0...ironrdp-server-v0.6.0)] - 2025-05-06
+
+### Features
+
+- Add stride debug info ([7f57817805](https://github.com/Devolutions/IronRDP/commit/7f578178056282e590179a10cd1eedb8f4d9ad63))
+
+- Add Framebuffer helper struct ([1e87961d16](https://github.com/Devolutions/IronRDP/commit/1e87961d1611ed31f58b407f208295c97c0d2944))
+
+ This will hold the updated bitmap data for the whole framebuffer.
+
+- Add BitmapUpdate::sub() ([a76e84d459](https://github.com/Devolutions/IronRDP/commit/a76e84d45927d61e21c27abcfa31c4f0c7a17bbf))
+
+- Implement some Encoder Debug ([137d91ae7a](https://github.com/Devolutions/IronRDP/commit/137d91ae7a096170ada289d420785c8f5de0663b))
+
+- Keep last full-frame/desktop update ([aeb1193674](https://github.com/Devolutions/IronRDP/commit/aeb1193674641846ae1873def8c84a62a59213d5))
+
+ It should reflect client drawing state.
+
+ In following changes, we will fix it to draw bitmap updates on it, to
+ keep it up to date.
+
+- Find & send the damaged tiles ([fb3769c4a7](https://github.com/Devolutions/IronRDP/commit/fb3769c4a7fce56e340df8c4b19f7d90cda93e50))
+
+ Keep a framebuffer and tile-diff against it, to save from
+ encoding/sending the same bitmap data regions.
+
+- Add perfenc ([dd787af5a0](https://github.com/Devolutions/IronRDP/commit/dd787af5a02557aae102988c534b055cce5f0996))
+
+ Make some internal APIs publicly visible thanks to "visibility" when
+ compiling with the "__bench" feature.
+
+ ("testsuite-core" also learned "__bench", because fast_path.rs is a
+ shared file)
+
+### Bug Fixes
+
+- Use desktop size for RFX channel size (#756) ([806f1d7694](https://github.com/Devolutions/IronRDP/commit/806f1d7694313b1a59842af300a437ae2f6c2463))
+
+- [**breaking**] Remove time_warn! from the public API (#773) ([cc78b1e3dc](https://github.com/Devolutions/IronRDP/commit/cc78b1e3dc1c554dd3fcf6494763caa00ba28ad7))
+
+ This is intended to be an internal macro.
+
+### Please Sort
+
+- Trace ServerEvent dispatching ([d47c1e6415](https://github.com/Devolutions/IronRDP/commit/d47c1e6415f3952061d0830652715130fd3c900c))
+
+### Refactor
+
+- [**breaking**] Drop support for pixelOrder ([db6f4cdb7f](https://github.com/Devolutions/IronRDP/commit/db6f4cdb7f379713979b930e8e1fa1a813ebecc4))
+
+ Dealing with multiple formats is sufficiently annoying, there isn't much
+ need for awkward image layout. This was done for efficiency reason for
+ bitmap encoding, but bitmap is really inefficient anyway and very few
+ servers will actually provide bottom to top images (except with GL/GPU
+ textures, but this is not in scope yet).
+
+- [**breaking**] Use bytes, allowing shareable bitmap data ([3c43fdda76](https://github.com/Devolutions/IronRDP/commit/3c43fdda76f4ef6413db4010471364d6b1be2798))
+
+- [**breaking**] Rename left/top -> x/y ([229070a435](https://github.com/Devolutions/IronRDP/commit/229070a43554927a01541052a819fe3fcd32a913))
+
+ This is more idiomatic, and thus less confusing.
+
+
+
## [[0.5.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-server-v0.4.2...ironrdp-server-v0.5.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-server/Cargo.toml b/crates/ironrdp-server/Cargo.toml
index 352b7214e..30dc3e473 100644
--- a/crates/ironrdp-server/Cargo.toml
+++ b/crates/ironrdp-server/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-server"
-version = "0.5.0"
+version = "0.6.0"
readme = "README.md"
description = "Extendable skeleton for implementing custom RDP servers"
edition.workspace = true
@@ -32,15 +32,15 @@ async-trait = "0.1"
ironrdp-async = { path = "../ironrdp-async", version = "0.4" }
ironrdp-ainput = { path = "../ironrdp-ainput", version = "0.2" }
ironrdp-core = { path = "../ironrdp-core", version = "0.1" }
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4" } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5" } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
-ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.2" } # public
+ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.3" } # public
ironrdp-displaycontrol = { path = "../ironrdp-displaycontrol", version = "0.2" } # public
ironrdp-dvc = { path = "../ironrdp-dvc", version = "0.2" } # public
ironrdp-tokio = { path = "../ironrdp-tokio", version = "0.3" }
ironrdp-acceptor = { path = "../ironrdp-acceptor", version = "0.4" } # public
ironrdp-graphics = { path = "../ironrdp-graphics", version = "0.3" } # public
-ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.4" } # public
+ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.5" } # public
tracing = { version = "0.1", features = ["log"] }
x509-cert = { version = "0.2.5", optional = true }
rustls-pemfile = { version = "2.2.0", optional = true }
diff --git a/crates/ironrdp-session/CHANGELOG.md b/crates/ironrdp-session/CHANGELOG.md
index 089ea035c..f6d692907 100644
--- a/crates/ironrdp-session/CHANGELOG.md
+++ b/crates/ironrdp-session/CHANGELOG.md
@@ -6,6 +6,42 @@ 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).
+## [[0.4.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-session-v0.3.0...ironrdp-session-v0.4.0)] - 2025-05-06
+
+### Features
+
+- [**breaking**] Make DecodedImage Send ([45f66117ba](https://github.com/Devolutions/IronRDP/commit/45f66117ba05170d95b21ec7d97017b44b954f28))
+
+ This will allow to share it between different threads.
+
+- Add DecodeImage helpers ([cd7a60ba45](https://github.com/Devolutions/IronRDP/commit/cd7a60ba45a0241be4ecf3860ec4f82b431a7ce2))
+
+ Having a helper to take the slice of updated region data is generally helpful.
+
+### Bug Fixes
+
+- Update rectangle when applying None codecs updates (#728) ([a50cd643dc](https://github.com/Devolutions/IronRDP/commit/a50cd643dce9621f314231b7598d2fd31e4718c6))
+
+- Return the correct updated region ([7507a152f1](https://github.com/Devolutions/IronRDP/commit/7507a152f14db594e4067bbc01e243cfba77770f))
+
+ "update_rectangle" is set to empty(). The surface updates are then added
+ by "union". But a union with an empty rectangle at (0,0) is still a
+ rectangle at (0,0). We end up with big region updates rooted at (0,0)...
+
+- Decrease verbosity of Rfx frame_index ([b31b99eafb](https://github.com/Devolutions/IronRDP/commit/b31b99eafb0aac2a5e5a610af21a4027ae5cd698))
+
+- Decrease verbosity of FastPath header ([f9b6992e74](https://github.com/Devolutions/IronRDP/commit/f9b6992e74abb929f3001e76abaff5d7215e1cb4))
+
+### Documentation
+
+- Misc doc annotation fix ([b957c085b3](https://github.com/Devolutions/IronRDP/commit/b957c085b317f0823a41fdfde3ec694601b5d132))
+
+### Please Sort
+
+- Trace the surface codec ([ff26400822](https://github.com/Devolutions/IronRDP/commit/ff264008223cd808b0c2e86e961a4c20265d614e))
+
+
+
## [[0.3.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-session-v0.2.3...ironrdp-session-v0.3.0)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-session/Cargo.toml b/crates/ironrdp-session/Cargo.toml
index 477c541ec..429e9d38e 100644
--- a/crates/ironrdp-session/Cargo.toml
+++ b/crates/ironrdp-session/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-session"
-version = "0.3.0"
+version = "0.4.0"
readme = "README.md"
description = "State machines to drive an RDP session"
edition.workspace = true
@@ -17,12 +17,12 @@ test = false
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
-ironrdp-connector = { path = "../ironrdp-connector", version = "0.4" } # public # TODO: at some point, this dependency could be removed (good for compilation speed)
+ironrdp-connector = { path = "../ironrdp-connector", version = "0.5" } # public # TODO: at some point, this dependency could be removed (good for compilation speed)
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3" } # public
ironrdp-dvc = { path = "../ironrdp-dvc", version = "0.2" } # public
ironrdp-error = { path = "../ironrdp-error", version = "0.1" } # public
ironrdp-graphics = { path = "../ironrdp-graphics", version = "0.3" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["std"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["std"] } # public
ironrdp-displaycontrol = { path = "../ironrdp-displaycontrol", version = "0.2" }
tracing = { version = "0.1", features = ["log"] }
diff --git a/crates/ironrdp-svc/Cargo.toml b/crates/ironrdp-svc/Cargo.toml
index f304da862..6a2e38e90 100644
--- a/crates/ironrdp-svc/Cargo.toml
+++ b/crates/ironrdp-svc/Cargo.toml
@@ -21,7 +21,7 @@ std = []
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1" } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", features = ["alloc", "std"] } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", features = ["alloc", "std"] } # public
bitflags = "2.4"
[lints]
diff --git a/crates/ironrdp-tls/CHANGELOG.md b/crates/ironrdp-tls/CHANGELOG.md
index ec3ebe9e2..b2491d3b0 100644
--- a/crates/ironrdp-tls/CHANGELOG.md
+++ b/crates/ironrdp-tls/CHANGELOG.md
@@ -6,6 +6,14 @@ 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).
+## [[0.1.3](https://github.com/Devolutions/IronRDP/compare/ironrdp-tls-v0.1.2...ironrdp-tls-v0.1.3)] - 2025-05-06
+
+### Build
+
+- Bump the patch group across 1 directory with 2 updates (#738) ([1df0737b0d](https://github.com/Devolutions/IronRDP/commit/1df0737b0d5df8137536e42bfd3ab765cbe08ce7))
+
+
+
## [[0.1.2](https://github.com/Devolutions/IronRDP/compare/ironrdp-tls-v0.1.1...ironrdp-tls-v0.1.2)] - 2025-01-28
### Documentation
diff --git a/crates/ironrdp-tls/Cargo.toml b/crates/ironrdp-tls/Cargo.toml
index 1a8c2bb97..9dcf391aa 100644
--- a/crates/ironrdp-tls/Cargo.toml
+++ b/crates/ironrdp-tls/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-tls"
-version = "0.1.2"
+version = "0.1.3"
readme = "README.md"
description = "TLS boilerplate common with most IronRDP clients"
edition.workspace = true
diff --git a/crates/ironrdp-tokio/CHANGELOG.md b/crates/ironrdp-tokio/CHANGELOG.md
index a4fa48101..7b8a743f3 100644
--- a/crates/ironrdp-tokio/CHANGELOG.md
+++ b/crates/ironrdp-tokio/CHANGELOG.md
@@ -6,6 +6,17 @@ 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).
+## [[0.3.1](https://github.com/Devolutions/IronRDP/compare/ironrdp-tokio-v0.3.0...ironrdp-tokio-v0.3.1)] - 2025-05-06
+
+### Features
+
+- Add reqwest feature (#734) ([032c38be92](https://github.com/Devolutions/IronRDP/commit/032c38be9229cfd35f0f6fc8eac5cccc960480d3))
+
+ Move the client ReqwestNetworkClient to ironrdp-tokio, so other clients
+ can optionally use the implementation.
+
+
+
## [[0.2.3](https://github.com/Devolutions/IronRDP/compare/ironrdp-tokio-v0.2.2...ironrdp-tokio-v0.2.3)] - 2025-03-12
### Build
diff --git a/crates/ironrdp-tokio/Cargo.toml b/crates/ironrdp-tokio/Cargo.toml
index afbf772aa..abc680493 100644
--- a/crates/ironrdp-tokio/Cargo.toml
+++ b/crates/ironrdp-tokio/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp-tokio"
-version = "0.3.0"
+version = "0.3.1"
readme = "README.md"
description = "`Framed*` traits implementation above Tokio’s traits"
edition.workspace = true
diff --git a/crates/ironrdp/CHANGELOG.md b/crates/ironrdp/CHANGELOG.md
index 5ec2af3b6..74a6394d3 100644
--- a/crates/ironrdp/CHANGELOG.md
+++ b/crates/ironrdp/CHANGELOG.md
@@ -6,6 +6,228 @@ 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).
+## [[0.10.0](https://github.com/Devolutions/IronRDP/compare/ironrdp-v0.9.1...ironrdp-v0.10.0)] - 2025-05-06
+
+### Features
+
+- Add no_audio_playback flag to Config struct ([9f0edcc4c9](https://github.com/Devolutions/IronRDP/commit/9f0edcc4c9c49d59cc10de37f920aae073e3dd8a))
+
+ Enable audio playback on the client.
+
+- Add perfenc ([dd787af5a0](https://github.com/Devolutions/IronRDP/commit/dd787af5a02557aae102988c534b055cce5f0996))
+
+ Make some internal APIs publicly visible thanks to "visibility" when
+ compiling with the "__bench" feature.
+
+ ("testsuite-core" also learned "__bench", because fast_path.rs is a
+ shared file)
+
+### Bug Fixes
+
+- [**breaking**] Fix name of client address field (#754) ([bdde2c76de](https://github.com/Devolutions/IronRDP/commit/bdde2c76ded7315f7bc91d81a0909a1cb827d870))
+
+- Inject socket local address for the client addr (#759) ([712da42ded](https://github.com/Devolutions/IronRDP/commit/712da42dedc193239e457d8270d33cc70bd6a4b9))
+
+ We used to inject the resolved target server address, but that is not
+ what is expected. Server typically ignores this field so this was not a
+ problem up until now.
+
+### Build
+
+- Bump the patch group across 1 directory with 2 updates (#731) ([ba488f956c](https://github.com/Devolutions/IronRDP/commit/ba488f956c13538b37f1d3444afbbb2915ea37d6))
+
+ Bumps the patch group with 2 updates in the / directory:
+ [image](https://github.com/image-rs/image) and
+ [clap](https://github.com/clap-rs/clap).
+
+ Updates `image` from 0.25.5 to 0.25.6
+
+ Changelog
+ Sourced from image's
+ changelog.
+
+ Version 0.25.6
+ Features:
+
+ - Improved format detection (#2418)
+ - Implement writing ICC profiles for JPEG and PNG images (#2389)
+
+ Bug fixes:
+
+ - JPEG encoding bugfix (#2387)
+ - Expanded ICO format detection (#2434)
+ - Fixed EXR bug with NaNs (#2381)
+ - Various documentation improvements
+
+
+
+
+ Commits
+
+
+
+
+ Updates `clap` from 4.5.32 to 4.5.34
+
+ Release notes
+ Sourced from clap's
+ releases.
+
+ v4.5.34
+ [4.5.34] - 2025-03-27
+ Fixes
+
+ - (help) Don't add extra blank lines with
+
flatten_help(true)
and subcommands without arguments
+
+ v4.5.33
+ [4.5.33] - 2025-03-26
+ Fixes
+
+ - (error) When showing the usage of a suggestion for an
+ unknown argument, don't show the group
+
+
+
+
+ Changelog
+ Sourced from clap's
+ changelog.
+
+ [4.5.34] - 2025-03-27
+ Fixes
+
+ - (help) Don't add extra blank lines with
+
flatten_help(true)
and subcommands without arguments
+
+ [4.5.33] - 2025-03-26
+ Fixes
+
+ - (error) When showing the usage of a suggestion for an
+ unknown argument, don't show the group
+
+
+
+
+ Commits
+
+ 5d2cdac
+ chore: Release
+ f1c10eb
+ docs: Update changelog
+ a4d1a7f
+ chore(ci): Take a break from template updates
+ e95ed39
+ Merge pull request #5775
+ from vivienm/master
+ 18f8d4c
+ chore(deps): Update Rust Stable to v1.82 (#5788)
+ f35d8e0
+ Merge pull request #5787
+ from epage/template
+ 1389d7d
+ chore: Update from '_rust/main' template
+ dbc9faa
+ chore(ci): Initialize git for template update
+ 3dac2f3
+ chore(ci): Get history for template update
+ e1f77da
+ chore(ci): Fix branch for template update
+ - Additional commits viewable in compare
+ view
+
+
+
+
+
+ Dependabot will resolve any conflicts with this PR as long as you don't
+ alter it yourself. You can also trigger a rebase manually by commenting
+ `@dependabot rebase`.
+
+### Refactor
+
+- [**breaking**] Drop support for pixelOrder ([db6f4cdb7f](https://github.com/Devolutions/IronRDP/commit/db6f4cdb7f379713979b930e8e1fa1a813ebecc4))
+
+ Dealing with multiple formats is sufficiently annoying, there isn't much
+ need for awkward image layout. This was done for efficiency reason for
+ bitmap encoding, but bitmap is really inefficient anyway and very few
+ servers will actually provide bottom to top images (except with GL/GPU
+ textures, but this is not in scope yet).
+
+- [**breaking**] Use bytes, allowing shareable bitmap data ([3c43fdda76](https://github.com/Devolutions/IronRDP/commit/3c43fdda76f4ef6413db4010471364d6b1be2798))
+
+- [**breaking**] Rename left/top -> x/y ([229070a435](https://github.com/Devolutions/IronRDP/commit/229070a43554927a01541052a819fe3fcd32a913))
+
+ This is more idiomatic, and thus less confusing.
+
+
+
## [[0.9.1](https://github.com/Devolutions/IronRDP/compare/ironrdp-v0.9.0...ironrdp-v0.9.1)] - 2025-03-13
### Documentation
diff --git a/crates/ironrdp/Cargo.toml b/crates/ironrdp/Cargo.toml
index 3abbcb7d6..724a97183 100644
--- a/crates/ironrdp/Cargo.toml
+++ b/crates/ironrdp/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ironrdp"
-version = "0.9.1"
+version = "0.10.0"
readme = "README.md"
description = "A meta crate re-exporting IronRDP crates for convenience"
edition.workspace = true
@@ -37,23 +37,23 @@ __bench = ["ironrdp-server/__bench"]
[dependencies]
ironrdp-core = { path = "../ironrdp-core", version = "0.1", optional = true } # public
-ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.4", optional = true } # public
-ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.2", optional = true } # public
-ironrdp-connector = { path = "../ironrdp-connector", version = "0.4", optional = true } # public
+ironrdp-pdu = { path = "../ironrdp-pdu", version = "0.5", optional = true } # public
+ironrdp-cliprdr = { path = "../ironrdp-cliprdr", version = "0.3", optional = true } # public
+ironrdp-connector = { path = "../ironrdp-connector", version = "0.5", optional = true } # public
ironrdp-acceptor = { path = "../ironrdp-acceptor", version = "0.4", optional = true } # public
-ironrdp-session = { path = "../ironrdp-session", version = "0.3", optional = true } # public
+ironrdp-session = { path = "../ironrdp-session", version = "0.4", optional = true } # public
ironrdp-graphics = { path = "../ironrdp-graphics", version = "0.3", optional = true } # public
ironrdp-input = { path = "../ironrdp-input", version = "0.2", optional = true } # public
-ironrdp-server = { path = "../ironrdp-server", version = "0.5", optional = true, features = ["helper"] } # public
+ironrdp-server = { path = "../ironrdp-server", version = "0.6", optional = true, features = ["helper"] } # public
ironrdp-svc = { path = "../ironrdp-svc", version = "0.3", optional = true } # public
ironrdp-dvc = { path = "../ironrdp-dvc", version = "0.2", optional = true } # public
-ironrdp-rdpdr = { path = "../ironrdp-rdpdr", version = "0.2", optional = true } # public
-ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.4", optional = true } # public
+ironrdp-rdpdr = { path = "../ironrdp-rdpdr", version = "0.3", optional = true } # public
+ironrdp-rdpsnd = { path = "../ironrdp-rdpsnd", version = "0.5", optional = true } # public
ironrdp-displaycontrol = { path = "../ironrdp-displaycontrol", version = "0.2", optional = true } # public
[dev-dependencies]
ironrdp-blocking = { path = "../ironrdp-blocking", version = "0.4.0" }
-ironrdp-cliprdr-native = { path = "../ironrdp-cliprdr-native", version = "0.2.0" }
+ironrdp-cliprdr-native = { path = "../ironrdp-cliprdr-native", version = "0.3.0" }
anyhow = "1"
async-trait = "0.1"
image = { version = "0.25.6", default-features = false, features = ["png"] }
diff --git a/fuzz/Cargo.lock b/fuzz/Cargo.lock
index fad6b1e24..c43475ac9 100644
--- a/fuzz/Cargo.lock
+++ b/fuzz/Cargo.lock
@@ -63,9 +63,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
[[package]]
name = "base64ct"
-version = "1.7.1"
+version = "1.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb97d56060ee67d285efb8001fec9d2a4c710c32efd2e14b5cbb5ba71930fc2d"
+checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3"
[[package]]
name = "bit_field"
@@ -114,9 +114,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]]
name = "cc"
-version = "1.2.16"
+version = "1.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c"
+checksum = "8691782945451c1c383942c4874dbe63814f61cb57ef773cda2972682b7bb3c0"
dependencies = [
"jobserver",
"libc",
@@ -165,9 +165,9 @@ dependencies = [
[[package]]
name = "der"
-version = "0.7.9"
+version = "0.7.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0"
+checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb"
dependencies = [
"const-oid",
"der_derive",
@@ -242,15 +242,15 @@ dependencies = [
[[package]]
name = "flagset"
-version = "0.4.6"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b3ea1ec5f8307826a5b71094dd91fc04d4ae75d5709b20ad351c7fb4815c86ec"
+checksum = "b7ac824320a75a52197e8f2d787f6a38b6718bb6897a35142d749af3c0e8f4fe"
[[package]]
name = "flate2"
-version = "1.1.0"
+version = "1.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11faaf5a5236997af9848be0bef4db95824b1d534ebc64d0f0c6cf3e67bd38dc"
+checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece"
dependencies = [
"crc32fast",
"miniz_oxide",
@@ -272,9 +272,21 @@ dependencies = [
"version_check",
]
+[[package]]
+name = "getrandom"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "r-efi",
+ "wasi",
+]
+
[[package]]
name = "ironrdp-cliprdr"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -352,7 +364,7 @@ dependencies = [
[[package]]
name = "ironrdp-graphics"
-version = "0.3.0"
+version = "0.3.1"
dependencies = [
"bit_field",
"bitflags 2.9.0",
@@ -369,7 +381,7 @@ dependencies = [
[[package]]
name = "ironrdp-pdu"
-version = "0.4.0"
+version = "0.5.0"
dependencies = [
"bit_field",
"bitflags 2.9.0",
@@ -391,7 +403,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpdr"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -403,7 +415,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpsnd"
-version = "0.4.0"
+version = "0.5.0"
dependencies = [
"bitflags 2.9.0",
"ironrdp-core",
@@ -423,10 +435,11 @@ dependencies = [
[[package]]
name = "jobserver"
-version = "0.1.32"
+version = "0.1.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0"
+checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a"
dependencies = [
+ "getrandom",
"libc",
]
@@ -438,9 +451,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]]
name = "libc"
-version = "0.2.171"
+version = "0.2.172"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
+checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
[[package]]
name = "libfuzzer-sys"
@@ -454,9 +467,9 @@ dependencies = [
[[package]]
name = "log"
-version = "0.4.26"
+version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e"
+checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
[[package]]
name = "md-5"
@@ -482,9 +495,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
[[package]]
name = "miniz_oxide"
-version = "0.8.5"
+version = "0.8.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5"
+checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a"
dependencies = [
"adler2",
"simd-adler32",
@@ -541,9 +554,9 @@ dependencies = [
[[package]]
name = "once_cell"
-version = "1.21.0"
+version = "1.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cde51589ab56b20a6f686b2c68f7a0bd6add753d697abf720d63f8db3ab7b1ad"
+checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d"
[[package]]
name = "pin-project-lite"
@@ -576,9 +589,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.94"
+version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84"
+checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
dependencies = [
"unicode-ident",
]
@@ -592,6 +605,12 @@ dependencies = [
"proc-macro2",
]
+[[package]]
+name = "r-efi"
+version = "5.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5"
+
[[package]]
name = "radium"
version = "0.7.0"
@@ -651,9 +670,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.100"
+version = "2.0.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0"
+checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf"
dependencies = [
"proc-macro2",
"quote",
@@ -662,9 +681,9 @@ dependencies = [
[[package]]
name = "synstructure"
-version = "0.13.1"
+version = "0.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
+checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
dependencies = [
"proc-macro2",
"quote",
@@ -768,6 +787,24 @@ version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
+[[package]]
+name = "wasi"
+version = "0.14.2+wasi-0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3"
+dependencies = [
+ "wit-bindgen-rt",
+]
+
+[[package]]
+name = "wit-bindgen-rt"
+version = "0.39.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
+dependencies = [
+ "bitflags 2.9.0",
+]
+
[[package]]
name = "wyz"
version = "0.5.1"