proto: Structure Protos for Beacon and for Sharding (#359)

This commit is contained in:
Raul Jordan 2018-07-31 13:54:45 -05:00 committed by GitHub
parent f3b3712916
commit 13a011ce5f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 616 additions and 528 deletions

View File

@ -13,7 +13,7 @@ go_library(
"//beacon-chain/powchain:go_default_library",
"//beacon-chain/types:go_default_library",
"//beacon-chain/utils:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/database:go_default_library",
"@com_github_ethereum_go_ethereum//common:go_default_library",
"@com_github_ethereum_go_ethereum//ethdb:go_default_library",
@ -34,7 +34,7 @@ go_test(
"//beacon-chain/powchain:go_default_library",
"//beacon-chain/types:go_default_library",
"//beacon-chain/utils:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/database:go_default_library",
"@com_github_ethereum_go_ethereum//common:go_default_library",
"@com_github_ethereum_go_ethereum//core/types:go_default_library",

View File

@ -14,7 +14,7 @@ import (
"github.com/prysmaticlabs/prysm/beacon-chain/params"
"github.com/prysmaticlabs/prysm/beacon-chain/types"
"github.com/prysmaticlabs/prysm/beacon-chain/utils"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/sirupsen/logrus"
)

View File

@ -14,7 +14,7 @@ import (
"github.com/prysmaticlabs/prysm/beacon-chain/params"
"github.com/prysmaticlabs/prysm/beacon-chain/types"
"github.com/prysmaticlabs/prysm/beacon-chain/utils"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/database"
logTest "github.com/sirupsen/logrus/hooks/test"
)

View File

@ -7,7 +7,7 @@ go_library(
visibility = ["//beacon-chain:__subpackages__"],
deps = [
"//beacon-chain/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_golang_protobuf//ptypes:go_default_library",
"@com_github_sirupsen_logrus//:go_default_library",
@ -20,7 +20,7 @@ go_test(
embed = [":go_default_library"],
deps = [
"//beacon-chain/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"//shared/testutil:go_default_library",
"@com_github_ethereum_go_ethereum//common:go_default_library",

View File

@ -10,7 +10,7 @@ import (
"github.com/prysmaticlabs/prysm/beacon-chain/types"
"github.com/prysmaticlabs/prysm/shared/p2p"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/sirupsen/logrus"
)

View File

@ -9,7 +9,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/event"
"github.com/prysmaticlabs/prysm/beacon-chain/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/p2p"
"github.com/prysmaticlabs/prysm/shared/testutil"
logTest "github.com/sirupsen/logrus/hooks/test"

View File

@ -7,7 +7,7 @@ go_library(
visibility = ["//beacon-chain:__subpackages__"],
deps = [
"//beacon-chain/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_sirupsen_logrus//:go_default_library",
],
@ -19,7 +19,7 @@ go_test(
embed = [":go_default_library"],
deps = [
"//beacon-chain/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"//shared/testutil:go_default_library",
"@com_github_ethereum_go_ethereum//event:go_default_library",

View File

@ -5,7 +5,7 @@ import (
"fmt"
"github.com/prysmaticlabs/prysm/beacon-chain/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/p2p"
"github.com/sirupsen/logrus"
)

View File

@ -6,7 +6,7 @@ import (
"github.com/ethereum/go-ethereum/event"
"github.com/prysmaticlabs/prysm/beacon-chain/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/p2p"
"github.com/prysmaticlabs/prysm/shared/testutil"
logTest "github.com/sirupsen/logrus/hooks/test"

View File

@ -10,7 +10,7 @@ go_library(
importpath = "github.com/prysmaticlabs/prysm/beacon-chain/types",
visibility = ["//beacon-chain:__subpackages__"],
deps = [
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_ethereum_go_ethereum//:go_default_library",
"@com_github_ethereum_go_ethereum//common:go_default_library",

View File

@ -8,7 +8,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/golang/protobuf/proto"
"github.com/golang/protobuf/ptypes"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"golang.org/x/crypto/blake2b"
)

View File

@ -3,7 +3,7 @@ package types
import (
"github.com/ethereum/go-ethereum/common"
"github.com/gogo/protobuf/proto"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
"golang.org/x/crypto/blake2b"
)

View File

@ -14,7 +14,7 @@ go_library(
"//client/syncer:go_default_library",
"//client/txpool:go_default_library",
"//client/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared/database:go_default_library",
"//shared/legacyutil:go_default_library",
"//shared/p2p:go_default_library",
@ -37,7 +37,7 @@ go_test(
"//client/params:go_default_library",
"//client/syncer:go_default_library",
"//client/txpool:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared/database:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_ethereum_go_ethereum//accounts/abi/bind:go_default_library",

View File

@ -13,7 +13,7 @@ import (
"github.com/prysmaticlabs/prysm/client/syncer"
"github.com/prysmaticlabs/prysm/client/txpool"
"github.com/prysmaticlabs/prysm/client/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/database"
"github.com/prysmaticlabs/prysm/shared/legacyutil"
"github.com/prysmaticlabs/prysm/shared/p2p"

View File

@ -5,6 +5,7 @@ import (
"fmt"
"math"
"time"
//"math"
"math/big"
"testing"
@ -17,7 +18,7 @@ import (
"github.com/prysmaticlabs/prysm/client/params"
"github.com/prysmaticlabs/prysm/client/syncer"
"github.com/prysmaticlabs/prysm/client/txpool"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/database"
"github.com/prysmaticlabs/prysm/shared/p2p"
logTest "github.com/sirupsen/logrus/hooks/test"

View File

@ -9,7 +9,7 @@ go_library(
"//client/mainchain:go_default_library",
"//client/params:go_default_library",
"//client/syncer:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_sirupsen_logrus//:go_default_library",
],

View File

@ -12,7 +12,7 @@ import (
"github.com/prysmaticlabs/prysm/client/syncer"
"github.com/prysmaticlabs/prysm/shared/p2p"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/sirupsen/logrus"
)

View File

@ -12,7 +12,7 @@ go_library(
"//client/mainchain:go_default_library",
"//client/params:go_default_library",
"//client/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared/database:go_default_library",
"//shared/p2p:go_default_library",
"@com_github_ethereum_go_ethereum//accounts/abi/bind:go_default_library",
@ -35,7 +35,7 @@ go_test(
"//client/mainchain:go_default_library",
"//client/params:go_default_library",
"//client/types:go_default_library",
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared:go_default_library",
"//shared/database:go_default_library",
"//shared/p2p:go_default_library",

View File

@ -8,7 +8,7 @@ import (
"github.com/ethereum/go-ethereum/common"
"github.com/prysmaticlabs/prysm/client/mainchain"
"github.com/prysmaticlabs/prysm/client/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/p2p"
"github.com/sirupsen/logrus"
)

View File

@ -18,7 +18,7 @@ import (
"github.com/prysmaticlabs/prysm/client/contracts"
shardparams "github.com/prysmaticlabs/prysm/client/params"
shardingTypes "github.com/prysmaticlabs/prysm/client/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/p2p"
)

View File

@ -10,7 +10,7 @@ import (
"github.com/prysmaticlabs/prysm/client/mainchain"
"github.com/prysmaticlabs/prysm/client/params"
"github.com/prysmaticlabs/prysm/client/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared/database"
"github.com/prysmaticlabs/prysm/shared/p2p"
"github.com/sirupsen/logrus"

View File

@ -11,7 +11,7 @@ import (
"github.com/prysmaticlabs/prysm/client/mainchain"
"github.com/prysmaticlabs/prysm/client/params"
"github.com/prysmaticlabs/prysm/client/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/prysmaticlabs/prysm/shared"
"github.com/prysmaticlabs/prysm/shared/database"
"github.com/prysmaticlabs/prysm/shared/p2p"

17
proto/README.md Normal file
View File

@ -0,0 +1,17 @@
# Ethereum 2.0 Protocol Buffers
This package defines common protobuf messages and services used by Ethereum 2.0 clients. Following the structure of:
```
proto/
beacon/
p2p/
v1/
rpc/
v1/
sharding/
p2p/
v1/
```
We specify messages available for p2p communication common to beacon chain nodes and sharding clients.

View File

@ -0,0 +1,23 @@
load("@io_bazel_rules_go//go:def.bzl", "go_library")
load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
proto_library(
name = "ethereum_beacon_p2p_v1_proto",
srcs = ["messages.proto"],
visibility = ["//visibility:public"],
deps = ["@com_google_protobuf//:timestamp_proto"],
)
go_proto_library(
name = "ethereum_beacon_p2p_v1_go_proto",
importpath = "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1",
proto = ":ethereum_beacon_p2p_v1_proto",
visibility = ["//visibility:public"],
)
go_library(
name = "go_default_library",
embed = [":ethereum_beacon_p2p_v1_go_proto"],
importpath = "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1",
visibility = ["//visibility:public"],
)

View File

@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: messages.proto
// source: proto/beacon/p2p/v1/messages.proto
package ethereum_messages_v1
package ethereum_beacon_p2p_v1
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
@ -19,44 +19,6 @@ var _ = math.Inf
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
type Topic int32
const (
Topic_UNKNOWN Topic = 0
Topic_COLLATION_BODY_REQUEST Topic = 1
Topic_COLLATION_BODY_RESPONSE Topic = 2
Topic_TRANSACTIONS Topic = 3
Topic_BEACON_BLOCK_HASH_ANNOUNCE Topic = 4
Topic_BEACON_BLOCK_REQUEST Topic = 5
Topic_BEACON_BLOCK_RESPONSE Topic = 6
)
var Topic_name = map[int32]string{
0: "UNKNOWN",
1: "COLLATION_BODY_REQUEST",
2: "COLLATION_BODY_RESPONSE",
3: "TRANSACTIONS",
4: "BEACON_BLOCK_HASH_ANNOUNCE",
5: "BEACON_BLOCK_REQUEST",
6: "BEACON_BLOCK_RESPONSE",
}
var Topic_value = map[string]int32{
"UNKNOWN": 0,
"COLLATION_BODY_REQUEST": 1,
"COLLATION_BODY_RESPONSE": 2,
"TRANSACTIONS": 3,
"BEACON_BLOCK_HASH_ANNOUNCE": 4,
"BEACON_BLOCK_REQUEST": 5,
"BEACON_BLOCK_RESPONSE": 6,
}
func (x Topic) String() string {
return proto.EnumName(Topic_name, int32(x))
}
func (Topic) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{0}
}
type BeaconBlockHashAnnounce struct {
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
@ -68,7 +30,7 @@ func (m *BeaconBlockHashAnnounce) Reset() { *m = BeaconBlockHashAnnounce
func (m *BeaconBlockHashAnnounce) String() string { return proto.CompactTextString(m) }
func (*BeaconBlockHashAnnounce) ProtoMessage() {}
func (*BeaconBlockHashAnnounce) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{0}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{0}
}
func (m *BeaconBlockHashAnnounce) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BeaconBlockHashAnnounce.Unmarshal(m, b)
@ -106,7 +68,7 @@ func (m *BeaconBlockRequest) Reset() { *m = BeaconBlockRequest{} }
func (m *BeaconBlockRequest) String() string { return proto.CompactTextString(m) }
func (*BeaconBlockRequest) ProtoMessage() {}
func (*BeaconBlockRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{1}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{1}
}
func (m *BeaconBlockRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BeaconBlockRequest.Unmarshal(m, b)
@ -153,7 +115,7 @@ func (m *BeaconBlockResponse) Reset() { *m = BeaconBlockResponse{} }
func (m *BeaconBlockResponse) String() string { return proto.CompactTextString(m) }
func (*BeaconBlockResponse) ProtoMessage() {}
func (*BeaconBlockResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{2}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{2}
}
func (m *BeaconBlockResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BeaconBlockResponse.Unmarshal(m, b)
@ -254,7 +216,7 @@ func (m *CrystallizedStateHashAnnounce) Reset() { *m = CrystallizedState
func (m *CrystallizedStateHashAnnounce) String() string { return proto.CompactTextString(m) }
func (*CrystallizedStateHashAnnounce) ProtoMessage() {}
func (*CrystallizedStateHashAnnounce) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{3}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{3}
}
func (m *CrystallizedStateHashAnnounce) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CrystallizedStateHashAnnounce.Unmarshal(m, b)
@ -292,7 +254,7 @@ func (m *CrystallizedStateRequest) Reset() { *m = CrystallizedStateReque
func (m *CrystallizedStateRequest) String() string { return proto.CompactTextString(m) }
func (*CrystallizedStateRequest) ProtoMessage() {}
func (*CrystallizedStateRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{4}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{4}
}
func (m *CrystallizedStateRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CrystallizedStateRequest.Unmarshal(m, b)
@ -342,7 +304,7 @@ func (m *CrystallizedStateResponse) Reset() { *m = CrystallizedStateResp
func (m *CrystallizedStateResponse) String() string { return proto.CompactTextString(m) }
func (*CrystallizedStateResponse) ProtoMessage() {}
func (*CrystallizedStateResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{5}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{5}
}
func (m *CrystallizedStateResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CrystallizedStateResponse.Unmarshal(m, b)
@ -464,7 +426,7 @@ func (m *ActiveStateHashAnnounce) Reset() { *m = ActiveStateHashAnnounce
func (m *ActiveStateHashAnnounce) String() string { return proto.CompactTextString(m) }
func (*ActiveStateHashAnnounce) ProtoMessage() {}
func (*ActiveStateHashAnnounce) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{6}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{6}
}
func (m *ActiveStateHashAnnounce) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ActiveStateHashAnnounce.Unmarshal(m, b)
@ -502,7 +464,7 @@ func (m *ActiveStateRequest) Reset() { *m = ActiveStateRequest{} }
func (m *ActiveStateRequest) String() string { return proto.CompactTextString(m) }
func (*ActiveStateRequest) ProtoMessage() {}
func (*ActiveStateRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{7}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{7}
}
func (m *ActiveStateRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ActiveStateRequest.Unmarshal(m, b)
@ -541,7 +503,7 @@ func (m *ActiveStateResponse) Reset() { *m = ActiveStateResponse{} }
func (m *ActiveStateResponse) String() string { return proto.CompactTextString(m) }
func (*ActiveStateResponse) ProtoMessage() {}
func (*ActiveStateResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{8}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{8}
}
func (m *ActiveStateResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ActiveStateResponse.Unmarshal(m, b)
@ -589,7 +551,7 @@ func (m *AggregateVote) Reset() { *m = AggregateVote{} }
func (m *AggregateVote) String() string { return proto.CompactTextString(m) }
func (*AggregateVote) ProtoMessage() {}
func (*AggregateVote) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{9}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{9}
}
func (m *AggregateVote) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AggregateVote.Unmarshal(m, b)
@ -637,76 +599,6 @@ func (m *AggregateVote) GetAggregateSig() []uint32 {
return nil
}
type CollationBodyRequest struct {
ShardId uint64 `protobuf:"varint,1,opt,name=shard_id,json=shardId,proto3" json:"shard_id,omitempty"`
Period uint64 `protobuf:"varint,2,opt,name=period,proto3" json:"period,omitempty"`
ChunkRoot []byte `protobuf:"bytes,3,opt,name=chunk_root,json=chunkRoot,proto3" json:"chunk_root,omitempty"`
ProposerAddress []byte `protobuf:"bytes,4,opt,name=proposer_address,json=proposerAddress,proto3" json:"proposer_address,omitempty"`
Signature []byte `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollationBodyRequest) Reset() { *m = CollationBodyRequest{} }
func (m *CollationBodyRequest) String() string { return proto.CompactTextString(m) }
func (*CollationBodyRequest) ProtoMessage() {}
func (*CollationBodyRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{10}
}
func (m *CollationBodyRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollationBodyRequest.Unmarshal(m, b)
}
func (m *CollationBodyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollationBodyRequest.Marshal(b, m, deterministic)
}
func (dst *CollationBodyRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollationBodyRequest.Merge(dst, src)
}
func (m *CollationBodyRequest) XXX_Size() int {
return xxx_messageInfo_CollationBodyRequest.Size(m)
}
func (m *CollationBodyRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CollationBodyRequest.DiscardUnknown(m)
}
var xxx_messageInfo_CollationBodyRequest proto.InternalMessageInfo
func (m *CollationBodyRequest) GetShardId() uint64 {
if m != nil {
return m.ShardId
}
return 0
}
func (m *CollationBodyRequest) GetPeriod() uint64 {
if m != nil {
return m.Period
}
return 0
}
func (m *CollationBodyRequest) GetChunkRoot() []byte {
if m != nil {
return m.ChunkRoot
}
return nil
}
func (m *CollationBodyRequest) GetProposerAddress() []byte {
if m != nil {
return m.ProposerAddress
}
return nil
}
func (m *CollationBodyRequest) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
type ValidatorRecord struct {
PublicKey uint64 `protobuf:"varint,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
WithdrawalShard uint64 `protobuf:"varint,2,opt,name=withdrawal_shard,json=withdrawalShard,proto3" json:"withdrawal_shard,omitempty"`
@ -723,7 +615,7 @@ func (m *ValidatorRecord) Reset() { *m = ValidatorRecord{} }
func (m *ValidatorRecord) String() string { return proto.CompactTextString(m) }
func (*ValidatorRecord) ProtoMessage() {}
func (*ValidatorRecord) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{11}
return fileDescriptor_messages_e1d33f8757fc0f25, []int{10}
}
func (m *ValidatorRecord) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ValidatorRecord.Unmarshal(m, b)
@ -785,294 +677,84 @@ func (m *ValidatorRecord) GetSwitchDynasty() uint64 {
return 0
}
type CollationBodyResponse struct {
HeaderHash []byte `protobuf:"bytes,1,opt,name=header_hash,json=headerHash,proto3" json:"header_hash,omitempty"`
Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollationBodyResponse) Reset() { *m = CollationBodyResponse{} }
func (m *CollationBodyResponse) String() string { return proto.CompactTextString(m) }
func (*CollationBodyResponse) ProtoMessage() {}
func (*CollationBodyResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{12}
}
func (m *CollationBodyResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollationBodyResponse.Unmarshal(m, b)
}
func (m *CollationBodyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollationBodyResponse.Marshal(b, m, deterministic)
}
func (dst *CollationBodyResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollationBodyResponse.Merge(dst, src)
}
func (m *CollationBodyResponse) XXX_Size() int {
return xxx_messageInfo_CollationBodyResponse.Size(m)
}
func (m *CollationBodyResponse) XXX_DiscardUnknown() {
xxx_messageInfo_CollationBodyResponse.DiscardUnknown(m)
}
var xxx_messageInfo_CollationBodyResponse proto.InternalMessageInfo
func (m *CollationBodyResponse) GetHeaderHash() []byte {
if m != nil {
return m.HeaderHash
}
return nil
}
func (m *CollationBodyResponse) GetBody() []byte {
if m != nil {
return m.Body
}
return nil
}
type Transaction struct {
Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
GasPrice uint64 `protobuf:"varint,2,opt,name=gas_price,json=gasPrice,proto3" json:"gas_price,omitempty"`
GasLimit uint64 `protobuf:"varint,3,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"`
Recipient []byte `protobuf:"bytes,4,opt,name=recipient,proto3" json:"recipient,omitempty"`
Value uint64 `protobuf:"varint,5,opt,name=value,proto3" json:"value,omitempty"`
Input []byte `protobuf:"bytes,6,opt,name=input,proto3" json:"input,omitempty"`
Signature *Signature `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Transaction) Reset() { *m = Transaction{} }
func (m *Transaction) String() string { return proto.CompactTextString(m) }
func (*Transaction) ProtoMessage() {}
func (*Transaction) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{13}
}
func (m *Transaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Transaction.Unmarshal(m, b)
}
func (m *Transaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Transaction.Marshal(b, m, deterministic)
}
func (dst *Transaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_Transaction.Merge(dst, src)
}
func (m *Transaction) XXX_Size() int {
return xxx_messageInfo_Transaction.Size(m)
}
func (m *Transaction) XXX_DiscardUnknown() {
xxx_messageInfo_Transaction.DiscardUnknown(m)
}
var xxx_messageInfo_Transaction proto.InternalMessageInfo
func (m *Transaction) GetNonce() uint64 {
if m != nil {
return m.Nonce
}
return 0
}
func (m *Transaction) GetGasPrice() uint64 {
if m != nil {
return m.GasPrice
}
return 0
}
func (m *Transaction) GetGasLimit() uint64 {
if m != nil {
return m.GasLimit
}
return 0
}
func (m *Transaction) GetRecipient() []byte {
if m != nil {
return m.Recipient
}
return nil
}
func (m *Transaction) GetValue() uint64 {
if m != nil {
return m.Value
}
return 0
}
func (m *Transaction) GetInput() []byte {
if m != nil {
return m.Input
}
return nil
}
func (m *Transaction) GetSignature() *Signature {
if m != nil {
return m.Signature
}
return nil
}
type Signature struct {
V uint64 `protobuf:"varint,1,opt,name=v,proto3" json:"v,omitempty"`
R uint64 `protobuf:"varint,2,opt,name=r,proto3" json:"r,omitempty"`
S uint64 `protobuf:"varint,3,opt,name=s,proto3" json:"s,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Signature) Reset() { *m = Signature{} }
func (m *Signature) String() string { return proto.CompactTextString(m) }
func (*Signature) ProtoMessage() {}
func (*Signature) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_7e3c5d5de878ef23, []int{14}
}
func (m *Signature) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Signature.Unmarshal(m, b)
}
func (m *Signature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Signature.Marshal(b, m, deterministic)
}
func (dst *Signature) XXX_Merge(src proto.Message) {
xxx_messageInfo_Signature.Merge(dst, src)
}
func (m *Signature) XXX_Size() int {
return xxx_messageInfo_Signature.Size(m)
}
func (m *Signature) XXX_DiscardUnknown() {
xxx_messageInfo_Signature.DiscardUnknown(m)
}
var xxx_messageInfo_Signature proto.InternalMessageInfo
func (m *Signature) GetV() uint64 {
if m != nil {
return m.V
}
return 0
}
func (m *Signature) GetR() uint64 {
if m != nil {
return m.R
}
return 0
}
func (m *Signature) GetS() uint64 {
if m != nil {
return m.S
}
return 0
func init() {
proto.RegisterType((*BeaconBlockHashAnnounce)(nil), "ethereum.beacon.p2p.v1.BeaconBlockHashAnnounce")
proto.RegisterType((*BeaconBlockRequest)(nil), "ethereum.beacon.p2p.v1.BeaconBlockRequest")
proto.RegisterType((*BeaconBlockResponse)(nil), "ethereum.beacon.p2p.v1.BeaconBlockResponse")
proto.RegisterType((*CrystallizedStateHashAnnounce)(nil), "ethereum.beacon.p2p.v1.CrystallizedStateHashAnnounce")
proto.RegisterType((*CrystallizedStateRequest)(nil), "ethereum.beacon.p2p.v1.CrystallizedStateRequest")
proto.RegisterType((*CrystallizedStateResponse)(nil), "ethereum.beacon.p2p.v1.CrystallizedStateResponse")
proto.RegisterType((*ActiveStateHashAnnounce)(nil), "ethereum.beacon.p2p.v1.ActiveStateHashAnnounce")
proto.RegisterType((*ActiveStateRequest)(nil), "ethereum.beacon.p2p.v1.ActiveStateRequest")
proto.RegisterType((*ActiveStateResponse)(nil), "ethereum.beacon.p2p.v1.ActiveStateResponse")
proto.RegisterType((*AggregateVote)(nil), "ethereum.beacon.p2p.v1.AggregateVote")
proto.RegisterType((*ValidatorRecord)(nil), "ethereum.beacon.p2p.v1.ValidatorRecord")
}
func init() {
proto.RegisterType((*BeaconBlockHashAnnounce)(nil), "ethereum.messages.v1.BeaconBlockHashAnnounce")
proto.RegisterType((*BeaconBlockRequest)(nil), "ethereum.messages.v1.BeaconBlockRequest")
proto.RegisterType((*BeaconBlockResponse)(nil), "ethereum.messages.v1.BeaconBlockResponse")
proto.RegisterType((*CrystallizedStateHashAnnounce)(nil), "ethereum.messages.v1.CrystallizedStateHashAnnounce")
proto.RegisterType((*CrystallizedStateRequest)(nil), "ethereum.messages.v1.CrystallizedStateRequest")
proto.RegisterType((*CrystallizedStateResponse)(nil), "ethereum.messages.v1.CrystallizedStateResponse")
proto.RegisterType((*ActiveStateHashAnnounce)(nil), "ethereum.messages.v1.ActiveStateHashAnnounce")
proto.RegisterType((*ActiveStateRequest)(nil), "ethereum.messages.v1.ActiveStateRequest")
proto.RegisterType((*ActiveStateResponse)(nil), "ethereum.messages.v1.ActiveStateResponse")
proto.RegisterType((*AggregateVote)(nil), "ethereum.messages.v1.AggregateVote")
proto.RegisterType((*CollationBodyRequest)(nil), "ethereum.messages.v1.CollationBodyRequest")
proto.RegisterType((*ValidatorRecord)(nil), "ethereum.messages.v1.ValidatorRecord")
proto.RegisterType((*CollationBodyResponse)(nil), "ethereum.messages.v1.CollationBodyResponse")
proto.RegisterType((*Transaction)(nil), "ethereum.messages.v1.Transaction")
proto.RegisterType((*Signature)(nil), "ethereum.messages.v1.Signature")
proto.RegisterEnum("ethereum.messages.v1.Topic", Topic_name, Topic_value)
proto.RegisterFile("proto/beacon/p2p/v1/messages.proto", fileDescriptor_messages_e1d33f8757fc0f25)
}
func init() { proto.RegisterFile("messages.proto", fileDescriptor_messages_7e3c5d5de878ef23) }
var fileDescriptor_messages_7e3c5d5de878ef23 = []byte{
// 1284 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0xe1, 0x6e, 0x13, 0x47,
0x10, 0xee, 0x11, 0x27, 0xc1, 0x13, 0x3b, 0x71, 0x36, 0x09, 0xb9, 0x84, 0x52, 0x52, 0x53, 0x54,
0x17, 0x84, 0x69, 0x41, 0xa0, 0xaa, 0x52, 0x7f, 0x38, 0x26, 0x15, 0x94, 0xc8, 0xa6, 0xe7, 0x00,
0xea, 0xaf, 0xd3, 0xfa, 0x6e, 0xec, 0xdb, 0xe6, 0x7c, 0x7b, 0xec, 0xee, 0x19, 0xcc, 0x03, 0xf4,
0x39, 0xfa, 0x0a, 0x95, 0xfa, 0x22, 0x7d, 0x89, 0x3e, 0x43, 0x7f, 0x56, 0xbb, 0x7b, 0x67, 0x9f,
0x43, 0x44, 0xc5, 0x1f, 0xcb, 0xfb, 0x7d, 0xdf, 0xcc, 0xce, 0xce, 0xce, 0xcc, 0x1e, 0x6c, 0x4e,
0x50, 0x4a, 0x3a, 0x46, 0xd9, 0x4e, 0x05, 0x57, 0x9c, 0xec, 0xa2, 0x8a, 0x50, 0x60, 0x36, 0x69,
0xcf, 0x89, 0xe9, 0x77, 0x87, 0x37, 0xc7, 0x9c, 0x8f, 0x63, 0xbc, 0x6f, 0x34, 0xc3, 0x6c, 0x74,
0x5f, 0xb1, 0x09, 0x4a, 0x45, 0x27, 0xa9, 0x35, 0x6b, 0xde, 0x83, 0xfd, 0x63, 0xa4, 0x01, 0x4f,
0x8e, 0x63, 0x1e, 0x9c, 0x3f, 0xa5, 0x32, 0xea, 0x24, 0x09, 0xcf, 0x92, 0x00, 0x09, 0x81, 0x4a,
0x44, 0x65, 0xe4, 0x3a, 0x47, 0x4e, 0xab, 0xe6, 0x99, 0xff, 0xcd, 0x16, 0x90, 0x92, 0xdc, 0xc3,
0x37, 0x19, 0x4a, 0x75, 0xa9, 0xf2, 0xf7, 0x0a, 0xec, 0x2c, 0x49, 0x65, 0xca, 0x13, 0x89, 0xe4,
0x26, 0x6c, 0xa4, 0x54, 0x60, 0xa2, 0xfc, 0x92, 0x09, 0x58, 0x48, 0x6f, 0xaf, 0x05, 0x32, 0xe6,
0xca, 0x4f, 0xb2, 0xc9, 0x10, 0x85, 0x7b, 0xe5, 0xc8, 0x69, 0x55, 0x3c, 0xd0, 0x50, 0xcf, 0x20,
0xe4, 0x16, 0xd4, 0x05, 0x4d, 0x42, 0xca, 0x7d, 0x81, 0x53, 0xa4, 0xb1, 0xbb, 0x62, 0x7c, 0xd4,
0x2c, 0xe8, 0x19, 0x8c, 0xdc, 0x87, 0x1d, 0xaa, 0x94, 0x3e, 0xaa, 0x62, 0x3c, 0xf1, 0x87, 0x4c,
0x4d, 0xa8, 0x3c, 0x77, 0x2b, 0x46, 0x4a, 0x4a, 0xd4, 0xb1, 0x65, 0xc8, 0x0f, 0x70, 0x50, 0x36,
0xa0, 0xe3, 0xb1, 0xc0, 0x31, 0x55, 0xe8, 0x4b, 0x36, 0x76, 0x57, 0x8f, 0x56, 0x5a, 0x75, 0x6f,
0xbf, 0x24, 0xe8, 0x14, 0xfc, 0x80, 0x8d, 0xc9, 0x6b, 0xd8, 0x93, 0x11, 0x15, 0x61, 0xc9, 0x6a,
0xca, 0x15, 0x4a, 0x77, 0xed, 0x68, 0xa5, 0xb5, 0xf1, 0xe0, 0x56, 0xfb, 0xb2, 0xbb, 0x69, 0xcf,
0x5d, 0xbc, 0xe2, 0x0a, 0xbd, 0x1d, 0xe3, 0x61, 0x09, 0x93, 0xe4, 0x2b, 0xd8, 0x9c, 0x50, 0x96,
0xf8, 0x41, 0xa4, 0x7f, 0x05, 0x8e, 0xdc, 0x75, 0x7b, 0x56, 0x8d, 0x76, 0x35, 0xe8, 0xe1, 0x88,
0xdc, 0x81, 0x6d, 0x1a, 0x28, 0x36, 0x45, 0x5f, 0x07, 0x87, 0x36, 0xb1, 0x57, 0x8d, 0x70, 0xcb,
0x12, 0x03, 0x8d, 0x9b, 0xec, 0x3e, 0x86, 0xfd, 0x40, 0xcc, 0xa4, 0xa2, 0x71, 0xcc, 0xde, 0x63,
0x58, 0xb6, 0xa8, 0x1a, 0x8b, 0xbd, 0x32, 0xbd, 0xb0, 0xfb, 0x1e, 0xaa, 0xf3, 0xd2, 0x71, 0xe1,
0xc8, 0x69, 0x6d, 0x3c, 0x38, 0x6c, 0xdb, 0xe2, 0x6a, 0x17, 0xc5, 0xd5, 0x3e, 0x2b, 0x14, 0xde,
0x42, 0xdc, 0x7c, 0x08, 0x37, 0xba, 0x97, 0xb9, 0xfc, 0x68, 0x9d, 0xb5, 0xc1, 0xfd, 0xc0, 0xe8,
0x63, 0xd5, 0xf6, 0xf7, 0x2a, 0x1c, 0x5c, 0x62, 0x90, 0xd7, 0x9c, 0x37, 0x4f, 0xd0, 0x94, 0xc6,
0x2c, 0xa4, 0x8a, 0x0b, 0xe9, 0x3a, 0xe6, 0x6e, 0x6e, 0x5f, 0x7e, 0x37, 0xaf, 0x0a, 0x9d, 0x87,
0x01, 0x17, 0xa1, 0xd7, 0xb0, 0xf6, 0x73, 0x58, 0x6a, 0x9f, 0x6f, 0x32, 0xcc, 0x30, 0x2c, 0xfb,
0xbc, 0xf2, 0x49, 0x3e, 0xad, 0xfd, 0xb2, 0x4f, 0x7c, 0xc7, 0xd4, 0xb2, 0xcf, 0x95, 0x4f, 0xf2,
0x69, 0xed, 0x4b, 0x3e, 0xf5, 0x85, 0x67, 0xc2, 0x34, 0x1c, 0xa6, 0x3c, 0x88, 0x7c, 0x19, 0x65,
0xa3, 0x51, 0xcc, 0x92, 0xb1, 0x5b, 0x39, 0x5a, 0x69, 0x55, 0xbc, 0xbd, 0x9c, 0x3e, 0xd1, 0xec,
0xa0, 0x20, 0x75, 0x97, 0x2d, 0xd9, 0xb9, 0xab, 0xa6, 0x11, 0x6b, 0x65, 0x35, 0xf9, 0x16, 0x76,
0x63, 0x2a, 0x95, 0xff, 0x5b, 0x26, 0x15, 0x1b, 0x31, 0x0c, 0x73, 0xed, 0x9a, 0xd1, 0x12, 0xcd,
0xfd, 0x5c, 0x50, 0xcb, 0x16, 0x23, 0x96, 0x50, 0x5b, 0x81, 0xd6, 0x62, 0x7d, 0x61, 0xf1, 0x53,
0x41, 0x59, 0x8b, 0xaf, 0x61, 0xab, 0x08, 0x24, 0x9c, 0x25, 0x54, 0xaa, 0x99, 0xa9, 0xed, 0x8a,
0xb7, 0x99, 0xc3, 0x4f, 0x2c, 0x4a, 0x6e, 0x00, 0x24, 0xf8, 0x4e, 0xf9, 0xa6, 0x91, 0x4c, 0x35,
0x57, 0xbc, 0xaa, 0x46, 0x06, 0x1a, 0x20, 0x6d, 0xd8, 0x29, 0xfc, 0x04, 0x11, 0x06, 0xe7, 0x7e,
0xca, 0x59, 0xa2, 0x4c, 0x2d, 0xd7, 0xbc, 0xed, 0x9c, 0xea, 0x6a, 0xe6, 0x85, 0x26, 0xc8, 0x6d,
0xd8, 0x54, 0x5c, 0xd1, 0xd8, 0x0f, 0x31, 0xe5, 0x92, 0x29, 0xe9, 0x6e, 0x18, 0x97, 0x75, 0x83,
0x3e, 0xc9, 0x41, 0xf2, 0x25, 0xd4, 0xf2, 0xb0, 0x7c, 0x89, 0x18, 0xba, 0x35, 0xe3, 0x6f, 0x23,
0xc7, 0x06, 0x88, 0x21, 0x79, 0x04, 0xfb, 0x65, 0x89, 0x6f, 0x12, 0x20, 0x50, 0xa2, 0x72, 0xeb,
0xc6, 0xe5, 0x6e, 0x49, 0x7d, 0x4a, 0xa5, 0xf2, 0x34, 0xa7, 0x47, 0x73, 0x67, 0xb9, 0x7b, 0xff,
0x6f, 0x34, 0x97, 0xe4, 0x1f, 0x6b, 0x96, 0xf7, 0xb0, 0xb3, 0xa4, 0xcc, 0xbb, 0xe4, 0x31, 0xec,
0xdb, 0x03, 0xdb, 0x31, 0x87, 0x62, 0x71, 0x72, 0xc7, 0x84, 0xb9, 0x67, 0xe8, 0x4e, 0xce, 0xce,
0x33, 0x70, 0x17, 0xb6, 0xe7, 0x16, 0x43, 0xa6, 0x46, 0x0c, 0xe3, 0xd0, 0x8c, 0xed, 0x9a, 0xd7,
0x28, 0x88, 0xe3, 0x1c, 0x6f, 0xfe, 0xe1, 0x40, 0x7d, 0x69, 0xc8, 0x91, 0x03, 0xb8, 0x6a, 0x87,
0x27, 0x0b, 0xcd, 0x3e, 0x75, 0x6f, 0xdd, 0xac, 0x9f, 0x85, 0xa4, 0x05, 0x0d, 0x4b, 0x0d, 0xf5,
0x13, 0x62, 0xa7, 0x94, 0x75, 0xbc, 0x69, 0xf0, 0xf9, 0x9b, 0xa5, 0x2f, 0x4b, 0xb2, 0x71, 0x62,
0x23, 0x30, 0x93, 0xde, 0x3e, 0x0a, 0x75, 0x8b, 0x16, 0x43, 0xfe, 0x16, 0xd4, 0x97, 0x07, 0x7b,
0xc5, 0x0c, 0xf6, 0x1a, 0x2d, 0x4d, 0xf3, 0xe6, 0x9f, 0x0e, 0xec, 0x76, 0x79, 0x1c, 0xdb, 0xe7,
0x81, 0x87, 0xb3, 0x22, 0x97, 0x17, 0x23, 0xad, 0x2c, 0x22, 0xbd, 0x06, 0x6b, 0x29, 0x0a, 0xc6,
0xc3, 0xfc, 0xbd, 0xca, 0x57, 0xba, 0x26, 0x83, 0x28, 0x4b, 0xce, 0x7d, 0xc1, 0xb9, 0xca, 0x63,
0xaa, 0x1a, 0xc4, 0xe3, 0x5c, 0x91, 0x6f, 0xa0, 0x91, 0x0a, 0x9e, 0x72, 0x89, 0xc2, 0xa7, 0x61,
0x28, 0x50, 0xca, 0xfc, 0x89, 0xda, 0x2a, 0xf0, 0x8e, 0x85, 0xc9, 0xe7, 0x50, 0xd5, 0x67, 0xa1,
0x2a, 0x13, 0x68, 0x7a, 0xb1, 0xe6, 0x2d, 0x80, 0xe6, 0xbf, 0x0e, 0x6c, 0x5d, 0x98, 0x05, 0x7a,
0xef, 0x34, 0x1b, 0xc6, 0x2c, 0xf0, 0xcf, 0x71, 0x96, 0x07, 0x5c, 0xb5, 0xc8, 0x73, 0x9c, 0xe9,
0xbd, 0xdf, 0x32, 0x15, 0x85, 0x82, 0xbe, 0xa5, 0x71, 0xde, 0x34, 0x36, 0xf8, 0xad, 0x05, 0x6e,
0x5b, 0xe7, 0x1e, 0x90, 0x92, 0xb4, 0x08, 0xd4, 0x9e, 0x66, 0x7b, 0xc1, 0x14, 0xa1, 0xde, 0x85,
0xed, 0xfc, 0x81, 0x0e, 0xf8, 0x64, 0xc2, 0xd4, 0x04, 0x13, 0x95, 0x1f, 0xab, 0x61, 0x89, 0xee,
0x1c, 0x27, 0x2e, 0xac, 0x0f, 0x69, 0x4c, 0x93, 0x00, 0xf3, 0x09, 0x53, 0x2c, 0xcd, 0x9d, 0xbe,
0x65, 0x2a, 0x88, 0xe6, 0x7d, 0x6f, 0xc7, 0x4a, 0xdd, 0xa2, 0x79, 0xdb, 0x37, 0x4f, 0x61, 0xef,
0xc2, 0x6d, 0x2d, 0xbe, 0x34, 0x22, 0xa4, 0x21, 0x8a, 0xa5, 0x2f, 0x0d, 0x0b, 0x99, 0xa2, 0x21,
0x50, 0x19, 0xf2, 0x70, 0x96, 0x97, 0x94, 0xf9, 0xdf, 0xfc, 0xc7, 0x81, 0x8d, 0x33, 0x41, 0x13,
0xa9, 0x07, 0x3e, 0x4f, 0xc8, 0x2e, 0xac, 0x26, 0x5c, 0x07, 0x67, 0xf3, 0x67, 0x17, 0xe4, 0x3a,
0x54, 0xc7, 0x54, 0xfa, 0xa9, 0x60, 0x01, 0xe6, 0x49, 0xbb, 0x3a, 0xa6, 0xf2, 0x85, 0x5e, 0x17,
0x64, 0xcc, 0x26, 0xcc, 0x5e, 0xb9, 0x25, 0x4f, 0xf5, 0x5a, 0x5f, 0xa3, 0xc0, 0x80, 0xa5, 0x6c,
0x91, 0x93, 0x05, 0xa0, 0x77, 0x9b, 0xd2, 0x38, 0x2b, 0x52, 0x61, 0x17, 0x1a, 0x65, 0x49, 0x9a,
0x29, 0x73, 0xfe, 0x9a, 0x67, 0x17, 0xe4, 0xc7, 0x72, 0x41, 0xac, 0x9b, 0x17, 0xf9, 0xe6, 0xe5,
0x8f, 0xc4, 0xa0, 0x90, 0x95, 0x2b, 0xe6, 0x11, 0x54, 0xe7, 0x38, 0xa9, 0x81, 0x33, 0xcd, 0x4f,
0xe8, 0x4c, 0xf5, 0xaa, 0xf8, 0xee, 0x72, 0x84, 0x5e, 0xc9, 0xfc, 0x18, 0x8e, 0xbc, 0xf3, 0x97,
0x03, 0xab, 0x67, 0x3c, 0x65, 0x01, 0xd9, 0x80, 0xf5, 0x97, 0xbd, 0xe7, 0xbd, 0xfe, 0xeb, 0x5e,
0xe3, 0x33, 0x72, 0x08, 0xd7, 0xba, 0xfd, 0xd3, 0xd3, 0xce, 0xd9, 0xb3, 0x7e, 0xcf, 0x3f, 0xee,
0x3f, 0xf9, 0xd5, 0xf7, 0x4e, 0x7e, 0x79, 0x79, 0x32, 0x38, 0x6b, 0x38, 0xe4, 0x3a, 0xec, 0x7f,
0xc0, 0x0d, 0x5e, 0xf4, 0x7b, 0x83, 0x93, 0xc6, 0x15, 0xd2, 0x80, 0xda, 0x99, 0xd7, 0xe9, 0x0d,
0x3a, 0x5d, 0x4d, 0x0f, 0x1a, 0x2b, 0xe4, 0x0b, 0x38, 0x3c, 0x3e, 0xe9, 0x74, 0xb5, 0xf6, 0xb4,
0xdf, 0x7d, 0xee, 0x3f, 0xed, 0x0c, 0x9e, 0xfa, 0x9d, 0x5e, 0xaf, 0xff, 0xb2, 0xd7, 0x3d, 0x69,
0x54, 0x88, 0x0b, 0xbb, 0x4b, 0x7c, 0xb1, 0xd1, 0x2a, 0x39, 0x80, 0xbd, 0x0b, 0x4c, 0xbe, 0xcd,
0xda, 0x70, 0xcd, 0x7c, 0xa3, 0x3c, 0xfc, 0x2f, 0x00, 0x00, 0xff, 0xff, 0xf1, 0xef, 0x31, 0x67,
0x36, 0x0b, 0x00, 0x00,
var fileDescriptor_messages_e1d33f8757fc0f25 = []byte{
// 948 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdb, 0x6e, 0xdb, 0x46,
0x10, 0x85, 0x22, 0xd9, 0x8e, 0x47, 0x92, 0x2d, 0xaf, 0xe2, 0x8a, 0x0e, 0x10, 0x44, 0x55, 0x1a,
0x44, 0x6d, 0x11, 0xaa, 0x71, 0xd0, 0xa0, 0xe8, 0x9b, 0xec, 0xb4, 0xe8, 0x0d, 0x45, 0x41, 0x05,
0x01, 0xfa, 0x44, 0xac, 0xc8, 0x11, 0xb9, 0x35, 0xc9, 0x65, 0xb8, 0x4b, 0x39, 0xca, 0x17, 0xf4,
0x33, 0xfa, 0x57, 0xfd, 0x95, 0x3e, 0x16, 0x7b, 0xa1, 0x44, 0xb6, 0xae, 0x0b, 0xbf, 0x18, 0xd6,
0xb9, 0x71, 0x2f, 0x33, 0xb3, 0x30, 0xc9, 0x0b, 0x2e, 0xf9, 0x6c, 0x89, 0x34, 0xe0, 0xd9, 0x2c,
0x3f, 0xcf, 0x67, 0xeb, 0x17, 0xb3, 0x14, 0x85, 0xa0, 0x11, 0x0a, 0x57, 0x93, 0xe4, 0x23, 0x94,
0x31, 0x16, 0x58, 0xa6, 0xae, 0x91, 0xb9, 0xf9, 0x79, 0xee, 0xae, 0x5f, 0x3c, 0x7c, 0x1c, 0x71,
0x1e, 0x25, 0x38, 0xd3, 0xaa, 0x65, 0xb9, 0x9a, 0x49, 0x96, 0xa2, 0x90, 0x34, 0xcd, 0x8d, 0x71,
0xf2, 0x1c, 0x46, 0x17, 0xda, 0x71, 0x91, 0xf0, 0xe0, 0xea, 0x3b, 0x2a, 0xe2, 0x79, 0x96, 0xf1,
0x32, 0x0b, 0x90, 0x10, 0xe8, 0xc4, 0x54, 0xc4, 0x4e, 0x6b, 0xdc, 0x9a, 0xf6, 0x3c, 0xfd, 0xff,
0x64, 0x0a, 0xa4, 0x26, 0xf7, 0xf0, 0x5d, 0x89, 0x42, 0xde, 0xa8, 0xfc, 0xbd, 0x03, 0xc3, 0x86,
0x54, 0xe4, 0x3c, 0x13, 0x48, 0x1e, 0x43, 0x37, 0xa7, 0x05, 0x66, 0xd2, 0xaf, 0x59, 0xc0, 0x40,
0xea, 0xf3, 0x4a, 0x20, 0x12, 0x2e, 0xfd, 0xac, 0x4c, 0x97, 0x58, 0x38, 0xf7, 0xc6, 0xad, 0x69,
0xc7, 0x03, 0x05, 0xfd, 0xac, 0x11, 0xf2, 0x04, 0xfa, 0x05, 0xcd, 0x42, 0xca, 0xfd, 0x02, 0xd7,
0x48, 0x13, 0xa7, 0xad, 0x33, 0x7a, 0x06, 0xf4, 0x34, 0x46, 0x66, 0x30, 0xa4, 0x52, 0xaa, 0xad,
0x4a, 0xc6, 0x33, 0x7f, 0xc9, 0x64, 0x4a, 0xc5, 0x95, 0xd3, 0xd1, 0x52, 0x52, 0xa3, 0x2e, 0x0c,
0x43, 0xbe, 0x86, 0xb3, 0xba, 0x81, 0x46, 0x51, 0x81, 0x11, 0x95, 0xe8, 0x0b, 0x16, 0x39, 0x7b,
0xe3, 0xf6, 0xb4, 0xef, 0x8d, 0x6a, 0x82, 0x79, 0xc5, 0x2f, 0x58, 0x44, 0x7e, 0x85, 0x53, 0x11,
0xd3, 0x22, 0xac, 0xb9, 0xd6, 0x5c, 0xa2, 0x70, 0xf6, 0xc7, 0xed, 0x69, 0xf7, 0xfc, 0xa9, 0x7b,
0xf3, 0xed, 0xb8, 0xdb, 0x90, 0xb7, 0x5c, 0xa2, 0x37, 0xd4, 0x19, 0x0d, 0x4c, 0x90, 0x4f, 0xe0,
0x28, 0xa5, 0x2c, 0xf3, 0x83, 0x58, 0xfd, 0x2d, 0x70, 0xe5, 0x1c, 0x98, 0xdd, 0x2a, 0xf4, 0x52,
0x81, 0x1e, 0xae, 0xc8, 0x67, 0x70, 0x42, 0x03, 0xc9, 0xd6, 0xe8, 0xab, 0xe5, 0xa1, 0x39, 0xda,
0xfb, 0x5a, 0x78, 0x6c, 0x88, 0x85, 0xc2, 0xf5, 0xf9, 0xbe, 0x82, 0x51, 0x50, 0x6c, 0x84, 0xa4,
0x49, 0xc2, 0x3e, 0x60, 0x58, 0x77, 0x1c, 0x6a, 0xc7, 0x69, 0x9d, 0xde, 0xf9, 0xbe, 0x82, 0xc3,
0x6d, 0xf1, 0x38, 0x30, 0x6e, 0x4d, 0xbb, 0xe7, 0x0f, 0x5d, 0x53, 0x5e, 0x6e, 0x55, 0x5e, 0xee,
0x9b, 0x4a, 0xe1, 0xed, 0xc4, 0x93, 0x97, 0xf0, 0xe8, 0xf2, 0xa6, 0xc8, 0x5b, 0x2b, 0xcd, 0x05,
0xe7, 0x5f, 0xa6, 0xdb, 0xea, 0xed, 0xcf, 0x3d, 0x38, 0xbb, 0xc1, 0x60, 0xab, 0xee, 0xcd, 0xf6,
0x80, 0xd6, 0x34, 0x61, 0x21, 0x95, 0xbc, 0x10, 0x4e, 0x4b, 0xdf, 0xce, 0xb3, 0xff, 0xba, 0x9d,
0xb7, 0x95, 0xd2, 0xc3, 0x80, 0x17, 0xa1, 0x37, 0x30, 0x09, 0x5b, 0x58, 0xa8, 0xd4, 0x77, 0x25,
0x96, 0x18, 0xd6, 0x53, 0xef, 0xdd, 0x31, 0xd5, 0x24, 0x34, 0x53, 0xf1, 0x3d, 0x93, 0xcd, 0xd4,
0xf6, 0x1d, 0x53, 0x4d, 0x42, 0x2d, 0x55, 0x5d, 0x7b, 0x59, 0xe8, 0xc6, 0xc3, 0x9c, 0x07, 0xb1,
0x2f, 0xe2, 0x72, 0xb5, 0x4a, 0x58, 0x16, 0x39, 0x9d, 0x71, 0x7b, 0xda, 0xf1, 0x4e, 0x2d, 0xfd,
0x8d, 0x62, 0x17, 0x15, 0xa9, 0xba, 0xad, 0xe1, 0x73, 0xf6, 0x74, 0x43, 0xf6, 0xea, 0x6a, 0xf2,
0x05, 0x3c, 0x48, 0xa8, 0x90, 0xfe, 0x6f, 0xa5, 0x90, 0x6c, 0xc5, 0x30, 0xb4, 0xda, 0x7d, 0xad,
0x25, 0x8a, 0xfb, 0xa1, 0xa2, 0x9a, 0x8e, 0x15, 0xcb, 0xa8, 0xa9, 0x43, 0xe3, 0x38, 0xd8, 0x39,
0xbe, 0xad, 0x28, 0xe3, 0x78, 0x06, 0xc7, 0xd5, 0x42, 0xc2, 0x4d, 0x46, 0x85, 0xdc, 0xe8, 0x0a,
0xef, 0x78, 0x47, 0x16, 0x7e, 0x6d, 0x50, 0xf2, 0x08, 0x20, 0xc3, 0xf7, 0xd2, 0xd7, 0xed, 0xa4,
0x6b, 0xba, 0xe3, 0x1d, 0x2a, 0x64, 0xa1, 0x00, 0xe2, 0xc2, 0xb0, 0xca, 0x09, 0x62, 0x0c, 0xae,
0xfc, 0x9c, 0xb3, 0x4c, 0xea, 0x8a, 0xee, 0x79, 0x27, 0x96, 0xba, 0x54, 0xcc, 0x2f, 0x8a, 0x20,
0x4f, 0xe1, 0x48, 0x72, 0x49, 0x13, 0x3f, 0xc4, 0x9c, 0x0b, 0x26, 0x85, 0xd3, 0xd5, 0x91, 0x7d,
0x8d, 0xbe, 0xb6, 0x20, 0xf9, 0x18, 0x7a, 0x76, 0x59, 0xbe, 0x40, 0x0c, 0x9d, 0x9e, 0xce, 0xeb,
0x5a, 0x6c, 0x81, 0x18, 0x92, 0x2f, 0x61, 0x54, 0x97, 0xf8, 0xfa, 0x00, 0x0a, 0x14, 0x28, 0x9d,
0xbe, 0x8e, 0x7c, 0x50, 0x53, 0xff, 0x44, 0x85, 0xf4, 0x14, 0xa7, 0x46, 0xf4, 0xbc, 0xd9, 0xc3,
0xff, 0x37, 0xa2, 0x6b, 0xf2, 0xdb, 0x5a, 0xe6, 0x03, 0x0c, 0x1b, 0x4a, 0xdb, 0x2b, 0xaf, 0x60,
0x64, 0x36, 0x6c, 0xc6, 0x1d, 0x16, 0xbb, 0x9d, 0xb7, 0xf4, 0x32, 0x4f, 0x35, 0x3d, 0xb7, 0xec,
0xf6, 0x04, 0x3e, 0x87, 0x93, 0xad, 0x63, 0xc9, 0xe4, 0x8a, 0x61, 0x12, 0xea, 0xf1, 0xdd, 0xf3,
0x06, 0x15, 0x71, 0x61, 0xf1, 0xc9, 0x1f, 0x2d, 0xe8, 0x37, 0x46, 0x1d, 0x39, 0x83, 0xfb, 0x66,
0x88, 0xb2, 0x50, 0x7f, 0xa7, 0xef, 0x1d, 0xe8, 0xdf, 0xdf, 0x87, 0x64, 0x0a, 0x03, 0x43, 0x2d,
0xd5, 0x53, 0x62, 0x66, 0x95, 0x09, 0x3e, 0xd2, 0xf8, 0xf6, 0xed, 0x52, 0x97, 0x25, 0x58, 0x94,
0x99, 0x15, 0xe8, 0x89, 0x6f, 0x1e, 0x87, 0xbe, 0x41, 0xab, 0x61, 0xff, 0x04, 0xfa, 0xcd, 0x01,
0xdf, 0xd1, 0x03, 0xbe, 0x47, 0x6b, 0x53, 0x7d, 0xf2, 0x57, 0x0b, 0x8e, 0xff, 0xd1, 0x57, 0xaa,
0xb6, 0xf2, 0x72, 0x99, 0xb0, 0xc0, 0xbf, 0xc2, 0x8d, 0x3d, 0x8e, 0x43, 0x83, 0xfc, 0x88, 0x1b,
0xf2, 0x29, 0x0c, 0xae, 0x99, 0x8c, 0xc3, 0x82, 0x5e, 0xd3, 0xc4, 0x16, 0xa0, 0x79, 0xc0, 0x8e,
0x77, 0xb8, 0x29, 0xc3, 0xe7, 0x40, 0x6a, 0x52, 0x1a, 0x86, 0x05, 0x0a, 0x61, 0x57, 0x7b, 0xb2,
0x63, 0xe6, 0x86, 0x50, 0x87, 0x6b, 0x1f, 0xbd, 0x80, 0xa7, 0x29, 0x93, 0x29, 0x66, 0xd2, 0xbe,
0x66, 0x03, 0x43, 0x5c, 0x6e, 0x71, 0xe2, 0xc0, 0xc1, 0x92, 0x26, 0x34, 0x0b, 0xd0, 0x76, 0x6b,
0xf5, 0x53, 0x9f, 0xcf, 0x35, 0x93, 0x41, 0xbc, 0xed, 0x21, 0xd3, 0xa2, 0x7d, 0x83, 0xda, 0x16,
0x5a, 0xee, 0xeb, 0x81, 0xfe, 0xf2, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0xfe, 0x1a, 0x39, 0xcc,
0x7b, 0x08, 0x00, 0x00,
}

View File

@ -1,19 +1,9 @@
syntax = "proto3";
package ethereum.messages.v1;
package ethereum.beacon.p2p.v1;
import "google/protobuf/timestamp.proto";
enum Topic {
UNKNOWN = 0;
COLLATION_BODY_REQUEST = 1;
COLLATION_BODY_RESPONSE = 2;
TRANSACTIONS = 3;
BEACON_BLOCK_HASH_ANNOUNCE = 4;
BEACON_BLOCK_REQUEST = 5;
BEACON_BLOCK_RESPONSE = 6;
}
message BeaconBlockHashAnnounce {
bytes hash = 1;
}
@ -79,40 +69,11 @@ message AggregateVote {
repeated uint32 aggregate_sig = 4;
}
message CollationBodyRequest {
uint64 shard_id = 1;
uint64 period = 2;
bytes chunk_root = 3;
bytes proposer_address = 4;
bytes signature = 5;
}
message ValidatorRecord {
uint64 public_key = 1;
uint64 public_key = 1;
uint64 withdrawal_shard = 2;
bytes withdrawal_address = 3;
bytes randao_commitment = 4;
uint64 balance = 5;
uint64 switch_dynasty = 6;
}
message CollationBodyResponse {
bytes header_hash = 1;
bytes body = 2;
}
message Transaction {
uint64 nonce = 1;
uint64 gas_price = 2;
uint64 gas_limit = 3;
bytes recipient = 4;
uint64 value = 5;
bytes input = 6;
Signature signature = 7;
}
message Signature {
uint64 v = 1;
uint64 r = 2;
uint64 s = 3;
}
}

View File

@ -1,23 +1,22 @@
load("@io_bazel_rules_go//go:def.bzl", "go_library")
load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
proto_library(
name = "ethereum_sharding_p2p_v1_proto",
srcs = ["messages.proto"],
visibility = ["//visibility:public"],
)
go_proto_library(
name = "messages_go_proto",
importpath = "github.com/prysmaticlabs/prysm/proto/sharding/v1",
proto = ":ethereum_messages_v1_proto",
name = "ethereum_sharding_p2p_v1_go_proto",
importpath = "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1",
proto = ":ethereum_sharding_p2p_v1_proto",
visibility = ["//visibility:public"],
)
go_library(
name = "go_default_library",
embed = [":messages_go_proto"],
importpath = "github.com/prysmaticlabs/prysm/proto/sharding/v1",
embed = [":ethereum_sharding_p2p_v1_go_proto"],
importpath = "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1",
visibility = ["//visibility:public"],
)
proto_library(
name = "ethereum_messages_v1_proto",
srcs = ["messages.proto"],
visibility = ["//visibility:public"],
deps = ["@com_google_protobuf//:timestamp_proto"],
)

View File

@ -0,0 +1,361 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: proto/sharding/p2p/v1/messages.proto
package ethereum_sharding_p2p_v1
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
type Topic int32
const (
Topic_UNKNOWN Topic = 0
Topic_COLLATION_BODY_REQUEST Topic = 1
Topic_COLLATION_BODY_RESPONSE Topic = 2
Topic_TRANSACTIONS Topic = 3
Topic_BEACON_BLOCK_HASH_ANNOUNCE Topic = 4
Topic_BEACON_BLOCK_REQUEST Topic = 5
Topic_BEACON_BLOCK_RESPONSE Topic = 6
)
var Topic_name = map[int32]string{
0: "UNKNOWN",
1: "COLLATION_BODY_REQUEST",
2: "COLLATION_BODY_RESPONSE",
3: "TRANSACTIONS",
4: "BEACON_BLOCK_HASH_ANNOUNCE",
5: "BEACON_BLOCK_REQUEST",
6: "BEACON_BLOCK_RESPONSE",
}
var Topic_value = map[string]int32{
"UNKNOWN": 0,
"COLLATION_BODY_REQUEST": 1,
"COLLATION_BODY_RESPONSE": 2,
"TRANSACTIONS": 3,
"BEACON_BLOCK_HASH_ANNOUNCE": 4,
"BEACON_BLOCK_REQUEST": 5,
"BEACON_BLOCK_RESPONSE": 6,
}
func (x Topic) String() string {
return proto.EnumName(Topic_name, int32(x))
}
func (Topic) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_messages_a2b5338ab8a3879b, []int{0}
}
type CollationBodyRequest struct {
ShardId uint64 `protobuf:"varint,1,opt,name=shard_id,json=shardId,proto3" json:"shard_id,omitempty"`
Period uint64 `protobuf:"varint,2,opt,name=period,proto3" json:"period,omitempty"`
ChunkRoot []byte `protobuf:"bytes,3,opt,name=chunk_root,json=chunkRoot,proto3" json:"chunk_root,omitempty"`
ProposerAddress []byte `protobuf:"bytes,4,opt,name=proposer_address,json=proposerAddress,proto3" json:"proposer_address,omitempty"`
Signature []byte `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollationBodyRequest) Reset() { *m = CollationBodyRequest{} }
func (m *CollationBodyRequest) String() string { return proto.CompactTextString(m) }
func (*CollationBodyRequest) ProtoMessage() {}
func (*CollationBodyRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_a2b5338ab8a3879b, []int{0}
}
func (m *CollationBodyRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollationBodyRequest.Unmarshal(m, b)
}
func (m *CollationBodyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollationBodyRequest.Marshal(b, m, deterministic)
}
func (dst *CollationBodyRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollationBodyRequest.Merge(dst, src)
}
func (m *CollationBodyRequest) XXX_Size() int {
return xxx_messageInfo_CollationBodyRequest.Size(m)
}
func (m *CollationBodyRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CollationBodyRequest.DiscardUnknown(m)
}
var xxx_messageInfo_CollationBodyRequest proto.InternalMessageInfo
func (m *CollationBodyRequest) GetShardId() uint64 {
if m != nil {
return m.ShardId
}
return 0
}
func (m *CollationBodyRequest) GetPeriod() uint64 {
if m != nil {
return m.Period
}
return 0
}
func (m *CollationBodyRequest) GetChunkRoot() []byte {
if m != nil {
return m.ChunkRoot
}
return nil
}
func (m *CollationBodyRequest) GetProposerAddress() []byte {
if m != nil {
return m.ProposerAddress
}
return nil
}
func (m *CollationBodyRequest) GetSignature() []byte {
if m != nil {
return m.Signature
}
return nil
}
type CollationBodyResponse struct {
HeaderHash []byte `protobuf:"bytes,1,opt,name=header_hash,json=headerHash,proto3" json:"header_hash,omitempty"`
Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *CollationBodyResponse) Reset() { *m = CollationBodyResponse{} }
func (m *CollationBodyResponse) String() string { return proto.CompactTextString(m) }
func (*CollationBodyResponse) ProtoMessage() {}
func (*CollationBodyResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_a2b5338ab8a3879b, []int{1}
}
func (m *CollationBodyResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CollationBodyResponse.Unmarshal(m, b)
}
func (m *CollationBodyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CollationBodyResponse.Marshal(b, m, deterministic)
}
func (dst *CollationBodyResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_CollationBodyResponse.Merge(dst, src)
}
func (m *CollationBodyResponse) XXX_Size() int {
return xxx_messageInfo_CollationBodyResponse.Size(m)
}
func (m *CollationBodyResponse) XXX_DiscardUnknown() {
xxx_messageInfo_CollationBodyResponse.DiscardUnknown(m)
}
var xxx_messageInfo_CollationBodyResponse proto.InternalMessageInfo
func (m *CollationBodyResponse) GetHeaderHash() []byte {
if m != nil {
return m.HeaderHash
}
return nil
}
func (m *CollationBodyResponse) GetBody() []byte {
if m != nil {
return m.Body
}
return nil
}
type Transaction struct {
Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
GasPrice uint64 `protobuf:"varint,2,opt,name=gas_price,json=gasPrice,proto3" json:"gas_price,omitempty"`
GasLimit uint64 `protobuf:"varint,3,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"`
Recipient []byte `protobuf:"bytes,4,opt,name=recipient,proto3" json:"recipient,omitempty"`
Value uint64 `protobuf:"varint,5,opt,name=value,proto3" json:"value,omitempty"`
Input []byte `protobuf:"bytes,6,opt,name=input,proto3" json:"input,omitempty"`
Signature *Signature `protobuf:"bytes,7,opt,name=signature,proto3" json:"signature,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Transaction) Reset() { *m = Transaction{} }
func (m *Transaction) String() string { return proto.CompactTextString(m) }
func (*Transaction) ProtoMessage() {}
func (*Transaction) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_a2b5338ab8a3879b, []int{2}
}
func (m *Transaction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Transaction.Unmarshal(m, b)
}
func (m *Transaction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Transaction.Marshal(b, m, deterministic)
}
func (dst *Transaction) XXX_Merge(src proto.Message) {
xxx_messageInfo_Transaction.Merge(dst, src)
}
func (m *Transaction) XXX_Size() int {
return xxx_messageInfo_Transaction.Size(m)
}
func (m *Transaction) XXX_DiscardUnknown() {
xxx_messageInfo_Transaction.DiscardUnknown(m)
}
var xxx_messageInfo_Transaction proto.InternalMessageInfo
func (m *Transaction) GetNonce() uint64 {
if m != nil {
return m.Nonce
}
return 0
}
func (m *Transaction) GetGasPrice() uint64 {
if m != nil {
return m.GasPrice
}
return 0
}
func (m *Transaction) GetGasLimit() uint64 {
if m != nil {
return m.GasLimit
}
return 0
}
func (m *Transaction) GetRecipient() []byte {
if m != nil {
return m.Recipient
}
return nil
}
func (m *Transaction) GetValue() uint64 {
if m != nil {
return m.Value
}
return 0
}
func (m *Transaction) GetInput() []byte {
if m != nil {
return m.Input
}
return nil
}
func (m *Transaction) GetSignature() *Signature {
if m != nil {
return m.Signature
}
return nil
}
type Signature struct {
V uint64 `protobuf:"varint,1,opt,name=v,proto3" json:"v,omitempty"`
R uint64 `protobuf:"varint,2,opt,name=r,proto3" json:"r,omitempty"`
S uint64 `protobuf:"varint,3,opt,name=s,proto3" json:"s,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *Signature) Reset() { *m = Signature{} }
func (m *Signature) String() string { return proto.CompactTextString(m) }
func (*Signature) ProtoMessage() {}
func (*Signature) Descriptor() ([]byte, []int) {
return fileDescriptor_messages_a2b5338ab8a3879b, []int{3}
}
func (m *Signature) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Signature.Unmarshal(m, b)
}
func (m *Signature) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_Signature.Marshal(b, m, deterministic)
}
func (dst *Signature) XXX_Merge(src proto.Message) {
xxx_messageInfo_Signature.Merge(dst, src)
}
func (m *Signature) XXX_Size() int {
return xxx_messageInfo_Signature.Size(m)
}
func (m *Signature) XXX_DiscardUnknown() {
xxx_messageInfo_Signature.DiscardUnknown(m)
}
var xxx_messageInfo_Signature proto.InternalMessageInfo
func (m *Signature) GetV() uint64 {
if m != nil {
return m.V
}
return 0
}
func (m *Signature) GetR() uint64 {
if m != nil {
return m.R
}
return 0
}
func (m *Signature) GetS() uint64 {
if m != nil {
return m.S
}
return 0
}
func init() {
proto.RegisterType((*CollationBodyRequest)(nil), "ethereum.sharding.p2p.v1.CollationBodyRequest")
proto.RegisterType((*CollationBodyResponse)(nil), "ethereum.sharding.p2p.v1.CollationBodyResponse")
proto.RegisterType((*Transaction)(nil), "ethereum.sharding.p2p.v1.Transaction")
proto.RegisterType((*Signature)(nil), "ethereum.sharding.p2p.v1.Signature")
proto.RegisterEnum("ethereum.sharding.p2p.v1.Topic", Topic_name, Topic_value)
}
func init() {
proto.RegisterFile("proto/sharding/p2p/v1/messages.proto", fileDescriptor_messages_a2b5338ab8a3879b)
}
var fileDescriptor_messages_a2b5338ab8a3879b = []byte{
// 503 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x92, 0xdd, 0x6a, 0xdb, 0x3c,
0x18, 0xc7, 0x5f, 0xb5, 0xf9, 0x68, 0x9e, 0x04, 0x5e, 0x23, 0xd2, 0xce, 0x6d, 0xf7, 0x11, 0xb2,
0x1d, 0x64, 0x3b, 0x70, 0x68, 0xc6, 0x2e, 0xc0, 0xf1, 0x02, 0x29, 0x0d, 0x76, 0x67, 0x27, 0x8c,
0x1d, 0x19, 0xd5, 0x16, 0xb1, 0x58, 0x62, 0x69, 0x92, 0x1d, 0xe8, 0x65, 0x0d, 0x76, 0x55, 0xbb,
0x8a, 0x21, 0xd9, 0xee, 0xba, 0x8e, 0x9d, 0xf9, 0xff, 0x81, 0x9e, 0xe7, 0x27, 0x0b, 0xde, 0x08,
0xc9, 0x0b, 0x3e, 0x55, 0x19, 0x91, 0x29, 0xcb, 0xb7, 0x53, 0x31, 0x13, 0xd3, 0xc3, 0xd5, 0x74,
0x4f, 0x95, 0x22, 0x5b, 0xaa, 0x1c, 0x13, 0x63, 0x9b, 0x16, 0x19, 0x95, 0xb4, 0xdc, 0x3b, 0x4d,
0xd1, 0x11, 0x33, 0xe1, 0x1c, 0xae, 0xc6, 0xdf, 0x11, 0x0c, 0x3d, 0xbe, 0xdb, 0x91, 0x82, 0xf1,
0x7c, 0xce, 0xd3, 0xfb, 0x90, 0x7e, 0x2b, 0xa9, 0x2a, 0xf0, 0x39, 0x9c, 0x98, 0x6e, 0xcc, 0x52,
0x1b, 0x8d, 0xd0, 0xa4, 0x15, 0x76, 0x8d, 0xbe, 0x4e, 0xf1, 0x19, 0x74, 0x04, 0x95, 0x8c, 0xa7,
0xf6, 0x91, 0x09, 0x6a, 0x85, 0x5f, 0x00, 0x24, 0x59, 0x99, 0x7f, 0x8d, 0x25, 0xe7, 0x85, 0x7d,
0x3c, 0x42, 0x93, 0x41, 0xd8, 0x33, 0x4e, 0xc8, 0x79, 0x81, 0xdf, 0x82, 0x25, 0x24, 0x17, 0x5c,
0x51, 0x19, 0x93, 0x34, 0x95, 0x54, 0x29, 0xbb, 0x65, 0x4a, 0xff, 0x37, 0xbe, 0x5b, 0xd9, 0xf8,
0x39, 0xf4, 0x14, 0xdb, 0xe6, 0xa4, 0x28, 0x25, 0xb5, 0xdb, 0xd5, 0x41, 0x0f, 0xc6, 0x78, 0x05,
0xa7, 0x4f, 0x56, 0x56, 0x82, 0xe7, 0x8a, 0xe2, 0x57, 0xd0, 0xcf, 0x28, 0x49, 0xa9, 0x8c, 0x33,
0xa2, 0x32, 0xb3, 0xf6, 0x20, 0x84, 0xca, 0x5a, 0x12, 0x95, 0x61, 0x0c, 0xad, 0x3b, 0x9e, 0xde,
0x9b, 0xbd, 0x07, 0xa1, 0xf9, 0x1e, 0xff, 0x44, 0xd0, 0x5f, 0x4b, 0x92, 0x2b, 0x92, 0xe8, 0x03,
0xf1, 0x10, 0xda, 0x39, 0xcf, 0x13, 0x5a, 0x53, 0x57, 0x02, 0x5f, 0x42, 0x6f, 0x4b, 0x54, 0x2c,
0x24, 0x4b, 0x68, 0x8d, 0x7d, 0xb2, 0x25, 0xea, 0x56, 0xeb, 0x26, 0xdc, 0xb1, 0x3d, 0xab, 0xb8,
0xab, 0x70, 0xa5, 0xb5, 0x66, 0x91, 0x34, 0x61, 0x82, 0xd1, 0xbc, 0xa8, 0x79, 0x7f, 0x1b, 0x7a,
0xda, 0x81, 0xec, 0xca, 0x8a, 0xb2, 0x15, 0x56, 0x42, 0xbb, 0x2c, 0x17, 0x65, 0x61, 0x77, 0x4c,
0xbf, 0x12, 0xd8, 0x7d, 0x7c, 0x2b, 0xdd, 0x11, 0x9a, 0xf4, 0x67, 0xaf, 0x9d, 0x7f, 0xfd, 0x59,
0x27, 0x6a, 0xaa, 0x8f, 0xaf, 0xee, 0x03, 0xf4, 0x1e, 0x7c, 0x3c, 0x00, 0x74, 0xa8, 0x29, 0xd1,
0x41, 0x2b, 0x59, 0x93, 0x21, 0xa9, 0x95, 0xaa, 0x51, 0x90, 0x7a, 0xf7, 0x03, 0x41, 0x7b, 0xcd,
0x05, 0x4b, 0x70, 0x1f, 0xba, 0x1b, 0xff, 0xc6, 0x0f, 0x3e, 0xfb, 0xd6, 0x7f, 0xf8, 0x02, 0xce,
0xbc, 0x60, 0xb5, 0x72, 0xd7, 0xd7, 0x81, 0x1f, 0xcf, 0x83, 0x8f, 0x5f, 0xe2, 0x70, 0xf1, 0x69,
0xb3, 0x88, 0xd6, 0x16, 0xc2, 0x97, 0xf0, 0xec, 0xaf, 0x2c, 0xba, 0x0d, 0xfc, 0x68, 0x61, 0x1d,
0x61, 0x0b, 0x06, 0xeb, 0xd0, 0xf5, 0x23, 0xd7, 0xd3, 0x71, 0x64, 0x1d, 0xe3, 0x97, 0x70, 0x31,
0x5f, 0xb8, 0x9e, 0xee, 0xae, 0x02, 0xef, 0x26, 0x5e, 0xba, 0xd1, 0x32, 0x76, 0x7d, 0x3f, 0xd8,
0xf8, 0xde, 0xc2, 0x6a, 0x61, 0x1b, 0x86, 0x7f, 0xe4, 0xcd, 0xa0, 0x36, 0x3e, 0x87, 0xd3, 0x27,
0x49, 0x3d, 0xa6, 0x73, 0xd7, 0x31, 0xaf, 0xff, 0xfd, 0xaf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x01,
0x09, 0x20, 0xaf, 0x25, 0x03, 0x00, 0x00,
}

View File

@ -0,0 +1,42 @@
syntax = "proto3";
package ethereum.sharding.p2p.v1;
enum Topic {
UNKNOWN = 0;
COLLATION_BODY_REQUEST = 1;
COLLATION_BODY_RESPONSE = 2;
TRANSACTIONS = 3;
BEACON_BLOCK_HASH_ANNOUNCE = 4;
BEACON_BLOCK_REQUEST = 5;
BEACON_BLOCK_RESPONSE = 6;
}
message CollationBodyRequest {
uint64 shard_id = 1;
uint64 period = 2;
bytes chunk_root = 3;
bytes proposer_address = 4;
bytes signature = 5;
}
message CollationBodyResponse {
bytes header_hash = 1;
bytes body = 2;
}
message Transaction {
uint64 nonce = 1;
uint64 gas_price = 2;
uint64 gas_limit = 3;
bytes recipient = 4;
uint64 value = 5;
bytes input = 6;
Signature signature = 7;
}
message Signature {
uint64 v = 1;
uint64 r = 2;
uint64 s = 3;
}

View File

@ -6,7 +6,7 @@ go_library(
importpath = "github.com/prysmaticlabs/prysm/shared/legacyutil",
visibility = ["//visibility:public"],
deps = [
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"@com_github_ethereum_go_ethereum//common:go_default_library",
"@com_github_ethereum_go_ethereum//core/types:go_default_library",
],

View File

@ -7,7 +7,7 @@ import (
"github.com/ethereum/go-ethereum/common"
gethTypes "github.com/ethereum/go-ethereum/core/types"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
pb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
)
// TransformTransaction of proto transaction to geth's transction.

View File

@ -14,7 +14,8 @@ go_library(
importpath = "github.com/prysmaticlabs/prysm/shared/p2p",
visibility = ["//visibility:public"],
deps = [
"//proto/sharding/v1:go_default_library",
"//proto/beacon/p2p/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"@com_github_ethereum_go_ethereum//event:go_default_library",
"@com_github_golang_protobuf//proto:go_default_library",
"@com_github_libp2p_go_floodsub//:go_default_library",
@ -41,7 +42,7 @@ go_test(
],
embed = [":go_default_library"],
deps = [
"//proto/sharding/v1:go_default_library",
"//proto/sharding/p2p/v1:go_default_library",
"//shared:go_default_library",
"@com_github_ethereum_go_ethereum//event:go_default_library",
"@com_github_golang_protobuf//proto:go_default_library",

View File

@ -8,7 +8,7 @@ import (
peer "github.com/libp2p/go-libp2p-peer"
ps "github.com/libp2p/go-libp2p-peerstore"
mdns "github.com/libp2p/go-libp2p/p2p/discovery"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
shardpb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/sirupsen/logrus"
)
@ -68,8 +68,8 @@ func (d *discovery) HandlePeerFound(pi ps.PeerInfo) {
// topicPeerMap helper function for inspecting which peers are available for
// the p2p topics.
func (d *discovery) topicPeerMap() map[pb.Topic][]peer.ID {
m := make(map[pb.Topic][]peer.ID)
func (d *discovery) topicPeerMap() map[shardpb.Topic][]peer.ID {
m := make(map[shardpb.Topic][]peer.ID)
for topic := range topicTypeMapping {
peers := d.gsub.ListPeers(topic.String())
m[topic] = peers

View File

@ -21,7 +21,7 @@ import (
floodsub "github.com/libp2p/go-floodsub"
libp2p "github.com/libp2p/go-libp2p"
host "github.com/libp2p/go-libp2p-host"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
shardpb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
)
// Sender represents a struct that is able to relay information via p2p.
@ -117,7 +117,7 @@ func (s *Server) Broadcast(msg interface{}) {
"topic": topic,
}).Debugf("Broadcasting msg %T", msg)
if topic == pb.Topic_UNKNOWN {
if topic == shardpb.Topic_UNKNOWN {
log.Warnf("Topic is unknown for message type %T. %v", msg, msg)
}
@ -138,7 +138,7 @@ func (s *Server) Broadcast(msg interface{}) {
}
}
func (s *Server) subscribeToTopic(topic pb.Topic, msgType reflect.Type) {
func (s *Server) subscribeToTopic(topic shardpb.Topic, msgType reflect.Type) {
sub, err := s.gsub.Subscribe(topic.String())
if err != nil {
log.Errorf("Failed to subscribe to topic: %v", err)

View File

@ -15,7 +15,7 @@ import (
floodsub "github.com/libp2p/go-floodsub"
swarmt "github.com/libp2p/go-libp2p-swarm/testing"
bhost "github.com/libp2p/go-libp2p/p2p/host/basic"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
shardpb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
"github.com/sirupsen/logrus"
logTest "github.com/sirupsen/logrus/hooks/test"
)
@ -62,7 +62,7 @@ func TestBroadcast(t *testing.T) {
t.Fatalf("Could not start a new server: %v", err)
}
msg := &pb.CollationBodyRequest{}
msg := &shardpb.CollationBodyRequest{}
s.Broadcast(msg)
// TODO: test that topic was published
@ -86,7 +86,7 @@ func TestSubscribeToTopic(t *testing.T) {
mutex: &sync.Mutex{},
}
feed := s.Feed(pb.CollationBodyRequest{})
feed := s.Feed(shardpb.CollationBodyRequest{})
ch := make(chan Message)
sub := feed.Subscribe(ch)
defer sub.Unsubscribe()
@ -113,14 +113,14 @@ func TestSubscribe(t *testing.T) {
}
ch := make(chan Message)
sub := s.Subscribe(pb.CollationBodyRequest{}, ch)
sub := s.Subscribe(shardpb.CollationBodyRequest{}, ch)
defer sub.Unsubscribe()
testSubscribe(ctx, t, s, gsub, ch)
}
func testSubscribe(ctx context.Context, t *testing.T, s Server, gsub *floodsub.PubSub, ch chan Message) {
topic := pb.Topic_COLLATION_BODY_REQUEST
topic := shardpb.Topic_COLLATION_BODY_REQUEST
msgType := topicTypeMapping[topic]
go s.subscribeToTopic(topic, msgType)
@ -133,7 +133,7 @@ func testSubscribe(ctx context.Context, t *testing.T, s Server, gsub *floodsub.P
t.Errorf("Unexpected subscribed topics: %v. Wanted %s", topics, topic)
}
pbMsg := &pb.CollationBodyRequest{ShardId: 5}
pbMsg := &shardpb.CollationBodyRequest{ShardId: 5}
done := make(chan bool)
go func() {

View File

@ -3,35 +3,36 @@ package p2p
import (
"reflect"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
beaconpb "github.com/prysmaticlabs/prysm/proto/beacon/p2p/v1"
shardpb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
)
// Mapping of message topic enums to protobuf types.
var topicTypeMapping = map[pb.Topic]reflect.Type{
pb.Topic_BEACON_BLOCK_HASH_ANNOUNCE: reflect.TypeOf(pb.BeaconBlockHashAnnounce{}),
pb.Topic_BEACON_BLOCK_REQUEST: reflect.TypeOf(pb.BeaconBlockRequest{}),
pb.Topic_BEACON_BLOCK_RESPONSE: reflect.TypeOf(pb.BeaconBlockResponse{}),
pb.Topic_COLLATION_BODY_REQUEST: reflect.TypeOf(pb.CollationBodyRequest{}),
pb.Topic_COLLATION_BODY_RESPONSE: reflect.TypeOf(pb.CollationBodyResponse{}),
pb.Topic_TRANSACTIONS: reflect.TypeOf(pb.Transaction{}),
var topicTypeMapping = map[shardpb.Topic]reflect.Type{
shardpb.Topic_COLLATION_BODY_REQUEST: reflect.TypeOf(shardpb.CollationBodyRequest{}),
shardpb.Topic_COLLATION_BODY_RESPONSE: reflect.TypeOf(shardpb.CollationBodyResponse{}),
shardpb.Topic_TRANSACTIONS: reflect.TypeOf(shardpb.Transaction{}),
shardpb.Topic_BEACON_BLOCK_HASH_ANNOUNCE: reflect.TypeOf(beaconpb.BeaconBlockHashAnnounce{}),
shardpb.Topic_BEACON_BLOCK_REQUEST: reflect.TypeOf(beaconpb.BeaconBlockRequest{}),
shardpb.Topic_BEACON_BLOCK_RESPONSE: reflect.TypeOf(beaconpb.BeaconBlockResponse{}),
}
// Mapping of message types to topic enums.
var typeTopicMapping = reverseMapping(topicTypeMapping)
// ReverseMapping from K,V to V,K
func reverseMapping(m map[pb.Topic]reflect.Type) map[reflect.Type]pb.Topic {
n := make(map[reflect.Type]pb.Topic)
func reverseMapping(m map[shardpb.Topic]reflect.Type) map[reflect.Type]shardpb.Topic {
n := make(map[reflect.Type]shardpb.Topic)
for k, v := range m {
n[v] = k
}
return n
}
// Topic returns the given topic for a given interface. This is the preferred
// These functions return the given topic for a given interface. This is the preferred
// way to resolve a topic from an value. The msg could be a pointer or value
// argument to resolve to the correct topic.
func topic(msg interface{}) pb.Topic {
func topic(msg interface{}) shardpb.Topic {
msgType := reflect.TypeOf(msg)
if msgType.Kind() == reflect.Ptr {
msgType = reflect.Indirect(reflect.ValueOf(msg)).Type()

View File

@ -4,22 +4,22 @@ import (
"reflect"
"testing"
pb "github.com/prysmaticlabs/prysm/proto/sharding/v1"
shardpb "github.com/prysmaticlabs/prysm/proto/sharding/p2p/v1"
)
type testStruct struct{}
func TestReverseMapping(t *testing.T) {
tests := []struct {
input map[pb.Topic]reflect.Type
want map[reflect.Type]pb.Topic
input map[shardpb.Topic]reflect.Type
want map[reflect.Type]shardpb.Topic
}{
{
input: map[pb.Topic]reflect.Type{
pb.Topic_UNKNOWN: reflect.TypeOf(testStruct{}),
input: map[shardpb.Topic]reflect.Type{
shardpb.Topic_UNKNOWN: reflect.TypeOf(testStruct{}),
},
want: map[reflect.Type]pb.Topic{
reflect.TypeOf(testStruct{}): pb.Topic_UNKNOWN,
want: map[reflect.Type]shardpb.Topic{
reflect.TypeOf(testStruct{}): shardpb.Topic_UNKNOWN,
},
},
}
@ -37,19 +37,19 @@ func TestTopic(t *testing.T) {
tests := []struct {
input interface{}
want pb.Topic
want shardpb.Topic
}{
{
input: pb.CollationBodyRequest{},
want: pb.Topic_COLLATION_BODY_REQUEST,
input: shardpb.CollationBodyRequest{},
want: shardpb.Topic_COLLATION_BODY_REQUEST,
},
{
input: &pb.CollationBodyRequest{},
want: pb.Topic_COLLATION_BODY_REQUEST,
input: &shardpb.CollationBodyRequest{},
want: shardpb.Topic_COLLATION_BODY_REQUEST,
},
{
input: CustomStruct{},
want: pb.Topic_UNKNOWN,
want: shardpb.Topic_UNKNOWN,
},
}