Added Masari support

This commit is contained in:
MoneroOcean
2018-05-01 21:45:33 +02:00
parent 26c6ff8075
commit 53b46441f7
2 changed files with 9 additions and 6 deletions

View File

@@ -3,7 +3,8 @@
#define CURRENT_TRANSACTION_VERSION 1 #define CURRENT_TRANSACTION_VERSION 1
enum BLOB_TYPE { enum BLOB_TYPE {
BLOB_TYPE_CRYPTONOTE = 0, BLOB_TYPE_CRYPTONOTE = 0,
BLOB_TYPE_FORKNOTE1 = 1, BLOB_TYPE_FORKNOTE1 = 1,
BLOB_TYPE_FORKNOTE2 = 2, BLOB_TYPE_FORKNOTE2 = 2,
BLOB_TYPE_CRYPTONOTE2 = 3, // Masari
}; };

View File

@@ -165,18 +165,19 @@ namespace cryptonote
class transaction: public transaction_prefix class transaction: public transaction_prefix
{ {
enum BLOB_TYPE m_blob_type;
public: public:
std::vector<std::vector<crypto::signature> > signatures; //count signatures always the same as inputs count std::vector<std::vector<crypto::signature> > signatures; //count signatures always the same as inputs count
rct::rctSig rct_signatures; rct::rctSig rct_signatures;
transaction(); transaction(enum BLOB_TYPE = BLOB_TYPE_CRYPTONOTE);
virtual ~transaction(); virtual ~transaction();
void set_null(); void set_null();
BEGIN_SERIALIZE_OBJECT() BEGIN_SERIALIZE_OBJECT()
FIELDS(*static_cast<transaction_prefix *>(this)) FIELDS(*static_cast<transaction_prefix *>(this))
if (version == 1) if (version == 1 && m_blob_type != BLOB_TYPE_CRYPTONOTE2)
{ {
ar.tag("signatures"); ar.tag("signatures");
ar.begin_array(); ar.begin_array();
@@ -234,8 +235,9 @@ namespace cryptonote
}; };
inline inline
transaction::transaction() transaction::transaction(enum BLOB_TYPE blob_type)
{ {
m_blob_type = blob_type;
set_null(); set_null();
} }