From 1cb01af9e26d6a02b368fe9fd15f8e0d7e37f4ed Mon Sep 17 00:00:00 2001 From: SW van Heerden Date: Fri, 19 Jul 2024 11:51:59 +0200 Subject: [PATCH] WIP on sw_fixpanic fix build --- .../src/transactions/key_manager/inner.rs | 2 +- base_layer/wallet/src/wallet.rs | 29 ++++++++++--------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/base_layer/core/src/transactions/key_manager/inner.rs b/base_layer/core/src/transactions/key_manager/inner.rs index 2073f2659e..d0a41d34ac 100644 --- a/base_layer/core/src/transactions/key_manager/inner.rs +++ b/base_layer/core/src/transactions/key_manager/inner.rs @@ -470,7 +470,7 @@ where TBackend: KeyManagerBackend + 'static let index = 0; match self.wallet_type { - WalletType::Software | WalletType::Imported(_) => { + WalletType::DerivedKeys | WalletType::ProvidedKeys(_) => { self.get_private_key(&TariKeyId::Managed { branch: branch.clone(), index, diff --git a/base_layer/wallet/src/wallet.rs b/base_layer/wallet/src/wallet.rs index b0ce4caf25..27938c006f 100644 --- a/base_layer/wallet/src/wallet.rs +++ b/base_layer/wallet/src/wallet.rs @@ -319,13 +319,18 @@ where } else { None }; - - persist_one_sided_payment_script_for_node_identity(&mut output_manager_handle, &node_identity) - .await - .map_err(|e| { - error!(target: LOG_TARGET, "{:?}", e); - e - })?; + let spend_key = key_manager_handle.get_spend_key().await?; + + persist_one_sided_payment_script_for_node_identity( + &mut output_manager_handle, + &spend_key.pub_key, + spend_key.key_id, + ) + .await + .map_err(|e| { + error!(target: LOG_TARGET, "{:?}", e); + e + })?; wallet_database.set_node_features(comms.node_identity().features())?; let identity_sig = comms.node_identity().identity_signature_read().as_ref().cloned(); @@ -835,18 +840,16 @@ pub fn derive_comms_secret_key(master_seed: &CipherSeed) -> Result, + spend_key: &PublicKey, + spend_key_id: TariKeyId, ) -> Result<(), WalletError> { - let script = push_pubkey_script(node_identity.public_key()); - let wallet_node_key_id = TariKeyId::Imported { - key: node_identity.public_key().clone(), - }; + let script = push_pubkey_script(spend_key); let known_script = KnownOneSidedPaymentScript { script_hash: script .as_hash::>() .map_err(|e| WalletError::OutputManagerError(OutputManagerError::ScriptError(e)))? .to_vec(), - script_key_id: wallet_node_key_id.clone(), + script_key_id: spend_key_id, script, input: ExecutionStack::default(), script_lock_height: 0,