Handle wrapped PublicKey struct

This commit is contained in:
Tyera Eulberg 2018-07-31 11:27:08 -06:00 committed by Grimes
parent a86618faf3
commit cf70e5ff2f
5 changed files with 12 additions and 9 deletions

View File

@ -3,10 +3,12 @@ extern crate bincode;
extern crate bs58; extern crate bs58;
extern crate clap; extern crate clap;
extern crate dirs; extern crate dirs;
extern crate generic_array;
extern crate serde_json; extern crate serde_json;
extern crate solana; extern crate solana;
use clap::{App, Arg, SubCommand}; use clap::{App, Arg, SubCommand};
use generic_array::GenericArray;
use solana::client::mk_client; use solana::client::mk_client;
use solana::crdt::NodeInfo; use solana::crdt::NodeInfo;
use solana::drone::DRONE_PORT; use solana::drone::DRONE_PORT;
@ -180,7 +182,7 @@ fn parse_args() -> Result<WalletConfig, Box<error::Error>> {
display_actions(); display_actions();
Err(WalletError::BadParameter("Invalid public key".to_string()))?; Err(WalletError::BadParameter("Invalid public key".to_string()))?;
} }
PublicKey::clone_from_slice(&pubkey_vec) PublicKey(GenericArray::clone_from_slice(&pubkey_vec))
} else { } else {
id.pubkey() id.pubkey()
}; };
@ -228,7 +230,7 @@ fn process_command(
match config.command { match config.command {
// Check client balance // Check client balance
WalletCommand::Address => { WalletCommand::Address => {
println!("{}", bs58::encode(config.id.pubkey()).into_string()); println!("{}", config.id.pubkey());
} }
WalletCommand::Balance => { WalletCommand::Balance => {
println!("Balance requested..."); println!("Balance requested...");

View File

@ -135,7 +135,8 @@ pub struct NodeInfo {
pub ledger_state: LedgerState, pub ledger_state: LedgerState,
} }
fn make_debug_id(buf: &[u8]) -> u64 { fn make_debug_id(key: &PublicKey) -> u64 {
let buf: &[u8] = &key.0;
let mut rdr = Cursor::new(&buf[..8]); let mut rdr = Cursor::new(&buf[..8]);
rdr.read_u64::<LittleEndian>() rdr.read_u64::<LittleEndian>()
.expect("rdr.read_u64 in fn debug_id") .expect("rdr.read_u64 in fn debug_id")

View File

@ -28,7 +28,7 @@ impl Ncp {
let (request_sender, request_receiver) = channel(); let (request_sender, request_receiver) = channel();
trace!( trace!(
"Ncp: id: {:?}, listening on: {:?}", "Ncp: id: {:?}, listening on: {:?}",
&crdt.read().unwrap().me[..4], &crdt.read().unwrap().me.0[..4],
gossip_listen_socket.local_addr().unwrap() gossip_listen_socket.local_addr().unwrap()
); );
let t_receiver = streamer::blob_receiver( let t_receiver = streamer::blob_receiver(

View File

@ -192,7 +192,7 @@ impl Transaction {
/// Verify only the transaction signature. /// Verify only the transaction signature.
pub fn verify_sig(&self) -> bool { pub fn verify_sig(&self) -> bool {
warn!("transaction signature verification called"); warn!("transaction signature verification called");
self.sig.verify(&self.from, &self.get_sign_data()) self.sig.verify(&self.from.0, &self.get_sign_data())
} }
/// Verify only the payment plan. /// Verify only the payment plan.
@ -319,7 +319,7 @@ mod tests {
let tx_bytes = serialize(&tx).unwrap(); let tx_bytes = serialize(&tx).unwrap();
assert_matches!(memfind(&tx_bytes, &sign_data), Some(SIGNED_DATA_OFFSET)); assert_matches!(memfind(&tx_bytes, &sign_data), Some(SIGNED_DATA_OFFSET));
assert_matches!(memfind(&tx_bytes, &tx.sig), Some(SIG_OFFSET)); assert_matches!(memfind(&tx_bytes, &tx.sig), Some(SIG_OFFSET));
assert_matches!(memfind(&tx_bytes, &tx.from), Some(PUB_KEY_OFFSET)); assert_matches!(memfind(&tx_bytes, &tx.from.0), Some(PUB_KEY_OFFSET));
} }
#[test] #[test]

View File

@ -101,7 +101,7 @@ fn gossip_star() {
let mut yd = yv.table[&yv.me].clone(); let mut yd = yv.table[&yv.me].clone();
yd.version = 0; yd.version = 0;
xv.insert(&yd); xv.insert(&yd);
trace!("star leader {:?}", &xv.me[..4]); trace!("star leader {:?}", &xv.me.0[..4]);
} }
}); });
} }
@ -116,12 +116,12 @@ fn gossip_rstar() {
let xv = listen[0].0.read().unwrap(); let xv = listen[0].0.read().unwrap();
xv.table[&xv.me].clone() xv.table[&xv.me].clone()
}; };
trace!("rstar leader {:?}", &xd.id[..4]); trace!("rstar leader {:?}", &xd.id.0[..4]);
for n in 0..(num - 1) { for n in 0..(num - 1) {
let y = (n + 1) % listen.len(); let y = (n + 1) % listen.len();
let mut yv = listen[y].0.write().unwrap(); let mut yv = listen[y].0.write().unwrap();
yv.insert(&xd); yv.insert(&xd);
trace!("rstar insert {:?} into {:?}", &xd.id[..4], &yv.me[..4]); trace!("rstar insert {:?} into {:?}", &xd.id.0[..4], &yv.me.0[..4]);
} }
}); });
} }