refactor burn key into key_overrides on keychain (#178)

* refactor burn key into key_overrides on keychain
* introduce UnconfirmedChange output status, we can potentially spend these with zero confirmations
* pass in burn_key_id for the burn enabled keychain, spend *all* coins when spending from a wallet, spend UnconfirmedChange coins also
* add comment about simplifying wallet_data.select logic
* replace UnconfirmedChange output status with a more flexible zero_ok, flag on the output data
This commit is contained in:
AntiochP
2017-10-16 13:11:01 -04:00
committed by Ignotus Peverell
parent 472912c68c
commit c84a136e48
6 changed files with 66 additions and 53 deletions
+1 -2
View File
@@ -325,7 +325,7 @@ fn wallet_command(wallet_args: &ArgMatches) {
// TODO do something closer to BIP39, eazy solution right now
let seed = blake2::blake2b::blake2b(32, &[], hd_seed.as_bytes());
let mut keychain = Keychain::from_seed(seed.as_bytes()).expect(
let keychain = Keychain::from_seed(seed.as_bytes()).expect(
"Failed to initialize keychain from the provided seed.",
);
@@ -390,7 +390,6 @@ fn wallet_command(wallet_args: &ArgMatches) {
.expect("Amount to burn required")
.parse()
.expect("Could not parse amount as a whole number.");
keychain.enable_burn_key = true;
wallet::issue_burn_tx(&wallet_config, &keychain, amount).unwrap();
}
("info", Some(_)) => {