CLI: Add authority to show-nonce-account output (#7969)

This commit is contained in:
Trent Nelson
2020-01-25 07:21:23 -07:00
committed by GitHub
parent b5125479ec
commit e2570c98ee

View File

@ -10,7 +10,7 @@ use solana_sdk::{
account::Account, account::Account,
account_utils::StateMut, account_utils::StateMut,
hash::Hash, hash::Hash,
nonce_state::NonceState, nonce_state::{Meta, NonceState},
pubkey::Pubkey, pubkey::Pubkey,
signature::{Keypair, KeypairUtil}, signature::{Keypair, KeypairUtil},
system_instruction::{ system_instruction::{
@ -558,7 +558,7 @@ pub fn process_show_nonce_account(
)) ))
.into()); .into());
} }
let print_account = |hash: Option<Hash>| { let print_account = |data: Option<(Meta, Hash)>| {
println!( println!(
"balance: {}", "balance: {}",
build_balance_message(nonce_account.lamports, use_lamports_unit, true) build_balance_message(nonce_account.lamports, use_lamports_unit, true)
@ -571,15 +571,21 @@ pub fn process_show_nonce_account(
true true
) )
); );
match hash { match data {
Some(hash) => println!("nonce: {}", hash), Some((meta, hash)) => {
None => println!("nonce: uninitialized"), println!("nonce: {}", hash);
println!("authority: {}", meta.nonce_authority);
}
None => {
println!("nonce: uninitialized");
println!("authority: uninitialized");
}
} }
Ok("".to_string()) Ok("".to_string())
}; };
match nonce_account.state() { match nonce_account.state() {
Ok(NonceState::Uninitialized) => print_account(None), Ok(NonceState::Uninitialized) => print_account(None),
Ok(NonceState::Initialized(_, hash)) => print_account(Some(hash)), Ok(NonceState::Initialized(meta, hash)) => print_account(Some((meta, hash))),
Err(err) => Err(CliError::RpcRequestError(format!( Err(err) => Err(CliError::RpcRequestError(format!(
"Account data could not be deserialized to nonce state: {:?}", "Account data could not be deserialized to nonce state: {:?}",
err err