Browse Source

cashierdb: remove token_id from main_keypair

ghassmo 4 years ago
parent
commit
8f015b548b
3 changed files with 9 additions and 20 deletions
  1. 1 2
      sql/cashier.sql
  2. 2 5
      src/bin/cashierd.rs
  3. 6 13
      src/wallet/cashierdb.rs

+ 1 - 2
sql/cashier.sql

@@ -2,8 +2,7 @@ CREATE TABLE IF NOT EXISTS main_keypairs(
     keypair_id INTEGER PRIMARY KEY NOT NULL,
    	token_key_private BLOB NOT NULL,
     token_key_public BLOB NOT NULL,
-	network BLOB NOT NULL,
-	token_id BLOB NOT NULL
+	network BLOB NOT NULL
 );
 
 CREATE TABLE IF NOT EXISTS deposit_keypairs(

+ 2 - 5
src/bin/cashierd.rs

@@ -392,11 +392,9 @@ impl Cashierd {
 
                     let main_keypair: Keypair;
 
-                    let native_sol_token_id = "So11111111111111111111111111111111111111112";
-                    let native_sol_token_id = generate_id(native_sol_token_id)?;
                     let main_keypairs = self
                         .cashier_wallet
-                        .get_main_keys(&NetworkName::Solana, &native_sol_token_id)?;
+                        .get_main_keys(&NetworkName::Solana)?;
 
                     if main_keypairs.is_empty() {
                         main_keypair = Keypair::new();
@@ -418,10 +416,9 @@ impl Cashierd {
                     // NOTE bitcoin is not implemented yet
                     //let _main_keypair: BitcoinKeys;
 
-                    let native_btc_token_id = generate_id("btc")?;
                     let _main_keypairs = self
                         .cashier_wallet
-                        .get_main_keys(&NetworkName::Bitcoin, &native_btc_token_id)?;
+                        .get_main_keys(&NetworkName::Bitcoin)?;
                     // if main_keypairs.is_empty() {
                     //     //main_keypair = BitcoinKeys::new(bitcoin::network::constants::Network::Testnet)?;
                     // } else {

+ 6 - 13
src/wallet/cashierdb.rs

@@ -64,7 +64,6 @@ impl CashierDb {
         token_key_private: &Vec<u8>,
         token_key_public: &Vec<u8>,
         network: &NetworkName,
-        token_id: &jubjub::Fr,
     ) -> Result<()> {
         debug!(target: "CASHIERDB", "Put main keys");
 
@@ -74,18 +73,16 @@ impl CashierDb {
         conn.pragma_update(None, "key", &self.password)?;
 
         let network = self.get_value_serialized(network)?;
-        let token_id = self.get_value_serialized(token_id)?;
 
         conn.execute(
             "INSERT INTO main_keypairs
-            (token_key_private, token_key_public, network, token_id)
+            (token_key_private, token_key_public, network)
             VALUES
-            (:token_key_private, :token_key_public, :network, :token_id)",
+            (:token_key_private, :token_key_public, :network)",
             named_params! {
                 ":token_key_private": token_key_private,
                 ":token_key_public": token_key_public,
                 ":network": &network,
-                ":token_id": &token_id,
             },
         )?;
         Ok(())
@@ -94,7 +91,6 @@ impl CashierDb {
     pub fn get_main_keys(
         &self,
         network: &NetworkName,
-        token_id: &jubjub::Fr,
     ) -> Result<Vec<(Vec<u8>, Vec<u8>)>> {
         debug!(target: "CASHIERDB", "Get main keys");
         // open connection
@@ -103,16 +99,14 @@ impl CashierDb {
         conn.pragma_update(None, "key", &self.password)?;
 
         let network = self.get_value_serialized(network)?;
-        let token_id = self.get_value_serialized(token_id)?;
 
         let mut stmt = conn.prepare(
             "SELECT token_key_private, token_key_public
             FROM main_keypairs
-            WHERE network = :network
-            AND token_id = :token_id ;",
+            WHERE network = :network ;",
         )?;
         let keys_iter = stmt.query_map::<(Vec<u8>, Vec<u8>), _, _>(
-            &[(":network", &network), (":token_id", &token_id)],
+            &[(":network", &network)],
             |row| Ok((row.get(0)?, row.get(1)?)),
         )?;
 
@@ -476,11 +470,10 @@ mod tests {
         let token_addr_private = serialize(&String::from("2222222222222222222222222222222222"));
 
         let network = NetworkName::Bitcoin;
-        let token_id: jubjub::Fr = jubjub::Fr::random(&mut OsRng);
 
-        wallet.put_main_keys(&token_addr_private, &token_addr, &network, &token_id)?;
+        wallet.put_main_keys(&token_addr_private, &token_addr, &network)?;
 
-        let keys = wallet.get_main_keys(&network, &token_id)?;
+        let keys = wallet.get_main_keys(&network)?;
 
         assert_eq!(keys.len(), 1);