Fix for #557: check BTC/PTS addresses on balance import including compressed/uncompressed versions

This commit is contained in:
Peter Conrad 2016-02-07 16:58:29 +01:00 committed by theoreticalbts
parent d60c8a255e
commit 8d2fa3863e

View file

@ -3356,7 +3356,17 @@ vector< signed_transaction > wallet_api_impl::import_balance( string name_or_id,
{
optional< private_key_type > key = wif_to_key( wif_key );
FC_ASSERT( key.valid(), "Invalid private key" );
addrs.push_back( key->get_public_key() );
fc::ecc::public_key pk = key->get_public_key();
addrs.push_back( pk );
keys[addrs.back()] = *key;
// see chain/balance_evaluator.cpp
addrs.push_back( pts_address( pk, false, 56 ) );
keys[addrs.back()] = *key;
addrs.push_back( pts_address( pk, true, 56 ) );
keys[addrs.back()] = *key;
addrs.push_back( pts_address( pk, false, 0 ) );
keys[addrs.back()] = *key;
addrs.push_back( pts_address( pk, true, 0 ) );
keys[addrs.back()] = *key;
}
}