From 461504ccbf6d687ad126e2f6f192c470925ab7cf Mon Sep 17 00:00:00 2001
From: Luke Parker <lukeparker5132@gmail.com>
Date: Wed, 14 Dec 2022 18:40:12 -0500
Subject: [PATCH] Update processor to the new Zeroizing ViewPair

---
 processor/src/coin/monero.rs | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/processor/src/coin/monero.rs b/processor/src/coin/monero.rs
index af2e28e4..b1656194 100644
--- a/processor/src/coin/monero.rs
+++ b/processor/src/coin/monero.rs
@@ -1,5 +1,7 @@
 use async_trait::async_trait;
 
+use zeroize::Zeroizing;
+
 use curve25519_dalek::scalar::Scalar;
 
 use dalek_ff_group as dfg;
@@ -65,23 +67,23 @@ pub struct SignableTransaction {
 #[derive(Clone, Debug)]
 pub struct Monero {
   pub(crate) rpc: Rpc,
-  view: Scalar,
+  view: Zeroizing<Scalar>,
 }
 
 impl Monero {
   pub async fn new(url: String) -> Monero {
-    Monero { rpc: Rpc::new(url).unwrap(), view: additional_key::<Monero>(0).0 }
+    Monero { rpc: Rpc::new(url).unwrap(), view: Zeroizing::new(additional_key::<Monero>(0).0) }
   }
 
   fn scanner(&self, spend: dfg::EdwardsPoint) -> Scanner {
-    Scanner::from_view(ViewPair::new(spend.0, self.view), Network::Mainnet, None)
+    Scanner::from_view(ViewPair::new(spend.0, self.view.clone()), Network::Mainnet, None)
   }
 
   #[cfg(test)]
   fn empty_scanner() -> Scanner {
     use group::Group;
     Scanner::from_view(
-      ViewPair::new(*dfg::EdwardsPoint::generator(), Scalar::one()),
+      ViewPair::new(*dfg::EdwardsPoint::generator(), Zeroizing::new(Scalar::one())),
       Network::Mainnet,
       Some(std::collections::HashSet::new()),
     )