129 lines
2.4 KiB
Protocol Buffer
129 lines
2.4 KiB
Protocol Buffer
// Copyright IBM Corp. All Rights Reserved.
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
syntax = "proto3";
|
|
|
|
|
|
option go_package = "github.com/SmartBFT-Go/consensus/smartbftprotos";
|
|
|
|
|
|
package smartbftprotos;
|
|
|
|
message Message {
|
|
oneof content {
|
|
PrePrepare pre_prepare = 1;
|
|
Prepare prepare = 2;
|
|
Commit commit = 3;
|
|
ViewChange view_change = 4;
|
|
SignedViewData view_data = 5;
|
|
NewView new_view = 6;
|
|
HeartBeat heart_beat = 7;
|
|
HeartBeatResponse heart_beat_response = 8;
|
|
StateTransferRequest state_transfer_request = 9;
|
|
StateTransferResponse state_transfer_response = 10;
|
|
}
|
|
}
|
|
|
|
message PrePrepare {
|
|
uint64 view = 1;
|
|
uint64 seq = 2;
|
|
Proposal proposal = 3;
|
|
repeated Signature prev_commit_signatures = 4;
|
|
}
|
|
|
|
message Prepare {
|
|
uint64 view = 1;
|
|
uint64 seq = 2;
|
|
string digest = 3;
|
|
bool assist = 4;
|
|
}
|
|
|
|
message ProposedRecord {
|
|
PrePrepare pre_prepare = 1;
|
|
Prepare prepare = 2;
|
|
}
|
|
|
|
message Commit {
|
|
uint64 view = 1;
|
|
uint64 seq = 2;
|
|
string digest = 3;
|
|
Signature signature = 4;
|
|
bool assist = 5;
|
|
}
|
|
|
|
message PreparesFrom {
|
|
repeated uint64 ids = 1;
|
|
}
|
|
|
|
message ViewChange {
|
|
uint64 next_view = 1;
|
|
string reason = 2;
|
|
}
|
|
|
|
message ViewData {
|
|
uint64 next_view = 1;
|
|
Proposal last_decision = 2;
|
|
repeated Signature last_decision_signatures = 3;
|
|
Proposal in_flight_proposal = 4;
|
|
bool in_flight_prepared = 5;
|
|
}
|
|
|
|
message SignedViewData {
|
|
bytes raw_view_data = 1;
|
|
uint64 signer = 2;
|
|
bytes signature = 3;
|
|
}
|
|
|
|
message NewView {
|
|
repeated SignedViewData signed_view_data = 2;
|
|
}
|
|
|
|
message HeartBeat {
|
|
uint64 view = 1;
|
|
uint64 seq = 2;
|
|
}
|
|
|
|
message HeartBeatResponse {
|
|
uint64 view = 1;
|
|
}
|
|
|
|
message Signature {
|
|
uint64 signer = 1;
|
|
bytes value = 2;
|
|
bytes msg = 3;
|
|
}
|
|
|
|
message Proposal {
|
|
bytes header = 1;
|
|
bytes payload = 2;
|
|
bytes metadata = 3;
|
|
uint64 verification_sequence = 4;
|
|
}
|
|
|
|
message ViewMetadata {
|
|
uint64 view_id = 1;
|
|
uint64 latest_sequence = 2;
|
|
uint64 decisions_in_view = 3;
|
|
repeated uint64 black_list = 4;
|
|
bytes prev_commit_signature_digest = 5;
|
|
}
|
|
|
|
message SavedMessage {
|
|
oneof content {
|
|
ProposedRecord proposed_record = 1;
|
|
Message commit = 2;
|
|
ViewMetadata new_view = 3;
|
|
ViewChange view_change = 4;
|
|
}
|
|
}
|
|
|
|
message StateTransferRequest {
|
|
|
|
}
|
|
|
|
message StateTransferResponse {
|
|
uint64 view_num = 1;
|
|
uint64 sequence = 2;
|
|
} |