Commit Graph

21 Commits

Author SHA1 Message Date
RustDesk
b50fde6910 add the base crate and repoint the moved modules at it (#16107)
* add the base crate and repoint the moved modules at it

`libs/base` (crate `base`) takes the parts of hbb_common that only this app
uses: `fs`, `platform`, `keyboard`, `message.proto`, and 145 of the 177
`config::keys` constants. hbb_common keeps what the server names, and the 32
keys it reads itself are re-exported from `base::config::keys` so call sites
still see the full set through one path.

Sources move verbatim. The only edits inside them are `crate::` prefixes that
now have to say `hbb_common::`; `keyboard.rs` and `platform/windows.rs` are
byte-identical. The crate stays on edition 2018, the edition the moved code was
written under. `log`, `lazy_static` and `anyhow` become direct dependencies so
the bare paths in that code resolve exactly as before, and its winapi features
are spelled out rather than left to feature unification.

Two call sites outside Rust and Cargo had to follow the move: the Android
protobuf source dir, which still pointed at hbb_common/protos for message.proto,
and the three AGENTS.md entries that named hbb_common for options, protos and
file transfer.

`scrap`'s `drm` feature now forwards to `base/wayland_probe`. Left pointing at
hbb_common it would still have compiled, silently dropping the Wayland
socket-probe fallback, so that forward is verified by a build with and without
the feature.

`config::keys` carries a test asserting its names stay disjoint from the ones
hbb_common kept: the glob re-export and the local constants share a namespace,
and Rust prefers the local item silently, so a name added to both sides would
otherwise let client and server disagree with no diagnostic.

Verified: macOS and Linux, debug and release, `--all-targets`; the 177 key
constants diffed name-for-name and value-for-value; the generated protobuf types
compared before and after; every `#[cfg]` gate on a moved import checked against
its original; and every file that was `rustfmt`-clean before this change still
is, compared against master file by file. Windows is checked by inspection only
-- it cannot be compiled here.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EZ49AbZJYfm8NTp5yDPMab

* one `use` per crate, and write the rule down

`fs.rs` came out of the move with two ungated `use hbb_common::` statements,
because the original single `use crate::{...}` had to give up `message_proto`
to the new crate and the rest was left in a second block. Fold it back into one.

A scan of the whole tree for the same shape finds nothing else: every other file
with more than one top-level `use base::` or `use hbb_common::` is split by a
`#[cfg]` that does not cover the whole block, or by `pub use` next to `use`.
Those are the cases that cannot merge, so AGENTS.md now states both the rule and
the exemption.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EZ49AbZJYfm8NTp5yDPMab

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-08 11:46:42 +08:00
fufesou
c4fd7d692d refact: fuser 0.16.0, cargo 1.75.0 (#15844)
Signed-off-by: fufesou <linlong1266@gmail.com>
2026-08-12 21:36:06 +08:00
RustDesk
10bcf976f7 Revert "fix: upgrade fuser to 0.16.0 (GHSA-cvmj-47v9-35m9) (#15834)" (#15841)
This reverts commit 63822048df.
2026-08-12 17:12:46 +08:00
Anupam Mediratta
63822048df fix: upgrade fuser to 0.16.0 (GHSA-cvmj-47v9-35m9) (#15834)
FUSE-Rust: Uninitalized memory read and leak caused by fuser crate
Resolves GHSA-cvmj-47v9-35m9

Signed-off-by: anupamme <mediratta@gmail.com>
2026-08-12 14:30:43 +08:00
fufesou
00293a9902 Feat/macos clipboard file (#10939)
* feat: macos, clipboard file

Signed-off-by: fufesou <linlong1266@gmail.com>

* Can't reuse file transfer

Signed-off-by: fufesou <linlong1266@gmail.com>

* handle paste task

Signed-off-by: fufesou <linlong1266@gmail.com>

---------

Signed-off-by: fufesou <linlong1266@gmail.com>
2025-02-28 00:46:46 +08:00
fufesou
fbba8f0b34 refact: file copy&paste, cross platform (no macOS) (#10671)
* feat: unix, file copy&paste

Signed-off-by: fufesou <linlong1266@gmail.com>

* refact: unix file c&p, check peer version

Signed-off-by: fufesou <linlong1266@gmail.com>

* Update pubspec.yaml

---------

Signed-off-by: fufesou <linlong1266@gmail.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2025-02-04 20:33:02 +08:00
ClSlaid
ae524c4d0e patch: avoid compile x11 deps on mac
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-30 22:14:57 +08:00
ClSlaid
62563ad8a1 Merge branch 'feat/x11/clipboard-file/init' into feat/osx/clipboard-file
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-30 15:34:40 +08:00
ClSlaid
fdc4d6dda9 patch: remove redundant features
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-30 15:11:33 +08:00
ClSlaid
79f6b5c181 patch: forbid enable cliprdr without feature
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-29 20:10:39 +08:00
ClSlaid
dc02ce3f97 patch: only enable file copy and paste under features
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-29 19:50:31 +08:00
ClSlaid
36d4baaa8e patch: fix macos clipboard
1. wrong namings of NsPasteboard
2. wrap Pasteboard in Lazy

Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-29 03:53:06 +08:00
ClSlaid
2bb1310094 patch(0): implement cliprdr for macos
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-29 02:15:16 +08:00
ClSlaid
9adda25e00 patch: simplify FUSE
Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-10-16 00:51:12 +08:00
ClSlaid
3a21efbaae patch: linux fuse unmount
todo: grosely exit

Signed-off-by: ClSlaid <cailue@bupt.edu.cn>
2023-09-09 19:24:38 +08:00
蔡略
25cf36a948 feat: add x11 clipboard support
Signed-off-by: 蔡略 <cailue@bupt.edu.cn>
2023-09-08 19:39:00 +08:00
蔡略
4f7036a405 feat(part): implement fuse support for linux clipboard
Signed-off-by: 蔡略 <cailue@bupt.edu.cn>
2023-09-04 15:38:53 +08:00
cailue
c25d648321 refactor: adjust windows file layout
Signed-off-by: cailue <cailue@bupt.edu.cn>
2023-08-24 23:53:15 +08:00
rustdesk
302f1c48d3 update crates, test on mac only 2023-05-11 12:04:38 +08:00
fufesou
8834251eec move clipboard file service to cm module
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-02-24 00:26:19 +08:00
fufesou
6672087f7c windows clipboard
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2022-02-15 11:18:53 +08:00