@ -38,6 +38,7 @@
# define TX_EXTRA_TAG_PUBKEY 0x01
# define TX_EXTRA_NONCE 0x02
# define TX_EXTRA_MERGE_MINING_TAG 0x03
# define TX_EXTRA_MYSTERIOUS_MINERGATE_TAG 0xDE
# define TX_EXTRA_NONCE_PAYMENT_ID 0x00
# define TX_EXTRA_NONCE_ENCRYPTED_PAYMENT_ID 0x01
@ -158,14 +159,24 @@ namespace cryptonote
}
} ;
struct tx_extra_mysterious_minergate
{
std : : string data ;
BEGIN_SERIALIZE ( )
FIELD ( data )
END_SERIALIZE ( )
} ;
// tx_extra_field format, except tx_extra_padding and tx_extra_pub_key:
// varint tag;
// varint size;
// varint data[];
typedef boost : : variant < tx_extra_padding , tx_extra_pub_key , tx_extra_nonce , tx_extra_merge_mining_tag > tx_extra_field ;
typedef boost : : variant < tx_extra_padding , tx_extra_pub_key , tx_extra_nonce , tx_extra_merge_mining_tag , tx_extra_mysterious_minergate > tx_extra_field ;
}
VARIANT_TAG ( binary_archive , cryptonote : : tx_extra_padding , TX_EXTRA_TAG_PADDING ) ;
VARIANT_TAG ( binary_archive , cryptonote : : tx_extra_pub_key , TX_EXTRA_TAG_PUBKEY ) ;
VARIANT_TAG ( binary_archive , cryptonote : : tx_extra_nonce , TX_EXTRA_NONCE ) ;
VARIANT_TAG ( binary_archive , cryptonote : : tx_extra_merge_mining_tag , TX_EXTRA_MERGE_MINING_TAG ) ;
VARIANT_TAG ( binary_archive , cryptonote : : tx_extra_mysterious_minergate , TX_EXTRA_MYSTERIOUS_MINERGATE_TAG ) ;