var GossipMessage_Tag_name = map[int32]string{ 0: "UNDEFINED", 1: "EMPTY", 2: "ORG_ONLY", 3: "CHAN_ONLY", 4: "CHAN_AND_ORG", 5: "CHAN_OR_ORG", }
var GossipMessage_Tag_value = map[string]int32{ "UNDEFINED": 0, "EMPTY": 1, "ORG_ONLY": 2, "CHAN_ONLY": 3, "CHAN_AND_ORG": 4, "CHAN_OR_ORG": 5, }
var PullMsgType_name = map[int32]string{ 0: "UNDEFINED", 1: "BLOCK_MSG", 2: "IDENTITY_MSG", }
var PullMsgType_value = map[string]int32{ "UNDEFINED": 0, "BLOCK_MSG": 1, "IDENTITY_MSG": 2, }
func NewGossipMessageComparator(dataBlockStorageSize int) common.MessageReplacingPolicy
NewGossipMessageComparator creates a MessageReplacingPolicy given a maximum number of blocks to hold
func RegisterGossipServer(s *grpc.Server, srv GossipServer)
type Acknowledgement struct { Error string `protobuf:"bytes,1,opt,name=error,proto3" json:"error,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Acknowledgement) Descriptor() ([]byte, []int)
func (m *Acknowledgement) GetError() string
func (*Acknowledgement) ProtoMessage()
func (m *Acknowledgement) Reset()
func (m *Acknowledgement) String() string
func (m *Acknowledgement) XXX_DiscardUnknown()
func (m *Acknowledgement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Acknowledgement) XXX_Merge(src proto.Message)
func (m *Acknowledgement) XXX_Size() int
func (m *Acknowledgement) XXX_Unmarshal(b []byte) error
AliveMessage is sent to inform remote peers of a peer's existence and activity
type AliveMessage struct { Membership *Member `protobuf:"bytes,1,opt,name=membership,proto3" json:"membership,omitempty"` Timestamp *PeerTime `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` Identity []byte `protobuf:"bytes,4,opt,name=identity,proto3" json:"identity,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*AliveMessage) Descriptor() ([]byte, []int)
func (m *AliveMessage) GetIdentity() []byte
func (m *AliveMessage) GetMembership() *Member
func (m *AliveMessage) GetTimestamp() *PeerTime
func (*AliveMessage) ProtoMessage()
func (m *AliveMessage) Reset()
func (m *AliveMessage) String() string
func (m *AliveMessage) XXX_DiscardUnknown()
func (m *AliveMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *AliveMessage) XXX_Merge(src proto.Message)
func (m *AliveMessage) XXX_Size() int
func (m *AliveMessage) XXX_Unmarshal(b []byte) error
AuthInfo represents the authentication data that was provided by the remote peer at the connection time
type AuthInfo struct { SignedData []byte Signature []byte }
Chaincode represents a Chaincode that is installed on a peer
type Chaincode struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` Metadata []byte `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Chaincode) Descriptor() ([]byte, []int)
func (m *Chaincode) GetMetadata() []byte
func (m *Chaincode) GetName() string
func (m *Chaincode) GetVersion() string
func (*Chaincode) ProtoMessage()
func (m *Chaincode) Reset()
func (m *Chaincode) String() string
func (m *Chaincode) XXX_DiscardUnknown()
func (m *Chaincode) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Chaincode) XXX_Merge(src proto.Message)
func (m *Chaincode) XXX_Size() int
func (m *Chaincode) XXX_Unmarshal(b []byte) error
ConnEstablish is the message used for the gossip handshake Whenever a peer connects to another peer, it handshakes with it by sending this message that proves its identity
type ConnEstablish struct { PkiId []byte `protobuf:"bytes,1,opt,name=pki_id,json=pkiId,proto3" json:"pki_id,omitempty"` Identity []byte `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` TlsCertHash []byte `protobuf:"bytes,3,opt,name=tls_cert_hash,json=tlsCertHash,proto3" json:"tls_cert_hash,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*ConnEstablish) Descriptor() ([]byte, []int)
func (m *ConnEstablish) GetIdentity() []byte
func (m *ConnEstablish) GetPkiId() []byte
func (m *ConnEstablish) GetTlsCertHash() []byte
func (*ConnEstablish) ProtoMessage()
func (m *ConnEstablish) Reset()
func (m *ConnEstablish) String() string
func (m *ConnEstablish) XXX_DiscardUnknown()
func (m *ConnEstablish) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *ConnEstablish) XXX_Merge(src proto.Message)
func (m *ConnEstablish) XXX_Size() int
func (m *ConnEstablish) XXX_Unmarshal(b []byte) error
ConnectionInfo represents information about the remote peer that sent a certain ReceivedMessage
type ConnectionInfo struct { ID common.PKIidType Auth *AuthInfo Identity api.PeerIdentityType Endpoint string }
func (c *ConnectionInfo) String() string
String returns a string representation of this ConnectionInfo
DataDigest is the message sent from the receiver peer to the initator peer and contains the data items it has
type DataDigest struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` Digests [][]byte `protobuf:"bytes,2,rep,name=digests,proto3" json:"digests,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,proto3,enum=gossip.PullMsgType" json:"msg_type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DataDigest) Descriptor() ([]byte, []int)
func (dd *DataDigest) FormattedDigests() []string
func (m *DataDigest) GetDigests() [][]byte
func (m *DataDigest) GetMsgType() PullMsgType
func (m *DataDigest) GetNonce() uint64
func (*DataDigest) ProtoMessage()
func (m *DataDigest) Reset()
func (m *DataDigest) String() string
func (m *DataDigest) XXX_DiscardUnknown()
func (m *DataDigest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *DataDigest) XXX_Merge(src proto.Message)
func (m *DataDigest) XXX_Size() int
func (m *DataDigest) XXX_Unmarshal(b []byte) error
DataMessage is the message that contains a block
type DataMessage struct { Payload *Payload `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DataMessage) Descriptor() ([]byte, []int)
func (m *DataMessage) GetPayload() *Payload
func (*DataMessage) ProtoMessage()
func (m *DataMessage) Reset()
func (m *DataMessage) String() string
func (m *DataMessage) XXX_DiscardUnknown()
func (m *DataMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *DataMessage) XXX_Merge(src proto.Message)
func (m *DataMessage) XXX_Size() int
func (m *DataMessage) XXX_Unmarshal(b []byte) error
DataRequest is a message used for a peer to request certain data blocks from a remote peer
type DataRequest struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` Digests [][]byte `protobuf:"bytes,2,rep,name=digests,proto3" json:"digests,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,proto3,enum=gossip.PullMsgType" json:"msg_type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DataRequest) Descriptor() ([]byte, []int)
func (dd *DataRequest) FormattedDigests() []string
func (m *DataRequest) GetDigests() [][]byte
func (m *DataRequest) GetMsgType() PullMsgType
func (m *DataRequest) GetNonce() uint64
func (*DataRequest) ProtoMessage()
func (m *DataRequest) Reset()
func (m *DataRequest) String() string
func (m *DataRequest) XXX_DiscardUnknown()
func (m *DataRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *DataRequest) XXX_Merge(src proto.Message)
func (m *DataRequest) XXX_Size() int
func (m *DataRequest) XXX_Unmarshal(b []byte) error
DataUpdate is the final message in the pull phase sent from the receiver to the initiator
type DataUpdate struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` Data []*Envelope `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,proto3,enum=gossip.PullMsgType" json:"msg_type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DataUpdate) Descriptor() ([]byte, []int)
func (m *DataUpdate) GetData() []*Envelope
func (m *DataUpdate) GetMsgType() PullMsgType
func (m *DataUpdate) GetNonce() uint64
func (*DataUpdate) ProtoMessage()
func (m *DataUpdate) Reset()
func (m *DataUpdate) String() string
func (m *DataUpdate) XXX_DiscardUnknown()
func (m *DataUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *DataUpdate) XXX_Merge(src proto.Message)
func (m *DataUpdate) XXX_Size() int
func (m *DataUpdate) XXX_Unmarshal(b []byte) error
Empty is used for pinging and in tests
type Empty struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Empty) Descriptor() ([]byte, []int)
func (*Empty) ProtoMessage()
func (m *Empty) Reset()
func (m *Empty) String() string
func (m *Empty) XXX_DiscardUnknown()
func (m *Empty) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Empty) XXX_Merge(src proto.Message)
func (m *Empty) XXX_Size() int
func (m *Empty) XXX_Unmarshal(b []byte) error
Envelope contains a marshalled GossipMessage and a signature over it. It may also contain a SecretEnvelope which is a marshalled Secret
type Envelope struct { Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` SecretEnvelope *SecretEnvelope `protobuf:"bytes,3,opt,name=secret_envelope,json=secretEnvelope,proto3" json:"secret_envelope,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Envelope) Descriptor() ([]byte, []int)
func (m *Envelope) GetPayload() []byte
func (m *Envelope) GetSecretEnvelope() *SecretEnvelope
func (m *Envelope) GetSignature() []byte
func (*Envelope) ProtoMessage()
func (m *Envelope) Reset()
func (e *Envelope) SignSecret(signer Signer, secret *Secret) error
SignSecret signs the secret payload and creates a secret envelope out of it.
func (m *Envelope) String() string
func (e *Envelope) ToGossipMessage() (*SignedGossipMessage, error)
ToGossipMessage un-marshals a given envelope and creates a SignedGossipMessage out of it. Returns an error if un-marshaling fails.
func (m *Envelope) XXX_DiscardUnknown()
func (m *Envelope) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Envelope) XXX_Merge(src proto.Message)
func (m *Envelope) XXX_Size() int
func (m *Envelope) XXX_Unmarshal(b []byte) error
GossipClient is the client API for Gossip service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type GossipClient interface { // GossipStream is the gRPC stream used for sending and receiving messages GossipStream(ctx context.Context, opts ...grpc.CallOption) (Gossip_GossipStreamClient, error) // Ping is used to probe a remote peer's aliveness Ping(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) }
func NewGossipClient(cc *grpc.ClientConn) GossipClient
GossipHello is the message that is used for the peer to initiate a pull round with another peer
type GossipHello struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` Metadata []byte `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,proto3,enum=gossip.PullMsgType" json:"msg_type,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*GossipHello) Descriptor() ([]byte, []int)
func (m *GossipHello) GetMetadata() []byte
func (m *GossipHello) GetMsgType() PullMsgType
func (m *GossipHello) GetNonce() uint64
func (*GossipHello) ProtoMessage()
func (m *GossipHello) Reset()
func (m *GossipHello) String() string
func (m *GossipHello) XXX_DiscardUnknown()
func (m *GossipHello) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *GossipHello) XXX_Merge(src proto.Message)
func (m *GossipHello) XXX_Size() int
func (m *GossipHello) XXX_Unmarshal(b []byte) error
GossipMessage defines the message sent in a gossip network
type GossipMessage struct { // used mainly for testing, but will might be used in the future // for ensuring message delivery by acking Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"` // The channel of the message. // Some GossipMessages may set this to nil, because // they are cross-channels but some may not Channel []byte `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"` // determines to which peers it is allowed // to forward the message Tag GossipMessage_Tag `protobuf:"varint,3,opt,name=tag,proto3,enum=gossip.GossipMessage_Tag" json:"tag,omitempty"` // Types that are valid to be assigned to Content: // *GossipMessage_AliveMsg // *GossipMessage_MemReq // *GossipMessage_MemRes // *GossipMessage_DataMsg // *GossipMessage_Hello // *GossipMessage_DataDig // *GossipMessage_DataReq // *GossipMessage_DataUpdate // *GossipMessage_Empty // *GossipMessage_Conn // *GossipMessage_StateInfo // *GossipMessage_StateSnapshot // *GossipMessage_StateInfoPullReq // *GossipMessage_StateRequest // *GossipMessage_StateResponse // *GossipMessage_LeadershipMsg // *GossipMessage_PeerIdentity // *GossipMessage_Ack // *GossipMessage_PrivateReq // *GossipMessage_PrivateRes // *GossipMessage_PrivateData Content isGossipMessage_Content `protobuf_oneof:"content"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*GossipMessage) Descriptor() ([]byte, []int)
func (m *GossipMessage) GetAck() *Acknowledgement
func (m *GossipMessage) GetAliveMsg() *AliveMessage
func (m *GossipMessage) GetChannel() []byte
func (m *GossipMessage) GetConn() *ConnEstablish
func (m *GossipMessage) GetContent() isGossipMessage_Content
func (m *GossipMessage) GetDataDig() *DataDigest
func (m *GossipMessage) GetDataMsg() *DataMessage
func (m *GossipMessage) GetDataReq() *DataRequest
func (m *GossipMessage) GetDataUpdate() *DataUpdate
func (m *GossipMessage) GetEmpty() *Empty
func (m *GossipMessage) GetHello() *GossipHello
func (m *GossipMessage) GetLeadershipMsg() *LeadershipMessage
func (m *GossipMessage) GetMemReq() *MembershipRequest
func (m *GossipMessage) GetMemRes() *MembershipResponse
func (m *GossipMessage) GetNonce() uint64
func (m *GossipMessage) GetPeerIdentity() *PeerIdentity
func (m *GossipMessage) GetPrivateData() *PrivateDataMessage
func (m *GossipMessage) GetPrivateReq() *RemotePvtDataRequest
func (m *GossipMessage) GetPrivateRes() *RemotePvtDataResponse
func (m *GossipMessage) GetPullMsgType() PullMsgType
GetPullMsgType returns the phase of the pull mechanism this GossipMessage belongs to for example: Hello, Digest, etc. If this isn't a pull message, PullMsgType_UNDEFINED is returned.
func (m *GossipMessage) GetStateInfo() *StateInfo
func (m *GossipMessage) GetStateInfoPullReq() *StateInfoPullRequest
func (m *GossipMessage) GetStateRequest() *RemoteStateRequest
func (m *GossipMessage) GetStateResponse() *RemoteStateResponse
func (m *GossipMessage) GetStateSnapshot() *StateInfoSnapshot
func (m *GossipMessage) GetTag() GossipMessage_Tag
func (m *GossipMessage) IsAck() bool
IsAck returns whether this GossipMessage is an acknowledgement
func (m *GossipMessage) IsAliveMsg() bool
IsAliveMsg returns whether this GossipMessage is an AliveMessage
func (m *GossipMessage) IsChannelRestricted() bool
IsChannelRestricted returns whether this GossipMessage should be routed only in its channel
func (m *GossipMessage) IsDataMsg() bool
IsDataMsg returns whether this GossipMessage is a data message
func (m *GossipMessage) IsDataReq() bool
IsDataReq returns whether this GossipMessage is a data request message
func (m *GossipMessage) IsDataUpdate() bool
IsDataUpdate returns whether this GossipMessage is a data update message
func (m *GossipMessage) IsDigestMsg() bool
IsDigestMsg returns whether this GossipMessage is a digest message
func (m *GossipMessage) IsHelloMsg() bool
IsHelloMsg returns whether this GossipMessage is a hello message
func (m *GossipMessage) IsIdentityMsg() bool
IsIdentityMsg returns whether this GossipMessage is an identity message
func (m *GossipMessage) IsLeadershipMsg() bool
IsLeadershipMsg returns whether this GossipMessage is a leadership (leader election) message
func (m *GossipMessage) IsOrgRestricted() bool
IsOrgRestricted returns whether this GossipMessage should be routed only inside the organization
func (m *GossipMessage) IsPrivateDataMsg() bool
IsPrivateDataMsg returns whether this message is related to private data
func (m *GossipMessage) IsPullMsg() bool
IsPullMsg returns whether this GossipMessage is a message that belongs to the pull mechanism
func (m *GossipMessage) IsRemoteStateMessage() bool
IsRemoteStateMessage returns whether this GossipMessage is related to state synchronization
func (m *GossipMessage) IsStateInfoMsg() bool
IsStateInfoMsg returns whether this GossipMessage is a stateInfo message
func (m *GossipMessage) IsStateInfoPullRequestMsg() bool
IsStateInfoPullRequestMsg returns whether this GossipMessage is a stateInfoPullRequest
func (m *GossipMessage) IsStateInfoSnapshot() bool
IsStateInfoSnapshot returns whether this GossipMessage is a stateInfo snapshot
func (m *GossipMessage) IsTagLegal() error
IsTagLegal checks the GossipMessage tags and inner type and returns an error if the tag doesn't match the type.
func (m *GossipMessage) NoopSign() (*SignedGossipMessage, error)
NoopSign creates a SignedGossipMessage with a nil signature
func (*GossipMessage) ProtoMessage()
func (m *GossipMessage) Reset()
func (m *GossipMessage) String() string
func (m *GossipMessage) XXX_DiscardUnknown()
func (m *GossipMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *GossipMessage) XXX_Merge(src proto.Message)
func (*GossipMessage) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
func (m *GossipMessage) XXX_Size() int
func (m *GossipMessage) XXX_Unmarshal(b []byte) error
type GossipMessage_Ack struct { Ack *Acknowledgement `protobuf:"bytes,22,opt,name=ack,proto3,oneof"` }
type GossipMessage_AliveMsg struct { AliveMsg *AliveMessage `protobuf:"bytes,5,opt,name=alive_msg,json=aliveMsg,proto3,oneof"` }
type GossipMessage_Conn struct { Conn *ConnEstablish `protobuf:"bytes,14,opt,name=conn,proto3,oneof"` }
type GossipMessage_DataDig struct { DataDig *DataDigest `protobuf:"bytes,10,opt,name=data_dig,json=dataDig,proto3,oneof"` }
type GossipMessage_DataMsg struct { DataMsg *DataMessage `protobuf:"bytes,8,opt,name=data_msg,json=dataMsg,proto3,oneof"` }
type GossipMessage_DataReq struct { DataReq *DataRequest `protobuf:"bytes,11,opt,name=data_req,json=dataReq,proto3,oneof"` }
type GossipMessage_DataUpdate struct { DataUpdate *DataUpdate `protobuf:"bytes,12,opt,name=data_update,json=dataUpdate,proto3,oneof"` }
type GossipMessage_Empty struct { Empty *Empty `protobuf:"bytes,13,opt,name=empty,proto3,oneof"` }
type GossipMessage_Hello struct { Hello *GossipHello `protobuf:"bytes,9,opt,name=hello,proto3,oneof"` }
type GossipMessage_LeadershipMsg struct { LeadershipMsg *LeadershipMessage `protobuf:"bytes,20,opt,name=leadership_msg,json=leadershipMsg,proto3,oneof"` }
type GossipMessage_MemReq struct { MemReq *MembershipRequest `protobuf:"bytes,6,opt,name=mem_req,json=memReq,proto3,oneof"` }
type GossipMessage_MemRes struct { MemRes *MembershipResponse `protobuf:"bytes,7,opt,name=mem_res,json=memRes,proto3,oneof"` }
type GossipMessage_PeerIdentity struct { PeerIdentity *PeerIdentity `protobuf:"bytes,21,opt,name=peer_identity,json=peerIdentity,proto3,oneof"` }
type GossipMessage_PrivateData struct { PrivateData *PrivateDataMessage `protobuf:"bytes,25,opt,name=private_data,json=privateData,proto3,oneof"` }
type GossipMessage_PrivateReq struct { PrivateReq *RemotePvtDataRequest `protobuf:"bytes,23,opt,name=privateReq,proto3,oneof"` }
type GossipMessage_PrivateRes struct { PrivateRes *RemotePvtDataResponse `protobuf:"bytes,24,opt,name=privateRes,proto3,oneof"` }
type GossipMessage_StateInfo struct { StateInfo *StateInfo `protobuf:"bytes,15,opt,name=state_info,json=stateInfo,proto3,oneof"` }
type GossipMessage_StateInfoPullReq struct { StateInfoPullReq *StateInfoPullRequest `protobuf:"bytes,17,opt,name=state_info_pull_req,json=stateInfoPullReq,proto3,oneof"` }
type GossipMessage_StateRequest struct { StateRequest *RemoteStateRequest `protobuf:"bytes,18,opt,name=state_request,json=stateRequest,proto3,oneof"` }
type GossipMessage_StateResponse struct { StateResponse *RemoteStateResponse `protobuf:"bytes,19,opt,name=state_response,json=stateResponse,proto3,oneof"` }
type GossipMessage_StateSnapshot struct { StateSnapshot *StateInfoSnapshot `protobuf:"bytes,16,opt,name=state_snapshot,json=stateSnapshot,proto3,oneof"` }
type GossipMessage_Tag int32
const ( GossipMessage_UNDEFINED GossipMessage_Tag = 0 GossipMessage_EMPTY GossipMessage_Tag = 1 GossipMessage_ORG_ONLY GossipMessage_Tag = 2 GossipMessage_CHAN_ONLY GossipMessage_Tag = 3 GossipMessage_CHAN_AND_ORG GossipMessage_Tag = 4 GossipMessage_CHAN_OR_ORG GossipMessage_Tag = 5 )
func (GossipMessage_Tag) EnumDescriptor() ([]byte, []int)
func (x GossipMessage_Tag) String() string
GossipServer is the server API for Gossip service.
type GossipServer interface { // GossipStream is the gRPC stream used for sending and receiving messages GossipStream(Gossip_GossipStreamServer) error // Ping is used to probe a remote peer's aliveness Ping(context.Context, *Empty) (*Empty, error) }
type Gossip_GossipStreamClient interface { Send(*Envelope) error Recv() (*Envelope, error) grpc.ClientStream }
type Gossip_GossipStreamServer interface { Send(*Envelope) error Recv() (*Envelope, error) grpc.ServerStream }
IdentifierExtractor extracts from a SignedGossipMessage an identifier
type IdentifierExtractor func(*SignedGossipMessage) string
Leadership Message is sent during leader election to inform remote peers about intent of peer to proclaim itself as leader
type LeadershipMessage struct { PkiId []byte `protobuf:"bytes,1,opt,name=pki_id,json=pkiId,proto3" json:"pki_id,omitempty"` Timestamp *PeerTime `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` IsDeclaration bool `protobuf:"varint,3,opt,name=is_declaration,json=isDeclaration,proto3" json:"is_declaration,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*LeadershipMessage) Descriptor() ([]byte, []int)
func (m *LeadershipMessage) GetIsDeclaration() bool
func (m *LeadershipMessage) GetPkiId() []byte
func (m *LeadershipMessage) GetTimestamp() *PeerTime
func (*LeadershipMessage) ProtoMessage()
func (m *LeadershipMessage) Reset()
func (m *LeadershipMessage) String() string
func (m *LeadershipMessage) XXX_DiscardUnknown()
func (m *LeadershipMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *LeadershipMessage) XXX_Merge(src proto.Message)
func (m *LeadershipMessage) XXX_Size() int
func (m *LeadershipMessage) XXX_Unmarshal(b []byte) error
Member holds membership-related information about a peer
type Member struct { Endpoint string `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"` Metadata []byte `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` PkiId []byte `protobuf:"bytes,3,opt,name=pki_id,json=pkiId,proto3" json:"pki_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Member) Descriptor() ([]byte, []int)
func (m *Member) GetEndpoint() string
func (m *Member) GetMetadata() []byte
func (m *Member) GetPkiId() []byte
func (*Member) ProtoMessage()
func (m *Member) Reset()
func (m *Member) String() string
func (m *Member) XXX_DiscardUnknown()
func (m *Member) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Member) XXX_Merge(src proto.Message)
func (m *Member) XXX_Size() int
func (m *Member) XXX_Unmarshal(b []byte) error
MembershipRequest is used to ask membership information from a remote peer
type MembershipRequest struct { SelfInformation *Envelope `protobuf:"bytes,1,opt,name=self_information,json=selfInformation,proto3" json:"self_information,omitempty"` Known [][]byte `protobuf:"bytes,2,rep,name=known,proto3" json:"known,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*MembershipRequest) Descriptor() ([]byte, []int)
func (m *MembershipRequest) GetKnown() [][]byte
func (m *MembershipRequest) GetSelfInformation() *Envelope
func (*MembershipRequest) ProtoMessage()
func (m *MembershipRequest) Reset()
func (m *MembershipRequest) String() string
func (m *MembershipRequest) XXX_DiscardUnknown()
func (m *MembershipRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *MembershipRequest) XXX_Merge(src proto.Message)
func (m *MembershipRequest) XXX_Size() int
func (m *MembershipRequest) XXX_Unmarshal(b []byte) error
MembershipResponse is used for replying to MembershipRequests
type MembershipResponse struct { Alive []*Envelope `protobuf:"bytes,1,rep,name=alive,proto3" json:"alive,omitempty"` Dead []*Envelope `protobuf:"bytes,2,rep,name=dead,proto3" json:"dead,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*MembershipResponse) Descriptor() ([]byte, []int)
func (m *MembershipResponse) GetAlive() []*Envelope
func (m *MembershipResponse) GetDead() []*Envelope
func (*MembershipResponse) ProtoMessage()
func (m *MembershipResponse) Reset()
func (m *MembershipResponse) String() string
func (m *MembershipResponse) XXX_DiscardUnknown()
func (m *MembershipResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *MembershipResponse) XXX_Merge(src proto.Message)
func (m *MembershipResponse) XXX_Size() int
func (m *MembershipResponse) XXX_Unmarshal(b []byte) error
MsgConsumer invokes code given a SignedGossipMessage
type MsgConsumer func(message *SignedGossipMessage)
Payload contains a block
type Payload struct { SeqNum uint64 `protobuf:"varint,1,opt,name=seq_num,json=seqNum,proto3" json:"seq_num,omitempty"` Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"` PrivateData [][]byte `protobuf:"bytes,3,rep,name=private_data,json=privateData,proto3" json:"private_data,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Payload) Descriptor() ([]byte, []int)
func (m *Payload) GetData() []byte
func (m *Payload) GetPrivateData() [][]byte
func (m *Payload) GetSeqNum() uint64
func (*Payload) ProtoMessage()
func (m *Payload) Reset()
func (m *Payload) String() string
func (m *Payload) XXX_DiscardUnknown()
func (m *Payload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Payload) XXX_Merge(src proto.Message)
func (m *Payload) XXX_Size() int
func (m *Payload) XXX_Unmarshal(b []byte) error
PeerIdentity defines the identity of the peer Used to make other peers learn of the identity of a certain peer
type PeerIdentity struct { PkiId []byte `protobuf:"bytes,1,opt,name=pki_id,json=pkiId,proto3" json:"pki_id,omitempty"` Cert []byte `protobuf:"bytes,2,opt,name=cert,proto3" json:"cert,omitempty"` Metadata []byte `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PeerIdentity) Descriptor() ([]byte, []int)
func (m *PeerIdentity) GetCert() []byte
func (m *PeerIdentity) GetMetadata() []byte
func (m *PeerIdentity) GetPkiId() []byte
func (*PeerIdentity) ProtoMessage()
func (m *PeerIdentity) Reset()
func (m *PeerIdentity) String() string
func (m *PeerIdentity) XXX_DiscardUnknown()
func (m *PeerIdentity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PeerIdentity) XXX_Merge(src proto.Message)
func (m *PeerIdentity) XXX_Size() int
func (m *PeerIdentity) XXX_Unmarshal(b []byte) error
PeerTime defines the logical time of a peer's life
type PeerTime struct { IncNum uint64 `protobuf:"varint,1,opt,name=inc_num,json=incNum,proto3" json:"inc_num,omitempty"` SeqNum uint64 `protobuf:"varint,2,opt,name=seq_num,json=seqNum,proto3" json:"seq_num,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PeerTime) Descriptor() ([]byte, []int)
func (m *PeerTime) GetIncNum() uint64
func (m *PeerTime) GetSeqNum() uint64
func (*PeerTime) ProtoMessage()
func (m *PeerTime) Reset()
func (m *PeerTime) String() string
func (m *PeerTime) XXX_DiscardUnknown()
func (m *PeerTime) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PeerTime) XXX_Merge(src proto.Message)
func (m *PeerTime) XXX_Size() int
func (m *PeerTime) XXX_Unmarshal(b []byte) error
PrivateDataMessage message which includes private data information to distributed once transaction has been endorsed
type PrivateDataMessage struct { Payload *PrivatePayload `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PrivateDataMessage) Descriptor() ([]byte, []int)
func (m *PrivateDataMessage) GetPayload() *PrivatePayload
func (*PrivateDataMessage) ProtoMessage()
func (m *PrivateDataMessage) Reset()
func (m *PrivateDataMessage) String() string
func (m *PrivateDataMessage) XXX_DiscardUnknown()
func (m *PrivateDataMessage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PrivateDataMessage) XXX_Merge(src proto.Message)
func (m *PrivateDataMessage) XXX_Size() int
func (m *PrivateDataMessage) XXX_Unmarshal(b []byte) error
PrivatePayload payload to encapsulate private data with collection name to enable routing based on collection partitioning
type PrivatePayload struct { CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName,proto3" json:"collection_name,omitempty"` Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` TxId string `protobuf:"bytes,3,opt,name=tx_id,json=txId,proto3" json:"tx_id,omitempty"` PrivateRwset []byte `protobuf:"bytes,4,opt,name=private_rwset,json=privateRwset,proto3" json:"private_rwset,omitempty"` PrivateSimHeight uint64 `protobuf:"varint,5,opt,name=private_sim_height,json=privateSimHeight,proto3" json:"private_sim_height,omitempty"` CollectionConfigs *common.CollectionConfigPackage `protobuf:"bytes,6,opt,name=collection_configs,json=collectionConfigs,proto3" json:"collection_configs,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PrivatePayload) Descriptor() ([]byte, []int)
func (m *PrivatePayload) GetCollectionConfigs() *common.CollectionConfigPackage
func (m *PrivatePayload) GetCollectionName() string
func (m *PrivatePayload) GetNamespace() string
func (m *PrivatePayload) GetPrivateRwset() []byte
func (m *PrivatePayload) GetPrivateSimHeight() uint64
func (m *PrivatePayload) GetTxId() string
func (*PrivatePayload) ProtoMessage()
func (m *PrivatePayload) Reset()
func (m *PrivatePayload) String() string
func (m *PrivatePayload) XXX_DiscardUnknown()
func (m *PrivatePayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PrivatePayload) XXX_Merge(src proto.Message)
func (m *PrivatePayload) XXX_Size() int
func (m *PrivatePayload) XXX_Unmarshal(b []byte) error
type Properties struct { LedgerHeight uint64 `protobuf:"varint,1,opt,name=ledger_height,json=ledgerHeight,proto3" json:"ledger_height,omitempty"` LeftChannel bool `protobuf:"varint,2,opt,name=left_channel,json=leftChannel,proto3" json:"left_channel,omitempty"` Chaincodes []*Chaincode `protobuf:"bytes,3,rep,name=chaincodes,proto3" json:"chaincodes,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Properties) Descriptor() ([]byte, []int)
func (m *Properties) GetChaincodes() []*Chaincode
func (m *Properties) GetLedgerHeight() uint64
func (m *Properties) GetLeftChannel() bool
func (*Properties) ProtoMessage()
func (m *Properties) Reset()
func (m *Properties) String() string
func (m *Properties) XXX_DiscardUnknown()
func (m *Properties) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Properties) XXX_Merge(src proto.Message)
func (m *Properties) XXX_Size() int
func (m *Properties) XXX_Unmarshal(b []byte) error
type PullMsgType int32
const ( PullMsgType_UNDEFINED PullMsgType = 0 PullMsgType_BLOCK_MSG PullMsgType = 1 PullMsgType_IDENTITY_MSG PullMsgType = 2 )
func (PullMsgType) EnumDescriptor() ([]byte, []int)
func (x PullMsgType) String() string
PvtDataDigest defines a digest of private data
type PvtDataDigest struct { TxId string `protobuf:"bytes,1,opt,name=tx_id,json=txId,proto3" json:"tx_id,omitempty"` Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"` Collection string `protobuf:"bytes,3,opt,name=collection,proto3" json:"collection,omitempty"` BlockSeq uint64 `protobuf:"varint,4,opt,name=block_seq,json=blockSeq,proto3" json:"block_seq,omitempty"` SeqInBlock uint64 `protobuf:"varint,5,opt,name=seq_in_block,json=seqInBlock,proto3" json:"seq_in_block,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PvtDataDigest) Descriptor() ([]byte, []int)
func (m *PvtDataDigest) GetBlockSeq() uint64
func (m *PvtDataDigest) GetCollection() string
func (m *PvtDataDigest) GetNamespace() string
func (m *PvtDataDigest) GetSeqInBlock() uint64
func (m *PvtDataDigest) GetTxId() string
func (dig *PvtDataDigest) Hash() (string, error)
Hash returns the SHA256 representation of the PvtDataDigest's bytes
func (*PvtDataDigest) ProtoMessage()
func (m *PvtDataDigest) Reset()
func (m *PvtDataDigest) String() string
func (m *PvtDataDigest) XXX_DiscardUnknown()
func (m *PvtDataDigest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PvtDataDigest) XXX_Merge(src proto.Message)
func (m *PvtDataDigest) XXX_Size() int
func (m *PvtDataDigest) XXX_Unmarshal(b []byte) error
type PvtDataElement struct { Digest *PvtDataDigest `protobuf:"bytes,1,opt,name=digest,proto3" json:"digest,omitempty"` // the payload is a marshaled kvrwset.KVRWSet Payload [][]byte `protobuf:"bytes,2,rep,name=payload,proto3" json:"payload,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PvtDataElement) Descriptor() ([]byte, []int)
func (m *PvtDataElement) GetDigest() *PvtDataDigest
func (m *PvtDataElement) GetPayload() [][]byte
func (*PvtDataElement) ProtoMessage()
func (m *PvtDataElement) Reset()
func (m *PvtDataElement) String() string
func (m *PvtDataElement) XXX_DiscardUnknown()
func (m *PvtDataElement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PvtDataElement) XXX_Merge(src proto.Message)
func (m *PvtDataElement) XXX_Size() int
func (m *PvtDataElement) XXX_Unmarshal(b []byte) error
PvtPayload augments private rwset data and tx index inside the block
type PvtDataPayload struct { TxSeqInBlock uint64 `protobuf:"varint,1,opt,name=tx_seq_in_block,json=txSeqInBlock,proto3" json:"tx_seq_in_block,omitempty"` // Encodes marhslaed bytes of rwset.TxPvtReadWriteSet // defined in rwset.proto Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PvtDataPayload) Descriptor() ([]byte, []int)
func (m *PvtDataPayload) GetPayload() []byte
func (m *PvtDataPayload) GetTxSeqInBlock() uint64
func (*PvtDataPayload) ProtoMessage()
func (m *PvtDataPayload) Reset()
func (m *PvtDataPayload) String() string
func (m *PvtDataPayload) XXX_DiscardUnknown()
func (m *PvtDataPayload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *PvtDataPayload) XXX_Merge(src proto.Message)
func (m *PvtDataPayload) XXX_Size() int
func (m *PvtDataPayload) XXX_Unmarshal(b []byte) error
ReceivedMessage is a GossipMessage wrapper that enables the user to send a message to the origin from which the ReceivedMessage was sent from. It also allows to know the identity of the sender, to obtain the raw bytes the GossipMessage was un-marshaled from, and the signature over these raw bytes.
type ReceivedMessage interface { // Respond sends a GossipMessage to the origin from which this ReceivedMessage was sent from Respond(msg *GossipMessage) // GetGossipMessage returns the underlying GossipMessage GetGossipMessage() *SignedGossipMessage // GetSourceMessage Returns the Envelope the ReceivedMessage was // constructed with GetSourceEnvelope() *Envelope // GetConnectionInfo returns information about the remote peer // that sent the message GetConnectionInfo() *ConnectionInfo // Ack returns to the sender an acknowledgement for the message // An ack can receive an error that indicates that the operation related // to the message has failed Ack(err error) }
RemotePrivateDataRequest message used to request missing private rwset
type RemotePvtDataRequest struct { Digests []*PvtDataDigest `protobuf:"bytes,1,rep,name=digests,proto3" json:"digests,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RemotePvtDataRequest) Descriptor() ([]byte, []int)
func (m *RemotePvtDataRequest) GetDigests() []*PvtDataDigest
func (*RemotePvtDataRequest) ProtoMessage()
func (m *RemotePvtDataRequest) Reset()
func (m *RemotePvtDataRequest) String() string
func (m *RemotePvtDataRequest) XXX_DiscardUnknown()
func (m *RemotePvtDataRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *RemotePvtDataRequest) XXX_Merge(src proto.Message)
func (m *RemotePvtDataRequest) XXX_Size() int
func (m *RemotePvtDataRequest) XXX_Unmarshal(b []byte) error
RemotePrivateData message to response on private data replication request
type RemotePvtDataResponse struct { Elements []*PvtDataElement `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RemotePvtDataResponse) Descriptor() ([]byte, []int)
func (m *RemotePvtDataResponse) GetElements() []*PvtDataElement
func (*RemotePvtDataResponse) ProtoMessage()
func (m *RemotePvtDataResponse) Reset()
func (m *RemotePvtDataResponse) String() string
func (res *RemotePvtDataResponse) ToString() string
ToString returns a string representation of this RemotePvtDataResponse
func (m *RemotePvtDataResponse) XXX_DiscardUnknown()
func (m *RemotePvtDataResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *RemotePvtDataResponse) XXX_Merge(src proto.Message)
func (m *RemotePvtDataResponse) XXX_Size() int
func (m *RemotePvtDataResponse) XXX_Unmarshal(b []byte) error
RemoteStateRequest is used to ask a set of blocks from a remote peer
type RemoteStateRequest struct { StartSeqNum uint64 `protobuf:"varint,1,opt,name=start_seq_num,json=startSeqNum,proto3" json:"start_seq_num,omitempty"` EndSeqNum uint64 `protobuf:"varint,2,opt,name=end_seq_num,json=endSeqNum,proto3" json:"end_seq_num,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RemoteStateRequest) Descriptor() ([]byte, []int)
func (m *RemoteStateRequest) GetEndSeqNum() uint64
func (m *RemoteStateRequest) GetStartSeqNum() uint64
func (*RemoteStateRequest) ProtoMessage()
func (m *RemoteStateRequest) Reset()
func (m *RemoteStateRequest) String() string
func (m *RemoteStateRequest) XXX_DiscardUnknown()
func (m *RemoteStateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *RemoteStateRequest) XXX_Merge(src proto.Message)
func (m *RemoteStateRequest) XXX_Size() int
func (m *RemoteStateRequest) XXX_Unmarshal(b []byte) error
RemoteStateResponse is used to send a set of blocks to a remote peer
type RemoteStateResponse struct { Payloads []*Payload `protobuf:"bytes,1,rep,name=payloads,proto3" json:"payloads,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RemoteStateResponse) Descriptor() ([]byte, []int)
func (m *RemoteStateResponse) GetPayloads() []*Payload
func (*RemoteStateResponse) ProtoMessage()
func (m *RemoteStateResponse) Reset()
func (m *RemoteStateResponse) String() string
func (m *RemoteStateResponse) XXX_DiscardUnknown()
func (m *RemoteStateResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *RemoteStateResponse) XXX_Merge(src proto.Message)
func (m *RemoteStateResponse) XXX_Size() int
func (m *RemoteStateResponse) XXX_Unmarshal(b []byte) error
Secret is an entity that might be omitted from an Envelope when the remote peer that is receiving the Envelope shouldn't know the secret's content.
type Secret struct { // Types that are valid to be assigned to Content: // *Secret_InternalEndpoint Content isSecret_Content `protobuf_oneof:"content"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Secret) Descriptor() ([]byte, []int)
func (m *Secret) GetContent() isSecret_Content
func (m *Secret) GetInternalEndpoint() string
func (*Secret) ProtoMessage()
func (m *Secret) Reset()
func (m *Secret) String() string
func (m *Secret) XXX_DiscardUnknown()
func (m *Secret) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *Secret) XXX_Merge(src proto.Message)
func (*Secret) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})
XXX_OneofFuncs is for the internal use of the proto package.
func (m *Secret) XXX_Size() int
func (m *Secret) XXX_Unmarshal(b []byte) error
SecretEnvelope is a marshalled Secret and a signature over it. The signature should be validated by the peer that signed the Envelope the SecretEnvelope came with
type SecretEnvelope struct { Payload []byte `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"` Signature []byte `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*SecretEnvelope) Descriptor() ([]byte, []int)
func (m *SecretEnvelope) GetPayload() []byte
func (m *SecretEnvelope) GetSignature() []byte
func (s *SecretEnvelope) InternalEndpoint() string
InternalEndpoint returns the internal endpoint in the secret envelope, or an empty string if a failure occurs.
func (*SecretEnvelope) ProtoMessage()
func (m *SecretEnvelope) Reset()
func (m *SecretEnvelope) String() string
func (m *SecretEnvelope) XXX_DiscardUnknown()
func (m *SecretEnvelope) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *SecretEnvelope) XXX_Merge(src proto.Message)
func (m *SecretEnvelope) XXX_Size() int
func (m *SecretEnvelope) XXX_Unmarshal(b []byte) error
type Secret_InternalEndpoint struct { InternalEndpoint string `protobuf:"bytes,1,opt,name=internalEndpoint,proto3,oneof"` }
SignedGossipMessage contains a GossipMessage and the Envelope from which it came from
type SignedGossipMessage struct { *Envelope *GossipMessage }
func (m *SignedGossipMessage) IsSigned() bool
IsSigned returns whether the message has a signature in the envelope.
func (m *SignedGossipMessage) Sign(signer Signer) (*Envelope, error)
Sign signs a GossipMessage with given Signer. Returns an Envelope on success, panics on failure.
func (m *SignedGossipMessage) String() string
String returns a string representation of a SignedGossipMessage
func (m *SignedGossipMessage) Verify(peerIdentity []byte, verify Verifier) error
Verify verifies a signed GossipMessage with a given Verifier. Returns nil on success, error on failure.
Signer signs a message, and returns (signature, nil) on success, and nil and an error on failure.
type Signer func(msg []byte) ([]byte, error)
StateInfo is used for a peer to relay its state information to other peers
type StateInfo struct { Timestamp *PeerTime `protobuf:"bytes,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"` PkiId []byte `protobuf:"bytes,3,opt,name=pki_id,json=pkiId,proto3" json:"pki_id,omitempty"` // channel_MAC is an authentication code that proves // that the peer that sent this message knows // the name of the channel. Channel_MAC []byte `protobuf:"bytes,4,opt,name=channel_MAC,json=channelMAC,proto3" json:"channel_MAC,omitempty"` Properties *Properties `protobuf:"bytes,5,opt,name=properties,proto3" json:"properties,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*StateInfo) Descriptor() ([]byte, []int)
func (m *StateInfo) GetChannel_MAC() []byte
func (m *StateInfo) GetPkiId() []byte
func (m *StateInfo) GetProperties() *Properties
func (m *StateInfo) GetTimestamp() *PeerTime
func (msg *StateInfo) LedgerHeight() (uint64, error)
LedgerHeight returns the ledger height that is specified in the StateInfo message
func (*StateInfo) ProtoMessage()
func (m *StateInfo) Reset()
func (m *StateInfo) String() string
func (m *StateInfo) XXX_DiscardUnknown()
func (m *StateInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *StateInfo) XXX_Merge(src proto.Message)
func (m *StateInfo) XXX_Size() int
func (m *StateInfo) XXX_Unmarshal(b []byte) error
StateInfoPullRequest is used to fetch a StateInfoSnapshot from a remote peer
type StateInfoPullRequest struct { // channel_MAC is an authentication code that proves // that the peer that sent this message knows // the name of the channel. Channel_MAC []byte `protobuf:"bytes,1,opt,name=channel_MAC,json=channelMAC,proto3" json:"channel_MAC,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*StateInfoPullRequest) Descriptor() ([]byte, []int)
func (m *StateInfoPullRequest) GetChannel_MAC() []byte
func (*StateInfoPullRequest) ProtoMessage()
func (m *StateInfoPullRequest) Reset()
func (m *StateInfoPullRequest) String() string
func (m *StateInfoPullRequest) XXX_DiscardUnknown()
func (m *StateInfoPullRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *StateInfoPullRequest) XXX_Merge(src proto.Message)
func (m *StateInfoPullRequest) XXX_Size() int
func (m *StateInfoPullRequest) XXX_Unmarshal(b []byte) error
StateInfoSnapshot is an aggregation of StateInfo messages
type StateInfoSnapshot struct { Elements []*Envelope `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*StateInfoSnapshot) Descriptor() ([]byte, []int)
func (m *StateInfoSnapshot) GetElements() []*Envelope
func (*StateInfoSnapshot) ProtoMessage()
func (m *StateInfoSnapshot) Reset()
func (m *StateInfoSnapshot) String() string
func (m *StateInfoSnapshot) XXX_DiscardUnknown()
func (m *StateInfoSnapshot) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (dst *StateInfoSnapshot) XXX_Merge(src proto.Message)
func (m *StateInfoSnapshot) XXX_Size() int
func (m *StateInfoSnapshot) XXX_Unmarshal(b []byte) error
Verifier receives a peer identity, a signature and a message and returns nil if the signature on the message could be verified using the given identity.
type Verifier func(peerIdentity []byte, signature, message []byte) error