syntax = "proto3"; package ethereum.beacon.p2p.v1; import "github.com/gogo/protobuf/gogoproto/gogo.proto"; message Status { bytes fork_digest = 1 [(gogoproto.moretags) = "ssz-size:\"4\""]; bytes finalized_root = 2 [(gogoproto.moretags) = "ssz-size:\"32\""]; uint64 finalized_epoch = 3; bytes head_root = 4 [(gogoproto.moretags) = "ssz-size:\"32\""]; uint64 head_slot = 5; } message BeaconBlocksByRangeRequest { uint64 start_slot = 1; uint64 count = 2; uint64 step = 3; } message BeaconBlocksByRootRequest { repeated bytes block_roots = 1 [(gogoproto.moretags) = "ssz-size:\"?,32\" ssz-max:\"1024\""]; } message ErrorResponse { bytes message = 1 [(gogoproto.moretags) = "ssz-max:\"256\""]; } message ENRForkID { bytes current_fork_digest = 1 [(gogoproto.moretags) = "ssz-size:\"4\""]; bytes next_fork_version = 2 [(gogoproto.moretags) = "ssz-size:\"4\""]; uint64 next_fork_epoch = 3; } /* Spec Definition: MetaData ( seq_number: uint64 attnets: Bitvector[ATTESTATION_SUBNET_COUNT] ) */ message MetaData { uint64 seq_number =1; bytes attnets = 2 [(gogoproto.moretags) = "ssz-size:\"8\"", (gogoproto.casttype) = "github.com/prysmaticlabs/go-bitfield.Bitvector64"]; }