Updated gRPC to v1.74.0

This commit is contained in:
SChernykh
2025-07-25 13:25:19 +02:00
parent a4a0c03517
commit 3d08803709
30 changed files with 61289 additions and 27962 deletions
+4
View File
@@ -0,0 +1,4 @@
To update the files:
- Build gRPC in `../../../grpc/.build` folder: `cmake .. && make -j$(nproc)`
- Run `../../../grpc/.build/third_party/protobuf/protoc --cpp_out=. --plugin=protoc-gen-grpc=../../../grpc/.build/grpc_cpp_plugin --grpc_out=. --proto_path=../../../grpc/third_party/protobuf/src --proto_path=. *.proto`
+132 -18
View File
@@ -19,6 +19,7 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -56,10 +57,13 @@ static const char* BaseNode_method_names[] = {
"/tari.rpc.BaseNode/ListConnectedPeers",
"/tari.rpc.BaseNode/GetMempoolStats",
"/tari.rpc.BaseNode/GetActiveValidatorNodes",
"/tari.rpc.BaseNode/GetValidatorNodeChanges",
"/tari.rpc.BaseNode/GetShardKey",
"/tari.rpc.BaseNode/GetTemplateRegistrations",
"/tari.rpc.BaseNode/GetSideChainUtxos",
"/tari.rpc.BaseNode/GetNetworkState",
"/tari.rpc.BaseNode/SearchPaymentReferences",
"/tari.rpc.BaseNode/SearchPaymentReferencesViaOutputHash",
};
std::unique_ptr< BaseNode::Stub> BaseNode::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) {
@@ -102,10 +106,13 @@ BaseNode::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel,
, rpcmethod_ListConnectedPeers_(BaseNode_method_names[30], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetMempoolStats_(BaseNode_method_names[31], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetActiveValidatorNodes_(BaseNode_method_names[32], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_GetShardKey_(BaseNode_method_names[33], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetTemplateRegistrations_(BaseNode_method_names[34], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_GetSideChainUtxos_(BaseNode_method_names[35], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_GetNetworkState_(BaseNode_method_names[36], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetValidatorNodeChanges_(BaseNode_method_names[33], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetShardKey_(BaseNode_method_names[34], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_GetTemplateRegistrations_(BaseNode_method_names[35], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_GetSideChainUtxos_(BaseNode_method_names[36], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_GetNetworkState_(BaseNode_method_names[37], options.suffix_for_stats(),::grpc::internal::RpcMethod::NORMAL_RPC, channel)
, rpcmethod_SearchPaymentReferences_(BaseNode_method_names[38], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
, rpcmethod_SearchPaymentReferencesViaOutputHash_(BaseNode_method_names[39], options.suffix_for_stats(),::grpc::internal::RpcMethod::SERVER_STREAMING, channel)
{}
::grpc::ClientReader< ::tari::rpc::BlockHeaderResponse>* BaseNode::Stub::ListHeadersRaw(::grpc::ClientContext* context, const ::tari::rpc::ListHeadersRequest& request) {
@@ -255,23 +262,23 @@ void BaseNode::Stub::async::GetBlockFees(::grpc::ClientContext* context, const :
return result;
}
::grpc::Status BaseNode::Stub::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::tari::rpc::StringValue* response) {
return ::grpc::internal::BlockingUnaryCall< ::tari::rpc::Empty, ::tari::rpc::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_GetVersion_, context, request, response);
::grpc::Status BaseNode::Stub::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::tari::rpc::BaseNodeGetVersionResponse* response) {
return ::grpc::internal::BlockingUnaryCall< ::tari::rpc::Empty, ::tari::rpc::BaseNodeGetVersionResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_GetVersion_, context, request, response);
}
void BaseNode::Stub::async::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::StringValue* response, std::function<void(::grpc::Status)> f) {
::grpc::internal::CallbackUnaryCall< ::tari::rpc::Empty, ::tari::rpc::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_GetVersion_, context, request, response, std::move(f));
void BaseNode::Stub::async::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::BaseNodeGetVersionResponse* response, std::function<void(::grpc::Status)> f) {
::grpc::internal::CallbackUnaryCall< ::tari::rpc::Empty, ::tari::rpc::BaseNodeGetVersionResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_GetVersion_, context, request, response, std::move(f));
}
void BaseNode::Stub::async::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::StringValue* response, ::grpc::ClientUnaryReactor* reactor) {
void BaseNode::Stub::async::GetVersion(::grpc::ClientContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::BaseNodeGetVersionResponse* response, ::grpc::ClientUnaryReactor* reactor) {
::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_GetVersion_, context, request, response, reactor);
}
::grpc::ClientAsyncResponseReader< ::tari::rpc::StringValue>* BaseNode::Stub::PrepareAsyncGetVersionRaw(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::tari::rpc::StringValue, ::tari::rpc::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_GetVersion_, context, request);
::grpc::ClientAsyncResponseReader< ::tari::rpc::BaseNodeGetVersionResponse>* BaseNode::Stub::PrepareAsyncGetVersionRaw(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::tari::rpc::BaseNodeGetVersionResponse, ::tari::rpc::Empty, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_GetVersion_, context, request);
}
::grpc::ClientAsyncResponseReader< ::tari::rpc::StringValue>* BaseNode::Stub::AsyncGetVersionRaw(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::grpc::CompletionQueue* cq) {
::grpc::ClientAsyncResponseReader< ::tari::rpc::BaseNodeGetVersionResponse>* BaseNode::Stub::AsyncGetVersionRaw(::grpc::ClientContext* context, const ::tari::rpc::Empty& request, ::grpc::CompletionQueue* cq) {
auto* result =
this->PrepareAsyncGetVersionRaw(context, request, cq);
result->StartCall();
@@ -797,6 +804,29 @@ void BaseNode::Stub::async::GetActiveValidatorNodes(::grpc::ClientContext* conte
return ::grpc::internal::ClientAsyncReaderFactory< ::tari::rpc::GetActiveValidatorNodesResponse>::Create(channel_.get(), cq, rpcmethod_GetActiveValidatorNodes_, context, request, false, nullptr);
}
::grpc::Status BaseNode::Stub::GetValidatorNodeChanges(::grpc::ClientContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest& request, ::tari::rpc::GetValidatorNodeChangesResponse* response) {
return ::grpc::internal::BlockingUnaryCall< ::tari::rpc::GetValidatorNodeChangesRequest, ::tari::rpc::GetValidatorNodeChangesResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_GetValidatorNodeChanges_, context, request, response);
}
void BaseNode::Stub::async::GetValidatorNodeChanges(::grpc::ClientContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest* request, ::tari::rpc::GetValidatorNodeChangesResponse* response, std::function<void(::grpc::Status)> f) {
::grpc::internal::CallbackUnaryCall< ::tari::rpc::GetValidatorNodeChangesRequest, ::tari::rpc::GetValidatorNodeChangesResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_GetValidatorNodeChanges_, context, request, response, std::move(f));
}
void BaseNode::Stub::async::GetValidatorNodeChanges(::grpc::ClientContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest* request, ::tari::rpc::GetValidatorNodeChangesResponse* response, ::grpc::ClientUnaryReactor* reactor) {
::grpc::internal::ClientCallbackUnaryFactory::Create< ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(stub_->channel_.get(), stub_->rpcmethod_GetValidatorNodeChanges_, context, request, response, reactor);
}
::grpc::ClientAsyncResponseReader< ::tari::rpc::GetValidatorNodeChangesResponse>* BaseNode::Stub::PrepareAsyncGetValidatorNodeChangesRaw(::grpc::ClientContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncResponseReaderHelper::Create< ::tari::rpc::GetValidatorNodeChangesResponse, ::tari::rpc::GetValidatorNodeChangesRequest, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), cq, rpcmethod_GetValidatorNodeChanges_, context, request);
}
::grpc::ClientAsyncResponseReader< ::tari::rpc::GetValidatorNodeChangesResponse>* BaseNode::Stub::AsyncGetValidatorNodeChangesRaw(::grpc::ClientContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest& request, ::grpc::CompletionQueue* cq) {
auto* result =
this->PrepareAsyncGetValidatorNodeChangesRaw(context, request, cq);
result->StartCall();
return result;
}
::grpc::Status BaseNode::Stub::GetShardKey(::grpc::ClientContext* context, const ::tari::rpc::GetShardKeyRequest& request, ::tari::rpc::GetShardKeyResponse* response) {
return ::grpc::internal::BlockingUnaryCall< ::tari::rpc::GetShardKeyRequest, ::tari::rpc::GetShardKeyResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(channel_.get(), rpcmethod_GetShardKey_, context, request, response);
}
@@ -875,6 +905,38 @@ void BaseNode::Stub::async::GetNetworkState(::grpc::ClientContext* context, cons
return result;
}
::grpc::ClientReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::SearchPaymentReferencesRaw(::grpc::ClientContext* context, const ::tari::rpc::SearchPaymentReferencesRequest& request) {
return ::grpc::internal::ClientReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), rpcmethod_SearchPaymentReferences_, context, request);
}
void BaseNode::Stub::async::SearchPaymentReferences(::grpc::ClientContext* context, const ::tari::rpc::SearchPaymentReferencesRequest* request, ::grpc::ClientReadReactor< ::tari::rpc::PaymentReferenceResponse>* reactor) {
::grpc::internal::ClientCallbackReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(stub_->channel_.get(), stub_->rpcmethod_SearchPaymentReferences_, context, request, reactor);
}
::grpc::ClientAsyncReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::AsyncSearchPaymentReferencesRaw(::grpc::ClientContext* context, const ::tari::rpc::SearchPaymentReferencesRequest& request, ::grpc::CompletionQueue* cq, void* tag) {
return ::grpc::internal::ClientAsyncReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), cq, rpcmethod_SearchPaymentReferences_, context, request, true, tag);
}
::grpc::ClientAsyncReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::PrepareAsyncSearchPaymentReferencesRaw(::grpc::ClientContext* context, const ::tari::rpc::SearchPaymentReferencesRequest& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), cq, rpcmethod_SearchPaymentReferences_, context, request, false, nullptr);
}
::grpc::ClientReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::SearchPaymentReferencesViaOutputHashRaw(::grpc::ClientContext* context, const ::tari::rpc::FetchMatchingUtxosRequest& request) {
return ::grpc::internal::ClientReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), rpcmethod_SearchPaymentReferencesViaOutputHash_, context, request);
}
void BaseNode::Stub::async::SearchPaymentReferencesViaOutputHash(::grpc::ClientContext* context, const ::tari::rpc::FetchMatchingUtxosRequest* request, ::grpc::ClientReadReactor< ::tari::rpc::PaymentReferenceResponse>* reactor) {
::grpc::internal::ClientCallbackReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(stub_->channel_.get(), stub_->rpcmethod_SearchPaymentReferencesViaOutputHash_, context, request, reactor);
}
::grpc::ClientAsyncReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::AsyncSearchPaymentReferencesViaOutputHashRaw(::grpc::ClientContext* context, const ::tari::rpc::FetchMatchingUtxosRequest& request, ::grpc::CompletionQueue* cq, void* tag) {
return ::grpc::internal::ClientAsyncReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), cq, rpcmethod_SearchPaymentReferencesViaOutputHash_, context, request, true, tag);
}
::grpc::ClientAsyncReader< ::tari::rpc::PaymentReferenceResponse>* BaseNode::Stub::PrepareAsyncSearchPaymentReferencesViaOutputHashRaw(::grpc::ClientContext* context, const ::tari::rpc::FetchMatchingUtxosRequest& request, ::grpc::CompletionQueue* cq) {
return ::grpc::internal::ClientAsyncReaderFactory< ::tari::rpc::PaymentReferenceResponse>::Create(channel_.get(), cq, rpcmethod_SearchPaymentReferencesViaOutputHash_, context, request, false, nullptr);
}
BaseNode::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[0],
@@ -949,11 +1011,11 @@ BaseNode::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[7],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< BaseNode::Service, ::tari::rpc::Empty, ::tari::rpc::StringValue, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
new ::grpc::internal::RpcMethodHandler< BaseNode::Service, ::tari::rpc::Empty, ::tari::rpc::BaseNodeGetVersionResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](BaseNode::Service* service,
::grpc::ServerContext* ctx,
const ::tari::rpc::Empty* req,
::tari::rpc::StringValue* resp) {
::tari::rpc::BaseNodeGetVersionResponse* resp) {
return service->GetVersion(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
@@ -1209,6 +1271,16 @@ BaseNode::Service::Service() {
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[33],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< BaseNode::Service, ::tari::rpc::GetValidatorNodeChangesRequest, ::tari::rpc::GetValidatorNodeChangesResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](BaseNode::Service* service,
::grpc::ServerContext* ctx,
const ::tari::rpc::GetValidatorNodeChangesRequest* req,
::tari::rpc::GetValidatorNodeChangesResponse* resp) {
return service->GetValidatorNodeChanges(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[34],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< BaseNode::Service, ::tari::rpc::GetShardKeyRequest, ::tari::rpc::GetShardKeyResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](BaseNode::Service* service,
::grpc::ServerContext* ctx,
@@ -1217,7 +1289,7 @@ BaseNode::Service::Service() {
return service->GetShardKey(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[34],
BaseNode_method_names[35],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< BaseNode::Service, ::tari::rpc::GetTemplateRegistrationsRequest, ::tari::rpc::GetTemplateRegistrationResponse>(
[](BaseNode::Service* service,
@@ -1227,7 +1299,7 @@ BaseNode::Service::Service() {
return service->GetTemplateRegistrations(ctx, req, writer);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[35],
BaseNode_method_names[36],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< BaseNode::Service, ::tari::rpc::GetSideChainUtxosRequest, ::tari::rpc::GetSideChainUtxosResponse>(
[](BaseNode::Service* service,
@@ -1237,7 +1309,7 @@ BaseNode::Service::Service() {
return service->GetSideChainUtxos(ctx, req, writer);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[36],
BaseNode_method_names[37],
::grpc::internal::RpcMethod::NORMAL_RPC,
new ::grpc::internal::RpcMethodHandler< BaseNode::Service, ::tari::rpc::GetNetworkStateRequest, ::tari::rpc::GetNetworkStateResponse, ::grpc::protobuf::MessageLite, ::grpc::protobuf::MessageLite>(
[](BaseNode::Service* service,
@@ -1246,6 +1318,26 @@ BaseNode::Service::Service() {
::tari::rpc::GetNetworkStateResponse* resp) {
return service->GetNetworkState(ctx, req, resp);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[38],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< BaseNode::Service, ::tari::rpc::SearchPaymentReferencesRequest, ::tari::rpc::PaymentReferenceResponse>(
[](BaseNode::Service* service,
::grpc::ServerContext* ctx,
const ::tari::rpc::SearchPaymentReferencesRequest* req,
::grpc::ServerWriter<::tari::rpc::PaymentReferenceResponse>* writer) {
return service->SearchPaymentReferences(ctx, req, writer);
}, this)));
AddMethod(new ::grpc::internal::RpcServiceMethod(
BaseNode_method_names[39],
::grpc::internal::RpcMethod::SERVER_STREAMING,
new ::grpc::internal::ServerStreamingHandler< BaseNode::Service, ::tari::rpc::FetchMatchingUtxosRequest, ::tari::rpc::PaymentReferenceResponse>(
[](BaseNode::Service* service,
::grpc::ServerContext* ctx,
const ::tari::rpc::FetchMatchingUtxosRequest* req,
::grpc::ServerWriter<::tari::rpc::PaymentReferenceResponse>* writer) {
return service->SearchPaymentReferencesViaOutputHash(ctx, req, writer);
}, this)));
}
BaseNode::Service::~Service() {
@@ -1300,7 +1392,7 @@ BaseNode::Service::~Service() {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status BaseNode::Service::GetVersion(::grpc::ServerContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::StringValue* response) {
::grpc::Status BaseNode::Service::GetVersion(::grpc::ServerContext* context, const ::tari::rpc::Empty* request, ::tari::rpc::BaseNodeGetVersionResponse* response) {
(void) context;
(void) request;
(void) response;
@@ -1482,6 +1574,13 @@ BaseNode::Service::~Service() {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status BaseNode::Service::GetValidatorNodeChanges(::grpc::ServerContext* context, const ::tari::rpc::GetValidatorNodeChangesRequest* request, ::tari::rpc::GetValidatorNodeChangesResponse* response) {
(void) context;
(void) request;
(void) response;
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status BaseNode::Service::GetShardKey(::grpc::ServerContext* context, const ::tari::rpc::GetShardKeyRequest* request, ::tari::rpc::GetShardKeyResponse* response) {
(void) context;
(void) request;
@@ -1510,7 +1609,22 @@ BaseNode::Service::~Service() {
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status BaseNode::Service::SearchPaymentReferences(::grpc::ServerContext* context, const ::tari::rpc::SearchPaymentReferencesRequest* request, ::grpc::ServerWriter< ::tari::rpc::PaymentReferenceResponse>* writer) {
(void) context;
(void) request;
(void) writer;
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
::grpc::Status BaseNode::Service::SearchPaymentReferencesViaOutputHash(::grpc::ServerContext* context, const ::tari::rpc::FetchMatchingUtxosRequest* request, ::grpc::ServerWriter< ::tari::rpc::PaymentReferenceResponse>* writer) {
(void) context;
(void) request;
(void) writer;
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, "");
}
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
File diff suppressed because it is too large Load Diff
+14397 -6144
View File
File diff suppressed because it is too large Load Diff
+12579 -6271
View File
File diff suppressed because it is too large Load Diff
+130 -7
View File
@@ -46,7 +46,7 @@ service BaseNode {
// Returns Block Fees
rpc GetBlockFees (BlockGroupRequest) returns (BlockGroupResponse);
// Get Version
rpc GetVersion(Empty) returns (StringValue);
rpc GetVersion(Empty) returns (BaseNodeGetVersionResponse);
// Check for new updates
rpc CheckForUpdates(Empty) returns (SoftwareUpdate);
// Get coins in circulation
@@ -95,11 +95,17 @@ service BaseNode {
rpc GetMempoolStats(Empty) returns (MempoolStatsResponse);
// Get VNs
rpc GetActiveValidatorNodes(GetActiveValidatorNodesRequest) returns (stream GetActiveValidatorNodesResponse);
rpc GetValidatorNodeChanges(GetValidatorNodeChangesRequest) returns (GetValidatorNodeChangesResponse);
rpc GetShardKey(GetShardKeyRequest) returns (GetShardKeyResponse);
// Get templates
rpc GetTemplateRegistrations(GetTemplateRegistrationsRequest) returns (stream GetTemplateRegistrationResponse);
rpc GetSideChainUtxos(GetSideChainUtxosRequest) returns (stream GetSideChainUtxosResponse);
rpc GetNetworkState(GetNetworkStateRequest) returns (GetNetworkStateResponse);
// PayRef (Payment Reference) lookup for block explorers and external services
rpc SearchPaymentReferences(SearchPaymentReferencesRequest) returns (stream PaymentReferenceResponse);
// PayRef (Payment Reference) lookup for block explorers and external services via output hash
rpc SearchPaymentReferencesViaOutputHash(FetchMatchingUtxosRequest) returns (stream PaymentReferenceResponse);
}
message GetAssetMetadataRequest {
@@ -174,6 +180,42 @@ enum BaseNodeState{
SYNC_FAILED = 6;
}
message ReadinessStatus {
enum State {
NOT_READY = 0;
STARTING_UP = 1;
// Database phase (10-19)
DATABASE_INITIALIZING = 10;
// Recovery phase (20-29)
RECOVERING_PREPARING = 20;
RECOVERING_REBUILDING = 21;
RECOVERING_REBUILDING_DATABASE = 22;
// Context building phase (30-39)
BUILDING_CONTEXT_BLOCKCHAIN = 32;
BUILDING_CONTEXT_BOOTSTRAP = 34;
READY = 100;
}
oneof status {
State state = 1;
MigrationProgress migration = 2;
}
uint64 timestamp = 6;
}
message MigrationProgress {
uint64 current_block = 1;
uint64 total_blocks = 2;
double progress_percentage = 3;
uint64 current_db_version = 4;
uint64 target_db_version = 5;
}
/// return type of GetNewBlockTemplate
message NewBlockTemplateResponse {
NewBlockTemplate new_block_template = 1;
@@ -226,9 +268,24 @@ message NetworkDifficultyResponse {
// A generic single value response for a specific height
message ValueAtHeightResponse {
// This is the total circulating token supply up to date ('mined_rewards + spendable_pre_mine').
uint64 circulating_supply = 1;
uint64 spendable_supply = 2;
// uint64 spendable_supply = 2; // No longer used
// This is the block height the values are valid for.
uint64 height = 3;
// This is the total mined rewards up to date, including time locked coinbase rewards that is not spendable.
uint64 mined_rewards = 4;
// This is the total spendable minded rewards up to date, which excludes all coinbase rewards that is
// still time locked.
uint64 spendable_rewards = 5;
// This is the total spendable pre-mine tokens released up to date, i.e. not time-locked anymore.
uint64 spendable_pre_mine = 6;
// This is the total spendable token supply up to date ('spendable_rewards + spendable_pre_mine').
uint64 total_spendable = 7;
// This is the total pre-mine tokens in the genesis block, time-locked and not time-locked.
uint64 total_pre_mine = 8;
// This is the total pre-mine tokens that are still time-locked up to date (`total_pre_mine - spendable_pre_mine`).
uint64 time_locked_pre_mine = 9;
}
// A generic uint value
@@ -236,9 +293,9 @@ message IntegerValue {
uint64 value = 1;
}
// A generic String value
message StringValue {
string value = 1;
message BaseNodeGetVersionResponse {
string version = 1;
uint32 network = 2;
}
/// GetBlockSize / GetBlockFees Request
@@ -482,21 +539,49 @@ message MempoolStatsResponse {
message GetActiveValidatorNodesRequest {
uint64 height = 1;
bytes sidechain_id = 2;
}
message GetActiveValidatorNodesResponse {
bytes shard_key = 1;
bytes public_key = 2;
bytes sidechain_id = 3;
}
message GetValidatorNodeChangesRequest {
uint64 epoch = 1;
bytes sidechain_id = 2;
}
message ValidatorNodeChange {
oneof change {
ValidatorNodeChangeAdd add = 1;
ValidatorNodeChangeRemove remove = 2;
}
}
message ValidatorNodeChangeAdd {
uint64 activation_epoch = 1;
ValidatorNodeRegistration registration = 2;
uint64 minimum_value_promise = 3;
bytes shard_key = 4;
}
message ValidatorNodeChangeRemove {
bytes public_key = 1;
}
message GetValidatorNodeChangesResponse {
repeated ValidatorNodeChange changes = 1;
}
message GetShardKeyRequest {
uint64 height = 1;
uint64 epoch = 1;
bytes public_key = 2;
}
message GetShardKeyResponse {
bytes shard_key = 1;
bool found = 2;
}
message GetTemplateRegistrationsRequest {
@@ -548,6 +633,8 @@ message GetNetworkStateResponse {
uint64 num_connections = 8;
//liveness results
repeated LivenessResult liveness_results = 9;
// readiness status
ReadinessStatus readiness_status = 11;
}
message LivenessResult{
@@ -559,3 +646,39 @@ message LivenessResult{
uint64 ping_latency = 3;
}
// PayRef (Payment Reference) search and lookup messages
// Request to search for outputs by payment reference
message SearchPaymentReferencesRequest {
// Payment reference as hex string (64 characters)
repeated string payment_reference_hex = 1;
repeated bytes payment_reference_bytes = 2;
// Optional: include spent outputs in results
bool include_spent = 3;
}
// Response containing payment reference match
message PaymentReferenceResponse {
// The payment reference that was found
string payment_reference_hex = 1;
// Block height where the output was mined
uint64 block_height = 2;
// Block hash where the output was mined
bytes block_hash = 3;
// Timestamp when the output was mined
uint64 mined_timestamp = 4;
// Output commitment (32 bytes)
bytes commitment = 5;
// Whether this output has been spent
bool is_spent = 6;
// Height where output was spent - will be 0 for unspent outputs as it is not applicable
uint64 spent_height = 7;
// Block hash where output was spent - will be empty for unspent outputs
bytes spent_block_hash = 8;
// Minimum value promise
uint64 min_value_promise = 9;
// Timestamp when the output was spent - will be 0 for unspent outputs as it is not applicable
uint64 spent_timestamp = 10;
// Output hash of the output
bytes output_hash = 11;
}
+2
View File
@@ -19,9 +19,11 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
+2
View File
@@ -46,6 +46,7 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -54,4 +55,5 @@ namespace rpc {
} // namespace tari
#include <grpcpp/ports_undef.inc>
#endif // GRPC_block_2eproto__INCLUDED
+1533 -986
View File
File diff suppressed because it is too large Load Diff
+1450 -1046
View File
File diff suppressed because it is too large Load Diff
+2
View File
@@ -19,9 +19,11 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
+2
View File
@@ -46,6 +46,7 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -54,4 +55,5 @@ namespace rpc {
} // namespace tari
#include <grpcpp/ports_undef.inc>
#endif // GRPC_network_2eproto__INCLUDED
File diff suppressed because it is too large Load Diff
+1550 -1188
View File
File diff suppressed because it is too large Load Diff
@@ -19,9 +19,11 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
@@ -46,6 +46,7 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -54,4 +55,5 @@ namespace rpc {
} // namespace tari
#include <grpcpp/ports_undef.inc>
#endif // GRPC_sidechain_5ftypes_2eproto__INCLUDED
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+96 -1
View File
@@ -26,16 +26,32 @@ package tari.rpc;
import "types.proto";
message SideChainFeature {
oneof side_chain_feature {
oneof feature {
ValidatorNodeRegistration validator_node_registration = 1;
TemplateRegistration template_registration = 2;
ConfidentialOutputData confidential_output = 3;
EvictionProof eviction_proof = 4;
ValidatorNodeExit validator_node_exit = 5;
}
SideChainId sidechain_id = 6;
}
message SideChainId {
bytes public_key = 1;
Signature knowledge_proof = 2;
}
message ValidatorNodeRegistration {
bytes public_key = 1;
Signature signature = 2;
bytes claim_public_key = 3;
uint64 max_epoch = 4;
}
message ValidatorNodeExit {
bytes public_key = 1;
Signature signature = 2;
uint64 max_epoch = 3;
}
message TemplateRegistration {
@@ -75,3 +91,82 @@ message BuildInfo {
string repo_url = 1;
bytes commit_hash = 2;
}
message EvictionProof {
CommitProof proof = 1;
}
message CommitProof {
oneof version {
CommitProofV1 v1 = 1;
}
}
message CommitProofV1 {
bytes command = 1;
SidechainBlockCommitProof commit_proof = 2;
bytes encoded_inclusion_proof = 3;
}
message SidechainBlockCommitProof {
SidechainBlockHeader header = 1;
repeated CommitProofElement proof_elements = 2;
}
message CommitProofElement {
oneof proof_element {
QuorumCertificate quorum_certificate = 1;
DummyChain dummy_chain = 2;
}
}
message DummyChain {
repeated ChainLink chain_links = 1;
}
message ChainLink {
bytes header_hash = 1;
bytes parent_id = 2;
}
message SidechainBlockHeader {
uint32 network = 1;
bytes parent_id = 2;
bytes justify_id = 3;
uint64 height = 4;
uint64 epoch = 5;
ShardGroup shard_group = 6;
bytes proposed_by = 7;
bytes state_merkle_root = 8;
bytes command_merkle_root = 9;
Signature signature = 11;
bytes metadata_hash = 10;
}
message ShardGroup {
uint32 start = 1;
uint32 end_inclusive = 2;
}
message EvictAtom {
bytes public_key = 1;
}
message QuorumCertificate {
bytes header_hash = 1;
bytes parent_id = 2;
repeated ValidatorSignature signatures = 3;
QuorumDecision decision = 4;
}
enum QuorumDecision {
Accept = 0;
Reject = 1;
}
message ValidatorSignature {
bytes public_key = 1;
Signature signature = 2;
}
+2
View File
@@ -19,9 +19,11 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
+2
View File
@@ -46,6 +46,7 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -54,4 +55,5 @@ namespace rpc {
} // namespace tari
#include <grpcpp/ports_undef.inc>
#endif // GRPC_transaction_2eproto__INCLUDED
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+4
View File
@@ -115,6 +115,10 @@ message TransactionOutput {
bytes encrypted_data = 10;
// The minimum value of the commitment that is proven by the range proof (in MicroMinotari)
uint64 minimum_value_promise = 11;
// Payment reference (PayRef) - 32-byte Blake2b hash of (block_hash || output_hash)
// This provides a unique, deterministic reference for the output that can be used
// for payment verification without revealing wallet ownership
bytes payment_reference = 12;
}
// Options for UTXOs
+2
View File
@@ -19,9 +19,11 @@
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
} // namespace tari
} // namespace rpc
#include <grpcpp/ports_undef.inc>
+2
View File
@@ -46,6 +46,7 @@
#include <grpcpp/support/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
#include <grpcpp/ports_def.inc>
namespace tari {
namespace rpc {
@@ -54,4 +55,5 @@ namespace rpc {
} // namespace tari
#include <grpcpp/ports_undef.inc>
#endif // GRPC_types_2eproto__INCLUDED
+2821 -1669
View File
File diff suppressed because it is too large Load Diff
+2009 -1402
View File
File diff suppressed because it is too large Load Diff
+2 -1
View File
@@ -126,7 +126,6 @@ message ConsensusConstants {
uint64 block_weight_kernels = 16;
uint64 pre_mine_value = 17;
uint64 max_script_byte_size = 18;
uint64 validator_node_validity_period = 19;
uint64 effective_from_height = 20;
Range valid_blockchain_version_range = 21;
uint64 max_randomx_seed_height = 22;
@@ -144,4 +143,6 @@ message ConsensusConstants {
uint64 inflation_bips = 35;
uint64 tail_epoch_length = 36;
uint64 max_block_coinbase_count = 37;
uint32 vn_registration_max_vns_initial_epoch = 38;
uint32 vn_registration_max_vns_per_epoch = 39;
}