コード例 #1
0
ファイル: cold-outputs.cpp プロジェクト: anonimal/bitmonero
int ColdOutputsFuzzer::run(const std::string &filename)
{
  std::string s;

  if (!epee::file_io_utils::load_file_to_string(filename, s))
  {
    std::cout << "Error: failed to load file " << filename << std::endl;
    return 1;
  }
  s = std::string("\x01\x16serialization::archive") + s;
  try
  {
    std::pair<size_t, std::vector<tools::wallet2::transfer_details>> outputs;
    std::stringstream iss;
    iss << s;
    boost::archive::portable_binary_iarchive ar(iss);
    ar >> outputs;
    size_t n_outputs = wallet.import_outputs(outputs);
    std::cout << boost::lexical_cast<std::string>(n_outputs) << " outputs imported" << std::endl;
  }
  catch (const std::exception &e)
  {
    std::cerr << "Failed to import outputs: " << e.what() << std::endl;
    return 1;
  }
  return 0;
}