blob: 18da7dfb7b23e67d89a16e59355f32d0e806e4e5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
use binaryninja::binary_view::BinaryView;
use binaryninja::command::FunctionCommand;
use binaryninja::function::Function;
use crate::cache::cached_function_guid;
pub struct CopyFunctionGUID;
impl FunctionCommand for CopyFunctionGUID {
fn action(&self, _view: &BinaryView, func: &Function) {
let Ok(llil) = func.low_level_il() else {
log::error!("Could not get low level il for copied function");
return;
};
let guid = cached_function_guid(func, &llil);
log::info!(
"Function GUID for {}... {}",
func.symbol().short_name().to_string(),
guid
);
if let Ok(mut clipboard) = arboard::Clipboard::new() {
let _ = clipboard.set_text(guid.to_string());
}
}
fn valid(&self, _view: &BinaryView, _func: &Function) -> bool {
true
}
}
|