Added Masari support
This commit is contained in:
@@ -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
|
||||||
};
|
};
|
||||||
@@ -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();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user