erigon-pulse/cmd/headers/proto/control.proto
ledgerwatch 7554428884
POC of header downloader - splitting into 2 processes: sentry + downloader (via gRPC) (#1291)
* Splitting sentry and downloader - the beginning

* A bit more

* More on sentry

* More gRPC

* Sentry and downloader separated

* Update binding for stable version of grpc

* Better bufferSize flag

* Fix lint

* Send pelanties

* Fix lint

* Remove hard-coded tips on connect

* Tidy the logs a bit

* Deal with hardTips on Recovery

* Print hard tips

* Hide empty anchors

* Request headers after receiving a message

* Better waking up

* Print hard-coded block numbers

* Print outgoing requests

* Debug logging

* In the middle protection

* Sentry not to lose peers when core disconnects
2020-10-25 22:05:37 +00:00

39 lines
797 B
Protocol Buffer

syntax = "proto3";
import "google/protobuf/empty.proto";
package proto;
option go_package = "./proto;proto";
option java_multiple_files = true;
option java_package = "io.turbo-geth.p2p";
option java_outer_classname = "P2pControl";
enum InboundMessageId {
NewBlockHashes = 0; BlockHeaders = 1; BlockBodies = 2; NewBlock = 3;
}
message InboundMessage {
InboundMessageId id = 1;
bytes data = 2;
bytes peer_id = 3;
}
message Forks {
bytes genesis = 1;
repeated uint64 passed = 2;
uint64 next = 3;
}
message StatusData {
uint64 network_id = 1;
bytes total_difficulty = 2;
bytes best_hash = 3;
Forks fork_data = 4;
}
service Control {
rpc ForwardInboundMessage(InboundMessage) returns(google.protobuf.Empty);
rpc GetStatus(google.protobuf.Empty) returns(StatusData);
}