Upload files to "rustdesk-session-permission-pocs/session-downgrade"

This commit is contained in:
2026-06-29 17:07:34 +00:00
parent afae7aeab8
commit bde3088679
2 changed files with 54 additions and 0 deletions
@@ -0,0 +1,14 @@
[package]
name = "rustdesk_session_downgrade_poc"
version = "0.1.0"
edition = "2021"
[dependencies]
anyhow = "1.0"
bytes = "1.10"
hex = "0.4"
protobuf = { version = "3.7", features = ["with-bytes"] }
sha2 = "0.10"
[build-dependencies]
protobuf-codegen = "3.7"
@@ -0,0 +1,40 @@
use std::path::PathBuf;
fn main() {
let manifest = PathBuf::from(std::env::var("CARGO_MANIFEST_DIR").unwrap());
let repo_root = std::env::var("RUSTDESK_REPO_ROOT")
.map(PathBuf::from)
.ok()
.or_else(|| {
manifest.ancestors().find_map(|ancestor| {
for candidate in [
ancestor.join("rustdesk"),
ancestor.join("work").join("rustdesk"),
ancestor.parent().unwrap_or(ancestor).join("work").join("rustdesk"),
] {
if candidate.join("libs/hbb_common/protos/message.proto").exists() {
return Some(candidate);
}
}
None
})
})
.expect("set RUSTDESK_REPO_ROOT or place this PoC near a rustdesk checkout")
.join("libs")
.join("hbb_common")
.join("protos");
let out_dir = PathBuf::from(std::env::var("OUT_DIR").unwrap()).join("protos");
std::fs::create_dir_all(&out_dir).unwrap();
protobuf_codegen::Codegen::new()
.pure()
.out_dir(&out_dir)
.inputs([
repo_root.join("rendezvous.proto"),
repo_root.join("message.proto"),
])
.include(&repo_root)
.customize(protobuf_codegen::Customize::default().tokio_bytes(true))
.run()
.expect("protobuf codegen failed");
}