remove system requirement, and remove dialgo

This commit is contained in:
rustdesk 2023-07-31 21:57:37 +08:00
parent 63ac61d920
commit 4c32bea702

View File

@ -101,7 +101,6 @@ pub fn core_main() -> Option<Vec<String>> {
args.clear(); args.clear();
} }
if args.len() > 0 && args[0] == "--version" { if args.len() > 0 && args[0] == "--version" {
// not use my_println here, because check super use using this command, no dialog expected
println!("{}", crate::VERSION); println!("{}", crate::VERSION);
return None; return None;
} }
@ -249,49 +248,41 @@ pub fn core_main() -> Option<Vec<String>> {
return None; return None;
} else if args[0] == "--password" { } else if args[0] == "--password" {
if args.len() == 2 { if args.len() == 2 {
if crate::platform::is_installed() if crate::platform::is_installed() && is_root() {
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if let Err(err) = crate::ipc::set_permanent_password(args[1].to_owned()) { if let Err(err) = crate::ipc::set_permanent_password(args[1].to_owned()) {
my_println!("{err}"); println!("{err}");
} else { } else {
my_println!("Done!"); println!("Done!");
} }
} else { } else {
my_println!("Installation and administrative privileges required!"); println!("Installation and administrative privileges required!");
} }
} }
return None; return None;
} else if args[0] == "--get-id" { } else if args[0] == "--get-id" {
if crate::platform::is_installed() if crate::platform::is_installed() && is_root() {
&& crate::platform::check_super_user_permission().unwrap_or_default() println!("{}", crate::ipc::get_id());
{
my_println!("{}", crate::ipc::get_id());
} else { } else {
my_println!("Installation and administrative privileges required!"); println!("Installation and administrative privileges required!");
} }
return None; return None;
} else if args[0] == "--set-id" { } else if args[0] == "--set-id" {
if args.len() == 2 { if args.len() == 2 {
if crate::platform::is_installed() if crate::platform::is_installed() && is_root() {
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
let old_id = crate::ipc::get_id(); let old_id = crate::ipc::get_id();
let mut res = crate::ui_interface::change_id_shared(args[1].to_owned(), old_id); let mut res = crate::ui_interface::change_id_shared(args[1].to_owned(), old_id);
if res.is_empty() { if res.is_empty() {
res = "Done!".to_owned(); res = "Done!".to_owned();
} }
my_println!("{}", res); println!("{}", res);
} else { } else {
my_println!("Installation and administrative privileges required!"); println!("Installation and administrative privileges required!");
} }
} }
return None; return None;
} else if args[0] == "--config" { } else if args[0] == "--config" {
if args.len() == 2 && !args[0].contains("host=") { if args.len() == 2 && !args[0].contains("host=") {
if crate::platform::is_installed() if crate::platform::is_installed() && is_root() {
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
// encrypted string used in renaming exe. // encrypted string used in renaming exe.
let name = if args[1].ends_with(".exe") { let name = if args[1].ends_with(".exe") {
args[1].to_owned() args[1].to_owned()
@ -309,22 +300,20 @@ pub fn core_main() -> Option<Vec<String>> {
} }
} }
} else { } else {
my_println!("Installation and administrative privileges required!"); println!("Installation and administrative privileges required!");
} }
} }
return None; return None;
} else if args[0] == "--option" { } else if args[0] == "--option" {
if crate::platform::is_installed() if crate::platform::is_installed() && is_root() {
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if args.len() == 2 { if args.len() == 2 {
let options = crate::ipc::get_options(); let options = crate::ipc::get_options();
my_println!("{}", options.get(&args[1]).unwrap_or(&"".to_owned())); println!("{}", options.get(&args[1]).unwrap_or(&"".to_owned()));
} else if args.len() == 3 { } else if args.len() == 3 {
crate::ipc::set_option(&args[1], &args[2]); crate::ipc::set_option(&args[1], &args[2]);
} }
} else { } else {
my_println!("Installation and administrative privileges required!"); println!("Installation and administrative privileges required!");
} }
return None; return None;
} else if args[0] == "--check-hwcodec-config" { } else if args[0] == "--check-hwcodec-config" {
@ -499,3 +488,14 @@ fn try_send_by_dbus(uni_links: String) -> Option<Vec<String>> {
} }
} }
} }
#[cfg(not(any(target_os = "android", target_os = "ios")))]
fn is_root() -> bool {
#[cfg(windows)]
{
return crate::platform::is_elevated(None).unwrap_or_default()
|| crate::platform::is_root();
}
#[allow(unreachable_code)]
crate::platform::is_root()
}