aboutsummaryrefslogtreecommitdiff
path: root/src/ringct
diff options
context:
space:
mode:
authorAlexander Blair <snipa@jagtech.io>2020-08-27 02:54:29 -0700
committerAlexander Blair <snipa@jagtech.io>2020-08-27 02:54:30 -0700
commitbad5d8d6f05826ff1275c0ece08f3b99f6f39840 (patch)
treea9223c5c27a6e27535120e10cf49e9f5f17c2014 /src/ringct
parent3f392341e75ba77c77a35f2f5d6c74ec6f4c012d (diff)
parent7175dcb1078abbdaa130a8c5f5fd2b93fa7b3086 (diff)
downloadmonzero-core-bad5d8d6f05826ff1275c0ece08f3b99f6f39840.tar.gz
monzero-core-bad5d8d6f05826ff1275c0ece08f3b99f6f39840.tar.xz
monzero-core-bad5d8d6f05826ff1275c0ece08f3b99f6f39840.zip
Merge pull request #6690
7175dcb10 replace most boost serialization with existing monero serialization (moneromooo-monero)
Diffstat (limited to 'src/ringct')
-rw-r--r--src/ringct/rctTypes.h29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/ringct/rctTypes.h b/src/ringct/rctTypes.h
index 9b7f26a02..ce11981ad 100644
--- a/src/ringct/rctTypes.h
+++ b/src/ringct/rctTypes.h
@@ -49,7 +49,7 @@ extern "C" {
#include "hex.h"
#include "span.h"
#include "memwipe.h"
-#include "serialization/vector.h"
+#include "serialization/containers.h"
#include "serialization/debug_archive.h"
#include "serialization/binary_archive.h"
#include "serialization/json_archive.h"
@@ -239,6 +239,12 @@ namespace rct {
struct RCTConfig {
RangeProofType range_proof_type;
int bp_version;
+
+ BEGIN_SERIALIZE_OBJECT()
+ VERSION_FIELD(0)
+ VARINT_FIELD(range_proof_type)
+ VARINT_FIELD(bp_version)
+ END_SERIALIZE()
};
struct rctSigBase {
uint8_t type;
@@ -317,6 +323,16 @@ namespace rct {
ar.end_array();
return ar.stream().good();
}
+
+ BEGIN_SERIALIZE_OBJECT()
+ FIELD(type)
+ FIELD(message)
+ FIELD(mixRing)
+ FIELD(pseudoOuts)
+ FIELD(ecdhInfo)
+ FIELD(outPk)
+ VARINT_FIELD(txnFee)
+ END_SERIALIZE()
};
struct rctSigPrunable {
std::vector<rangeSig> rangeSigs;
@@ -436,6 +452,12 @@ namespace rct {
return ar.stream().good();
}
+ BEGIN_SERIALIZE_OBJECT()
+ FIELD(rangeSigs)
+ FIELD(bulletproofs)
+ FIELD(MGs)
+ FIELD(pseudoOuts)
+ END_SERIALIZE()
};
struct rctSig: public rctSigBase {
rctSigPrunable p;
@@ -449,6 +471,11 @@ namespace rct {
{
return type == RCTTypeBulletproof || type == RCTTypeBulletproof2 ? p.pseudoOuts : pseudoOuts;
}
+
+ BEGIN_SERIALIZE_OBJECT()
+ FIELDS((rctSigBase&)*this)
+ FIELD(p)
+ END_SERIALIZE()
};
//other basepoint H = toPoint(cn_fast_hash(G)), G the basepoint