28 lines
788 B
Rust
28 lines
788 B
Rust
mod license;
|
|
use base64::{engine::general_purpose::URL_SAFE_NO_PAD, Engine as _};
|
|
use hbb_common::ResultType;
|
|
use license::*;
|
|
|
|
fn gen_name(lic: &License) -> ResultType<String> {
|
|
let tmp = URL_SAFE_NO_PAD.encode(&serde_json::to_vec(lic)?);
|
|
Ok(tmp.chars().rev().collect())
|
|
}
|
|
|
|
fn main() {
|
|
let args: Vec<_> = std::env::args().skip(1).collect();
|
|
let api = args.get(2).cloned().unwrap_or_default();
|
|
if args.len() >= 2 {
|
|
match gen_name(&License {
|
|
key: args[0].clone(),
|
|
host: args[1].clone(),
|
|
api,
|
|
}) {
|
|
Ok(name) => println!("rustdesk-licensed-{}.exe", name),
|
|
Err(e) => println!("{:?}", e),
|
|
}
|
|
}
|
|
if args.len() == 1 {
|
|
println!("{:?}", get_license_from_string(&args[0]));
|
|
}
|
|
}
|