Commit graph

616 commits

Author SHA1 Message Date
Alex Yusiuk
6ff211dd87 refactor(web-client): improve Extension API 2025-04-18 14:11:00 +00:00
Alex Yusiuk
ec1832bba0
feat(ironrdp-web): iron-remote-desktop helper crate for remote desktop WASM modules (#755) 2025-04-18 07:30:45 -04:00
Marc-Andre Lureau
806f1d7694
fix(server): use desktop size for RFX channel size (#756) 2025-04-17 08:01:58 +02:00
Zac Bergquist
bdde2c76de
fix(client)!: fix name of client address field (#754) 2025-04-16 04:23:49 -04:00
Benoît Cortier
c09531ef0c
fix(client): handle leftover bytes (#753) 2025-04-15 08:33:17 -04:00
Alex Yusiuk
fe676eeac5
refactor(web): follow-up to #722 (#747) 2025-04-14 14:05:19 +00:00
Benoît Cortier
cc3dbf124f
feat(client): add support for RDCleanPath (#745)
Issue: ARC-309
2025-04-14 13:08:44 +00:00
Alex Yusiuk
0ff1ed8de5
refactor(web-client): refactor iron-remote-gui into iron-remote-desktop (#722) 2025-04-11 08:28:27 -04:00
Marc-André Lureau
184cfd24ae test(server): run the fast_path tests from testsuite-core
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-10 10:21:54 +02:00
Marc-André Lureau
2c7556ba1e refactor(server): make UpdateEncoder::update() an iterator
A single display update can now result in multiple commands / update
code (FastPathUpdate).

The update dispatching and bitmap encoding is now done by the
UpdateEncoder itself.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-10 10:21:54 +02:00
Marc-André Lureau
fde18ad01a refactor(server): make UpdateFragmenter own its data
Trying to share a common buffer creates all sort of complicated lifetime
issues when trying to move the encoding to a 'static handler, or when
implementing iterators. It's not worth it.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-10 10:21:54 +02:00
Marc-André Lureau
f21a6bf7d0 test(server): add fragment test
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-10 10:21:54 +02:00
Marc-André Lureau
5ffeeea3ae refactor(server): move fast-path fragmenter to own unit
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-10 10:21:54 +02:00
Vladyslav Nikonov
135b8bc4f6
build(deps): update windows crate to 0.61.1 (#743) 2025-04-09 08:54:48 +00:00
Marc-Andre Lureau
a8b9614323
fix(rdpsnd): send client formats that match server (#742)
Windows seems to be confused if the client replies with more formats, or
unknown formats (opus).

---------

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Co-authored-by: Benoît Cortier <3809077+CBenoit@users.noreply.github.com>
2025-04-09 01:43:03 +00:00
Marc-André Lureau
4172571e8e refactor(rdpsnd)!: pass format_no instead of AudioFormat
This can help avoid extra lookups and cloning.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
Marc-André Lureau
3d7bc28b97 fix(rdpsnd): lookup the associated format from the client list
This is an index to the client list, according to:
7df64d93-7594-4035-978d-229f2b15f1bc

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
Marc-André Lureau
7bd92c0ce5 feat(rdpsnd): add support for client custom flags
Client can support various flags, but always set ALIVE.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
Marc-André Lureau
5e78f91713 feat(rdpdr): add USER_LOGGEDON flag support
As I was debugging some related issue, I implemented that. It may become
useful some day.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
Marc-André Lureau
f9b6992e74 fix(session): decrease verbosity of FastPath header
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
Marc-André Lureau
b31b99eafb fix(session): decrease verbosity of Rfx frame_index
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 16:49:05 +02:00
dependabot[bot]
1df0737b0d
build(deps): bump the patch group across 1 directory with 2 updates (#738) 2025-04-08 12:55:21 +00:00
dependabot[bot]
e70e7e2c5f
build(deps): bump smallvec from 1.14.0 to 1.15.0 (#739) 2025-04-08 08:38:53 -04:00
Marc-André Lureau
cd7a60ba45 feat(session): add DecodeImage helpers
Having a helper to take the slice of updated region data is generally helpful.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 14:37:50 +02:00
Marc-André Lureau
45f66117ba feat(session)!: make DecodedImage Send
This will allow to share it between different threads.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 14:37:50 +02:00
Marc-André Lureau
7507a152f1 fix(session): return the correct updated region
"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)...

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 14:37:50 +02:00
Marc-André Lureau
9f0edcc4c9 feat(client): Add no_audio_playback flag to Config struct
Enable audio playback on the client.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 13:35:44 +02:00
Marc-André Lureau
5dcc526f51 fix(rdpsnd): reply to TrainingPdu
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 13:35:44 +02:00
Marc-André Lureau
abcc42e01f fix(rdpsnd): correct TrainingPdu wPackSize field
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-08 13:35:44 +02:00
Marc-Andre Lureau
032c38be92
feat(tokio): add reqwest feature (#734)
Move the client ReqwestNetworkClient to ironrdp-tokio, so other clients
can optionally use the implementation.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-04-02 14:59:02 -04:00
dependabot[bot]
817abb9805
build(deps): bump whoami from 1.5.2 to 1.6.0 (#732)
Bumps [whoami](https://github.com/ardaku/whoami) from 1.5.2 to 1.6.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/ardaku/whoami/releases">whoami's
releases</a>.</em></p>
<blockquote>
<h2>v1.6.0</h2>
<h1>Changelog</h1>
<h2>Added</h2>
<ul>
<li>Support for GNU/Hurd</li>
</ul>
<h2>Changed</h2>
<ul>
<li>Removed comment about hostname being limited to ASCII due to Unicode
hostnames being supported on Windows</li>
<li>More descriptive error messages on the web target</li>
</ul>
<h2>Fixed</h2>
<ul>
<li><code>account()</code> always returning username instead of user
principal name on Windows</li>
<li><code>langs()</code> now returns a list accurate to the POSIX locale
spec</li>
<li><code>hostname()</code> on Windows now returns
<code>PhysicalDnsHostname</code> instead of <code>NetBIOS</code></li>
<li><code>devicename()</code>: Fixed reading escaped unix pretty
names</li>
<li>Link error on Windows (in future Rust version)</li>
</ul>
<hr />
<h2>What's Changed</h2>
<ul>
<li>Remove comment about hostname being limited to ASCII by <a
href="https://github.com/davidkna"><code>@​davidkna</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/119">ardaku/whoami#119</a></li>
<li>Add support for GNU/Hurd by <a
href="https://github.com/pinotree"><code>@​pinotree</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/120">ardaku/whoami#120</a></li>
<li>Apply target rename wasm32-wasip1 by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/124">ardaku/whoami#124</a></li>
<li>Backport Update copyright (<a
href="https://redirect.github.com/ardaku/whoami/issues/129">#129</a>) by
<a href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in
<a
href="https://redirect.github.com/ardaku/whoami/pull/130">ardaku/whoami#130</a></li>
<li>Bump version to 1.6.0-pre.0 by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/132">ardaku/whoami#132</a></li>
<li>Backport v2 -&gt; v1: Fix clippy duplicate attribute for MacOS by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/135">ardaku/whoami#135</a></li>
<li>v1: Update wasm-bindgen to v0.2.89 by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/138">ardaku/whoami#138</a></li>
<li>Backport v2 -&gt; v1: Check more environment variables for language
by <a href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a>
in <a
href="https://redirect.github.com/ardaku/whoami/pull/146">ardaku/whoami#146</a></li>
<li>Backport v2 -&gt; v1: Switch Windows <code>hostname()</code> to
return <code>PhysicalDnsHostname</code> by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/148">ardaku/whoami#148</a></li>
<li>Backport v2 -&gt; v1: Improved error handling by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/149">ardaku/whoami#149</a></li>
<li>1.6.0-pre.1 and Backport v2 -&gt; v1: Adjusts langs() to match POSIX
locale spec by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/151">ardaku/whoami#151</a></li>
<li>Backport v2 -&gt; v1: Fix license link by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/154">ardaku/whoami#154</a></li>
<li>Add discriminants to ExtendedNameFormat enum by <a
href="https://github.com/Batch21"><code>@​Batch21</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/156">ardaku/whoami#156</a></li>
<li>Version 1.6.0 pre.2 by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/158">ardaku/whoami#158</a></li>
<li>Backport v2-&gt;v1: Fix reading escaped unix pretty names by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/178">ardaku/whoami#178</a></li>
<li>Release v1.6.0 by <a
href="https://github.com/AldaronLau"><code>@​AldaronLau</code></a> in <a
href="https://redirect.github.com/ardaku/whoami/pull/162">ardaku/whoami#162</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/davidkna"><code>@​davidkna</code></a>
made their first contribution in <a
href="https://redirect.github.com/ardaku/whoami/pull/119">ardaku/whoami#119</a></li>
<li><a href="https://github.com/pinotree"><code>@​pinotree</code></a>
made their first contribution in <a
href="https://redirect.github.com/ardaku/whoami/pull/120">ardaku/whoami#120</a></li>
<li><a href="https://github.com/Batch21"><code>@​Batch21</code></a> made
their first contribution in <a
href="https://redirect.github.com/ardaku/whoami/pull/156">ardaku/whoami#156</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/ardaku/whoami/compare/v1.5.2...v1.6.0">https://github.com/ardaku/whoami/compare/v1.5.2...v1.6.0</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ardaku/whoami/blob/v1.6.0/CHANGELOG.md">whoami's
changelog</a>.</em></p>
<blockquote>
<h2>[1.6.0] - 2025-03-23</h2>
<h3>Added</h3>
<ul>
<li>Support for GNU/Hurd</li>
</ul>
<h3>Changed</h3>
<ul>
<li>Removed comment about hostname being limited to ASCII due to Unicode
hostnames being supported on Windows</li>
<li>More descriptive error messages on the web target</li>
</ul>
<h3>Fixed</h3>
<ul>
<li><code>account()</code> always returning username instead of user
principal name on
Windows</li>
<li><code>langs()</code> now returns a list accurate to the POSIX locale
spec</li>
<li><code>hostname()</code> on Windows now returns
<code>PhysicalDnsHostname</code> instead of
<code>NetBIOS</code></li>
<li><code>devicename()</code>: Fixed reading escaped unix pretty
names</li>
<li>Link error on Windows (in future Rust version)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8170882f09"><code>8170882</code></a>
Release v1.6.0 (<a
href="https://redirect.github.com/ardaku/whoami/issues/162">#162</a>)</li>
<li><a
href="109da1cbe1"><code>109da1c</code></a>
Backport v2-&gt;v1: Fix reading escaped unix pretty names (<a
href="https://redirect.github.com/ardaku/whoami/issues/178">#178</a>)</li>
<li><a
href="bc489c07b3"><code>bc489c0</code></a>
Version 1.6.0 pre.2 (<a
href="https://redirect.github.com/ardaku/whoami/issues/158">#158</a>)</li>
<li><a
href="7aabbfa401"><code>7aabbfa</code></a>
Add discriminants to ExtendedNameFormat enum (<a
href="https://redirect.github.com/ardaku/whoami/issues/156">#156</a>)</li>
<li><a
href="7aba7a48ef"><code>7aba7a4</code></a>
Backport v2 -&gt; v1: Fix license link (<a
href="https://redirect.github.com/ardaku/whoami/issues/154">#154</a>)</li>
<li><a
href="d90a4f8746"><code>d90a4f8</code></a>
1.6.0-pre.1 and Backport v2 -&gt; v1: Adjusts langs() to match POSIX
locale spec...</li>
<li><a
href="a02709782b"><code>a027097</code></a>
Backport v2 -&gt; v1: Improved error handling (<a
href="https://redirect.github.com/ardaku/whoami/issues/149">#149</a>)</li>
<li><a
href="d9df51768d"><code>d9df517</code></a>
Backport v2 -&gt; v1: Switch Windows <code>hostname()</code> to return
`PhysicalDnsHostname...</li>
<li><a
href="85933dcbb3"><code>85933dc</code></a>
Backport v2 -&gt; v1: Check more environment variables for language (<a
href="https://redirect.github.com/ardaku/whoami/issues/146">#146</a>)</li>
<li><a
href="ef861597df"><code>ef86159</code></a>
v1: Update wasm-bindgen to v0.2.89 (<a
href="https://redirect.github.com/ardaku/whoami/issues/138">#138</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/ardaku/whoami/compare/v1.5.2...v1.6.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=whoami&package-manager=cargo&previous-version=1.5.2&new-version=1.6.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-01 10:38:50 -04:00
dependabot[bot]
ba488f956c
build(deps): bump the patch group across 1 directory with 2 updates (#731)
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
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/image-rs/image/blob/main/CHANGES.md">image's
changelog</a>.</em></p>
<blockquote>
<h3>Version 0.25.6</h3>
<p>Features:</p>
<ul>
<li>Improved format detection (<a
href="https://redirect.github.com/image-rs/image/pull/2418">#2418</a>)</li>
<li>Implement writing ICC profiles for JPEG and PNG images (<a
href="https://redirect.github.com/image-rs/image/pull/2389">#2389</a>)</li>
</ul>
<p>Bug fixes:</p>
<ul>
<li>JPEG encoding bugfix (<a
href="https://redirect.github.com/image-rs/image/pull/2387">#2387</a>)</li>
<li>Expanded ICO format detection (<a
href="https://redirect.github.com/image-rs/image/pull/2434">#2434</a>)</li>
<li>Fixed EXR bug with NaNs (<a
href="https://redirect.github.com/image-rs/image/pull/2381">#2381</a>)</li>
<li>Various documentation improvements</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f337e27aad"><code>f337e27</code></a>
Release 0.25.6 (<a
href="https://redirect.github.com/image-rs/image/issues/2441">#2441</a>)</li>
<li><a
href="0166f687e9"><code>0166f68</code></a>
CI: add num-traits to public (<a
href="https://redirect.github.com/image-rs/image/issues/2446">#2446</a>)</li>
<li><a
href="ca9e2dceb4"><code>ca9e2dc</code></a>
add links to readme (<a
href="https://redirect.github.com/image-rs/image/issues/2437">#2437</a>)</li>
<li><a
href="95be33928e"><code>95be339</code></a>
Making clippy happy (<a
href="https://redirect.github.com/image-rs/image/issues/2439">#2439</a>)</li>
<li><a
href="c62d3ace61"><code>c62d3ac</code></a>
Detect image/vnd.microsoft.icon mime types as ImageFormat::Ico (<a
href="https://redirect.github.com/image-rs/image/issues/2434">#2434</a>)</li>
<li><a
href="85f2412d55"><code>85f2412</code></a>
Fix missing spaces in JpegDecoder error message (<a
href="https://redirect.github.com/image-rs/image/issues/2433">#2433</a>)</li>
<li><a
href="b22ba14127"><code>b22ba14</code></a>
Remove limits when parsing JPEG metadata (<a
href="https://redirect.github.com/image-rs/image/issues/2429">#2429</a>)</li>
<li><a
href="4ef6f1505c"><code>4ef6f15</code></a>
Fix unbalanced backticks in doc comments (<a
href="https://redirect.github.com/image-rs/image/issues/2427">#2427</a>)</li>
<li><a
href="d4054385a1"><code>d405438</code></a>
Reduce typo count (<a
href="https://redirect.github.com/image-rs/image/issues/2426">#2426</a>)</li>
<li><a
href="68159de1c1"><code>68159de</code></a>
Update resize and blurs doc (<a
href="https://redirect.github.com/image-rs/image/issues/2424">#2424</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/image-rs/image/compare/v0.25.5...v0.25.6">compare
view</a></li>
</ul>
</details>
<br />

Updates `clap` from 4.5.32 to 4.5.34
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/releases">clap's
releases</a>.</em></p>
<blockquote>
<h2>v4.5.34</h2>
<h2>[4.5.34] - 2025-03-27</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Don't add extra blank lines with
<code>flatten_help(true)</code> and subcommands without arguments</li>
</ul>
<h2>v4.5.33</h2>
<h2>[4.5.33] - 2025-03-26</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> When showing the usage of a suggestion for an
unknown argument, don't show the group</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's
changelog</a>.</em></p>
<blockquote>
<h2>[4.5.34] - 2025-03-27</h2>
<h3>Fixes</h3>
<ul>
<li><em>(help)</em> Don't add extra blank lines with
<code>flatten_help(true)</code> and subcommands without arguments</li>
</ul>
<h2>[4.5.33] - 2025-03-26</h2>
<h3>Fixes</h3>
<ul>
<li><em>(error)</em> When showing the usage of a suggestion for an
unknown argument, don't show the group</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5d2cdac3e6"><code>5d2cdac</code></a>
chore: Release</li>
<li><a
href="f1c10ebe58"><code>f1c10eb</code></a>
docs: Update changelog</li>
<li><a
href="a4d1a7fe2b"><code>a4d1a7f</code></a>
chore(ci): Take a break from template updates</li>
<li><a
href="e95ed396c4"><code>e95ed39</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5775">#5775</a>
from vivienm/master</li>
<li><a
href="18f8d4c3f5"><code>18f8d4c</code></a>
chore(deps): Update Rust Stable to v1.82 (<a
href="https://redirect.github.com/clap-rs/clap/issues/5788">#5788</a>)</li>
<li><a
href="f35d8e09fb"><code>f35d8e0</code></a>
Merge pull request <a
href="https://redirect.github.com/clap-rs/clap/issues/5787">#5787</a>
from epage/template</li>
<li><a
href="1389d7d689"><code>1389d7d</code></a>
chore: Update from '_rust/main' template</li>
<li><a
href="dbc9faa79d"><code>dbc9faa</code></a>
chore(ci): Initialize git for template update</li>
<li><a
href="3dac2f3683"><code>3dac2f3</code></a>
chore(ci): Get history for template update</li>
<li><a
href="e1f77dacf1"><code>e1f77da</code></a>
chore(ci): Fix branch for template update</li>
<li>Additional commits viewable in <a
href="https://github.com/clap-rs/clap/compare/clap_complete-v4.5.32...clap_complete-v4.5.34">compare
view</a></li>
</ul>
</details>
<br />


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`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-01 10:38:24 -04:00
Marc-André Lureau
aeb1193674 feat(server): keep last full-frame/desktop update
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.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
9d86c28865 refactor(server): pass bitmapUpdate by ref
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
137d91ae7a feat(server): implement some Encoder Debug
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
c2164716c3 refactor(server): split UpdateEncoder
The bitmap encoder dispatching code was becoming convoluted and the same
struct was handling PduEncoding and various bitmap encoding handling.
Instead, split UpdateEncoder in different types and concerns.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
a76e84d459 feat(server): add BitmapUpdate::sub()
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
229070a435 refactor(server)!: rename left/top -> x/y
This is more idiomatic, and thus less confusing.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
1e87961d16 feat(server): add Framebuffer helper struct
This will hold the updated bitmap data for the whole framebuffer.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
3c43fdda76 refactor(server)!: use bytes, allowing shareable bitmap data
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
7f57817805 feat(server): add stride debug info
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-André Lureau
db6f4cdb7f refactor(server)!: drop support for pixelOrder
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).

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 18:11:03 +02:00
Marc-Andre Lureau
4e581e0f47
feat(cliprdr)!: add on_ready() callback (#729)
Give a hint to the backend when the channel is actually connected &
ready to process messages.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-30 18:39:10 -04:00
Marc-Andre Lureau
a50cd643dc
fix(session): update rectangle when applying None codecs updates (#728)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-30 18:37:38 -04:00
Marc-André Lureau
ff26400822 debug(session): trace the surface codec
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 00:36:26 +02:00
Marc-André Lureau
b957c085b3 doc(session): misc doc annotation fix
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 00:36:26 +02:00
Marc-André Lureau
d47c1e6415 debug(server): trace ServerEvent dispatching
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2025-03-31 00:36:26 +02:00
Benoît Cortier
9f4e6d410b
fix(pdu): fix possible out of bound indexing in RFX module (#724)
An index bound check was missing in the RFX module. Found by fuzzer.
2025-03-27 12:00:20 -04:00
Benoît Cortier
b72e0857bf
refactor: move padding module to ironrdp-core (#716) 2025-03-24 22:52:46 +02:00
dependabot[bot]
3700caba22
build(deps): bump uuid from 1.15.1 to 1.16.0 (#706) 2025-03-18 11:45:47 +09:00