55 const std::optional<ccf::crypto::Pem>& encryption_pub_key_ = std::nullopt,
56 const nlohmann::json& member_data_ =
nullptr,
57 const std::optional<MemberRecoveryRole>& recovery_role_ = std::nullopt) :
73 NewMember, encryption_pub_key, member_data, recovery_role);
81 nlohmann::json member_data =
nullptr;
84 std::optional<MemberRecoveryRole> recovery_role = std::nullopt;
104 static constexpr auto MEMBER_INFO =
"public:ccf.gov.members.info";
105 static constexpr auto MEMBER_CERTS =
"public:ccf.gov.members.certs";
106 static constexpr auto MEMBER_ENCRYPTION_PUBLIC_KEYS =
107 "public:ccf.gov.members.encryption_public_keys";
130 std::optional<SignedReq> signed_req = std::nullopt;
133 std::optional<std::vector<uint8_t>> cose_sign1_req = std::nullopt;
142 signed_req(signed_req_)
147 const std::vector<uint8_t>& cose_sign1_req_) :
149 cose_sign1_req(cose_sign1_req_)
153#pragma clang diagnostic push
154#pragma clang diagnostic ignored "-Wunused-parameter"
155#pragma clang diagnostic ignored "-Wgnu-zero-variadic-macro-arguments"
157#pragma clang diagnostic pop
162 static constexpr auto MEMBER_ACKS =
"public:ccf.gov.members.acks";
Definition sha256_hash.h:16
#define DECLARE_JSON_TYPE_WITH_BASE_AND_OPTIONAL_FIELDS(TYPE, BASE)
Definition json.h:702
#define DECLARE_JSON_REQUIRED_FIELDS(TYPE,...)
Definition json.h:714
#define DECLARE_JSON_TYPE(TYPE)
Definition json.h:663
#define DECLARE_JSON_TYPE_WITH_OPTIONAL_FIELDS(TYPE)
Definition json.h:690
#define DECLARE_JSON_OPTIONAL_FIELDS(TYPE,...)
Definition json.h:786
#define DECLARE_JSON_ENUM(TYPE,...)
Definition json.h:837
Definition app_interface.h:14
MemberRecoveryRole
Definition members.h:26
MemberStatus
Definition members.h:17
MemberAck(const ccf::crypto::Sha256Hash &root, const std::vector< uint8_t > &cose_sign1_req_)
Definition members.h:145
MemberAck(const ccf::crypto::Sha256Hash &root, const SignedReq &signed_req_)
Definition members.h:139
MemberAck(const ccf::crypto::Sha256Hash &root)
Definition members.h:137
MemberAck()
Definition members.h:135
nlohmann::json member_data
Definition members.h:81
std::optional< MemberRecoveryRole > recovery_role
Optional recovery role of the member.
Definition members.h:84
MemberStatus status
Status of the member in the consortium.
Definition members.h:78
bool operator==(const MemberDetails &rhs) const
Definition members.h:86
std::optional< MemberRecoveryRole > recovery_role
Definition members.h:49
std::optional< ccf::crypto::Pem > encryption_pub_key
Definition members.h:46
NewMember()
Definition members.h:51
ccf::crypto::Pem cert
Definition members.h:43
NewMember(const ccf::crypto::Pem &cert_, const std::optional< ccf::crypto::Pem > &encryption_pub_key_=std::nullopt, const nlohmann::json &member_data_=nullptr, const std::optional< MemberRecoveryRole > &recovery_role_=std::nullopt)
Definition members.h:53
nlohmann::json member_data
Definition members.h:47
bool operator==(const NewMember &rhs) const
Definition members.h:64
Definition signed_req.h:13
StateDigest(const ccf::crypto::Sha256Hash &root)
Definition members.h:120
std::string state_digest
Next state digest the member is expected to sign.
Definition members.h:116
StateDigest()
Definition members.h:118