Correct key image check in tx_pool

This commit is contained in:
Lee Clagett 2020-03-25 03:02:28 -04:00
parent d1cf16364f
commit 5de2295f3c
4 changed files with 71 additions and 16 deletions

View file

@ -77,6 +77,7 @@ class txpool_double_spend_base : public txpool_base
std::unordered_set<crypto::hash> m_no_relay_hashes;
std::unordered_map<crypto::hash, uint64_t> m_all_hashes;
size_t m_no_new_index;
size_t m_failed_index;
size_t m_new_timestamp_index;
crypto::hash m_last_tx;
@ -86,6 +87,7 @@ public:
txpool_double_spend_base();
bool mark_no_new(cryptonote::core& c, size_t ev_index, const std::vector<test_event_entry>& events);
bool mark_failed(cryptonote::core& c, size_t ev_index, const std::vector<test_event_entry>& events);
bool mark_timestamp_change(cryptonote::core& c, size_t ev_index, const std::vector<test_event_entry>& events);
//! Pause for 1 second, so that `receive_time` for tx meta changes (tx hidden from public rpc being updated)
@ -116,3 +118,12 @@ struct txpool_double_spend_local : txpool_double_spend_base
bool generate(std::vector<test_event_entry>& events) const;
};
struct txpool_double_spend_keyimage : txpool_double_spend_base
{
txpool_double_spend_keyimage()
: txpool_double_spend_base()
{}
bool generate(std::vector<test_event_entry>& events) const;
};