mirror of
https://github.com/bitwarden/browser.git
synced 2025-01-09 19:28:06 +01:00
Fix build
This commit is contained in:
parent
b83eb707b0
commit
db5f0145aa
@ -14,7 +14,7 @@ impl super::BiometricTrait for Biometric {
|
||||
bail!("platform not supported");
|
||||
}
|
||||
|
||||
async fn derive_key_material(_iv_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
fn derive_key_material(_iv_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
bail!("platform not supported");
|
||||
}
|
||||
|
||||
|
@ -31,7 +31,7 @@ pub struct OsDerivedKey {
|
||||
pub trait BiometricTrait {
|
||||
async fn prompt(hwnd: Vec<u8>, message: String) -> Result<bool>;
|
||||
async fn available() -> Result<bool>;
|
||||
async fn derive_key_material(secret: Option<&str>) -> Result<OsDerivedKey>;
|
||||
fn derive_key_material(secret: Option<&str>) -> Result<OsDerivedKey>;
|
||||
async fn set_biometric_secret(
|
||||
service: &str,
|
||||
account: &str,
|
||||
|
@ -53,7 +53,7 @@ impl super::BiometricTrait for Biometric {
|
||||
Ok(false)
|
||||
}
|
||||
|
||||
async fn derive_key_material(challenge_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
fn derive_key_material(challenge_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
let challenge: [u8; 16] = match challenge_str {
|
||||
Some(challenge_str) => base64_engine
|
||||
.decode(challenge_str)?
|
||||
|
@ -73,7 +73,7 @@ impl super::BiometricTrait for Biometric {
|
||||
///
|
||||
/// Windows will only sign the challenge if the user has successfully authenticated with Windows,
|
||||
/// ensuring user presence.
|
||||
async fn derive_key_material(challenge_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
fn derive_key_material(challenge_str: Option<&str>) -> Result<OsDerivedKey> {
|
||||
let challenge: [u8; 16] = match challenge_str {
|
||||
Some(challenge_str) => base64_engine
|
||||
.decode(challenge_str)?
|
||||
@ -103,7 +103,7 @@ impl super::BiometricTrait for Biometric {
|
||||
|
||||
let done = Arc::new(AtomicBool::new(false));
|
||||
let done_clone = done.clone();
|
||||
let focus_future = tokio::task::spawn_blocking(move || loop {
|
||||
let focus_future = std::thread::spawn(move || loop {
|
||||
if !done_clone.load(std::sync::atomic::Ordering::Relaxed) {
|
||||
focus_security_prompt();
|
||||
std::thread::sleep(std::time::Duration::from_millis(500));
|
||||
@ -114,7 +114,7 @@ impl super::BiometricTrait for Biometric {
|
||||
|
||||
let signature = async_operation.get();
|
||||
done.store(true, std::sync::atomic::Ordering::Relaxed);
|
||||
focus_future.await?;
|
||||
focus_future.join().unwrap();
|
||||
let signature = signature?;
|
||||
|
||||
if signature.Status()? != KeyCredentialStatus::Success {
|
||||
|
@ -104,7 +104,6 @@ pub mod biometrics {
|
||||
#[napi]
|
||||
pub async fn derive_key_material(iv: Option<String>) -> napi::Result<OsDerivedKey> {
|
||||
Biometric::derive_key_material(iv.as_deref())
|
||||
.await
|
||||
.map(|k| k.into())
|
||||
.map_err(|e| napi::Error::from_reason(e.to_string()))
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user