Documentation ¶
Overview ¶
Package gossip is a generated protocol buffer package.
It is generated from these files:
gossip/message.proto
It has these top-level messages:
Envelope SecretEnvelope Secret GossipMessage StateInfo Properties StateInfoSnapshot StateInfoPullRequest ConnEstablish PeerIdentity DataRequest GossipHello DataUpdate DataDigest DataMessage PrivateDataMessage Payload PrivatePayload AliveMessage LeadershipMessage PeerTime MembershipRequest MembershipResponse Member Empty RemoteStateRequest RemoteStateResponse RemotePvtDataRequest PvtDataDigest RemotePvtDataResponse PvtDataElement PvtDataPayload Acknowledgement
Index ¶
- Variables
- func NewGossipMessageComparator(dataBlockStorageSize int) common.MessageReplacingPolicy
- func RegisterGossipServer(s *grpc.Server, srv GossipServer)
- type Acknowledgement
- type AliveMessage
- type AuthInfo
- type ConnEstablish
- type ConnectionInfo
- type DataDigest
- func (*DataDigest) Descriptor() ([]byte, []int)
- func (dd *DataDigest) FormattedDigests() []string
- func (m *DataDigest) GetDigests() []string
- func (m *DataDigest) GetMsgType() PullMsgType
- func (m *DataDigest) GetNonce() uint64
- func (*DataDigest) ProtoMessage()
- func (m *DataDigest) Reset()
- func (m *DataDigest) String() string
- type DataMessage
- type DataRequest
- func (*DataRequest) Descriptor() ([]byte, []int)
- func (dd *DataRequest) FormattedDigests() []string
- func (m *DataRequest) GetDigests() []string
- func (m *DataRequest) GetMsgType() PullMsgType
- func (m *DataRequest) GetNonce() uint64
- func (*DataRequest) ProtoMessage()
- func (m *DataRequest) Reset()
- func (m *DataRequest) String() string
- type DataUpdate
- type Empty
- type Envelope
- 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
- func (m *Envelope) String() string
- func (e *Envelope) ToGossipMessage() (*SignedGossipMessage, error)
- type GossipClient
- type GossipHello
- type GossipMessage
- 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
- 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
- func (m *GossipMessage) IsAliveMsg() bool
- func (m *GossipMessage) IsChannelRestricted() bool
- func (m *GossipMessage) IsDataMsg() bool
- func (m *GossipMessage) IsDataReq() bool
- func (m *GossipMessage) IsDataUpdate() bool
- func (m *GossipMessage) IsDigestMsg() bool
- func (m *GossipMessage) IsHelloMsg() bool
- func (m *GossipMessage) IsIdentityMsg() bool
- func (m *GossipMessage) IsLeadershipMsg() bool
- func (m *GossipMessage) IsOrgRestricted() bool
- func (m *GossipMessage) IsPrivateDataMsg() bool
- func (m *GossipMessage) IsPullMsg() bool
- func (m *GossipMessage) IsRemoteStateMessage() bool
- func (m *GossipMessage) IsStateInfoMsg() bool
- func (m *GossipMessage) IsStateInfoPullRequestMsg() bool
- func (m *GossipMessage) IsStateInfoSnapshot() bool
- func (m *GossipMessage) IsTagLegal() error
- func (m *GossipMessage) NoopSign() (*SignedGossipMessage, error)
- func (*GossipMessage) ProtoMessage()
- func (m *GossipMessage) Reset()
- func (m *GossipMessage) String() string
- func (*GossipMessage) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- type GossipMessage_Ack
- type GossipMessage_AliveMsg
- type GossipMessage_Conn
- type GossipMessage_DataDig
- type GossipMessage_DataMsg
- type GossipMessage_DataReq
- type GossipMessage_DataUpdate
- type GossipMessage_Empty
- type GossipMessage_Hello
- type GossipMessage_LeadershipMsg
- type GossipMessage_MemReq
- type GossipMessage_MemRes
- type GossipMessage_PeerIdentity
- type GossipMessage_PrivateData
- type GossipMessage_PrivateReq
- type GossipMessage_PrivateRes
- type GossipMessage_StateInfo
- type GossipMessage_StateInfoPullReq
- type GossipMessage_StateRequest
- type GossipMessage_StateResponse
- type GossipMessage_StateSnapshot
- type GossipMessage_Tag
- type GossipServer
- type Gossip_GossipStreamClient
- type Gossip_GossipStreamServer
- type IdentifierExtractor
- type LeadershipMessage
- 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
- type Member
- type MembershipRequest
- type MembershipResponse
- type MsgConsumer
- type Payload
- type PeerIdentity
- type PeerTime
- type PrivateDataMessage
- type PrivatePayload
- func (*PrivatePayload) Descriptor() ([]byte, []int)
- func (m *PrivatePayload) GetCollectionName() string
- func (m *PrivatePayload) GetNamespace() string
- func (m *PrivatePayload) GetPrivateRwset() []byte
- func (m *PrivatePayload) GetTxId() string
- func (*PrivatePayload) ProtoMessage()
- func (m *PrivatePayload) Reset()
- func (m *PrivatePayload) String() string
- type Properties
- type PullMsgType
- type PvtDataDigest
- 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)
- func (*PvtDataDigest) ProtoMessage()
- func (m *PvtDataDigest) Reset()
- func (m *PvtDataDigest) String() string
- type PvtDataElement
- type PvtDataPayload
- type ReceivedMessage
- type RemotePvtDataRequest
- type RemotePvtDataResponse
- 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
- type RemoteStateRequest
- type RemoteStateResponse
- type Secret
- 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 (*Secret) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, ...)
- type SecretEnvelope
- func (*SecretEnvelope) Descriptor() ([]byte, []int)
- func (m *SecretEnvelope) GetPayload() []byte
- func (m *SecretEnvelope) GetSignature() []byte
- func (s *SecretEnvelope) InternalEndpoint() string
- func (*SecretEnvelope) ProtoMessage()
- func (m *SecretEnvelope) Reset()
- func (m *SecretEnvelope) String() string
- type Secret_InternalEndpoint
- type SignedGossipMessage
- type Signer
- type StateInfo
- func (*StateInfo) Descriptor() ([]byte, []int)
- func (m *StateInfo) GetChannel_MAC() []byte
- func (m *StateInfo) GetMetadata() []byte
- func (m *StateInfo) GetPkiId() []byte
- func (m *StateInfo) GetProperties() *Properties
- func (m *StateInfo) GetTimestamp() *PeerTime
- func (msg *StateInfo) LedgerHeight() (uint64, error)
- func (*StateInfo) ProtoMessage()
- func (m *StateInfo) Reset()
- func (m *StateInfo) String() string
- type StateInfoPullRequest
- type StateInfoSnapshot
- type Verifier
Constants ¶
This section is empty.
Variables ¶
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,
}
Functions ¶
func NewGossipMessageComparator ¶
func NewGossipMessageComparator(dataBlockStorageSize int) common.MessageReplacingPolicy
NewGossipMessageComparator creates a MessageReplacingPolicy given a maximum number of blocks to hold
func RegisterGossipServer ¶
func RegisterGossipServer(s *grpc.Server, srv GossipServer)
Types ¶
type Acknowledgement ¶ added in v1.1.0
type Acknowledgement struct {
Error string `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
}
func (*Acknowledgement) Descriptor ¶ added in v1.1.0
func (*Acknowledgement) Descriptor() ([]byte, []int)
func (*Acknowledgement) GetError ¶ added in v1.1.0
func (m *Acknowledgement) GetError() string
func (*Acknowledgement) ProtoMessage ¶ added in v1.1.0
func (*Acknowledgement) ProtoMessage()
func (*Acknowledgement) Reset ¶ added in v1.1.0
func (m *Acknowledgement) Reset()
func (*Acknowledgement) String ¶ added in v1.1.0
func (m *Acknowledgement) String() string
type AliveMessage ¶
type AliveMessage struct { Membership *Member `protobuf:"bytes,1,opt,name=membership" json:"membership,omitempty"` Timestamp *PeerTime `protobuf:"bytes,2,opt,name=timestamp" json:"timestamp,omitempty"` Identity []byte `protobuf:"bytes,4,opt,name=identity,proto3" json:"identity,omitempty"` }
AliveMessage is sent to inform remote peers of a peer's existence and activity
func (*AliveMessage) Descriptor ¶
func (*AliveMessage) Descriptor() ([]byte, []int)
func (*AliveMessage) GetIdentity ¶
func (m *AliveMessage) GetIdentity() []byte
func (*AliveMessage) GetMembership ¶
func (m *AliveMessage) GetMembership() *Member
func (*AliveMessage) GetTimestamp ¶
func (m *AliveMessage) GetTimestamp() *PeerTime
func (*AliveMessage) ProtoMessage ¶
func (*AliveMessage) ProtoMessage()
func (*AliveMessage) Reset ¶
func (m *AliveMessage) Reset()
func (*AliveMessage) String ¶
func (m *AliveMessage) String() string
type AuthInfo ¶
AuthInfo represents the authentication data that was provided by the remote peer at the connection time
type ConnEstablish ¶
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"` }
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
func (*ConnEstablish) Descriptor ¶
func (*ConnEstablish) Descriptor() ([]byte, []int)
func (*ConnEstablish) GetIdentity ¶
func (m *ConnEstablish) GetIdentity() []byte
func (*ConnEstablish) GetPkiId ¶
func (m *ConnEstablish) GetPkiId() []byte
func (*ConnEstablish) GetTlsCertHash ¶
func (m *ConnEstablish) GetTlsCertHash() []byte
func (*ConnEstablish) ProtoMessage ¶
func (*ConnEstablish) ProtoMessage()
func (*ConnEstablish) Reset ¶
func (m *ConnEstablish) Reset()
func (*ConnEstablish) String ¶
func (m *ConnEstablish) String() string
type ConnectionInfo ¶
type ConnectionInfo struct { ID common.PKIidType Auth *AuthInfo Identity api.PeerIdentityType Endpoint string }
ConnectionInfo represents information about the remote peer that sent a certain ReceivedMessage
func (*ConnectionInfo) String ¶
func (c *ConnectionInfo) String() string
String returns a string representation of this ConnectionInfo
type DataDigest ¶
type DataDigest struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce" json:"nonce,omitempty"` Digests []string `protobuf:"bytes,2,rep,name=digests" json:"digests,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,enum=gossip.PullMsgType" json:"msg_type,omitempty"` }
DataDigest is the message sent from the receiver peer to the initator peer and contains the data items it has
func (*DataDigest) Descriptor ¶
func (*DataDigest) Descriptor() ([]byte, []int)
func (*DataDigest) FormattedDigests ¶ added in v1.1.0
func (dd *DataDigest) FormattedDigests() []string
func (*DataDigest) GetDigests ¶
func (m *DataDigest) GetDigests() []string
func (*DataDigest) GetMsgType ¶
func (m *DataDigest) GetMsgType() PullMsgType
func (*DataDigest) GetNonce ¶
func (m *DataDigest) GetNonce() uint64
func (*DataDigest) ProtoMessage ¶
func (*DataDigest) ProtoMessage()
func (*DataDigest) Reset ¶
func (m *DataDigest) Reset()
func (*DataDigest) String ¶
func (m *DataDigest) String() string
type DataMessage ¶
type DataMessage struct {
Payload *Payload `protobuf:"bytes,1,opt,name=payload" json:"payload,omitempty"`
}
DataMessage is the message that contains a block
func (*DataMessage) Descriptor ¶
func (*DataMessage) Descriptor() ([]byte, []int)
func (*DataMessage) GetPayload ¶
func (m *DataMessage) GetPayload() *Payload
func (*DataMessage) ProtoMessage ¶
func (*DataMessage) ProtoMessage()
func (*DataMessage) Reset ¶
func (m *DataMessage) Reset()
func (*DataMessage) String ¶
func (m *DataMessage) String() string
type DataRequest ¶
type DataRequest struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce" json:"nonce,omitempty"` Digests []string `protobuf:"bytes,2,rep,name=digests" json:"digests,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,enum=gossip.PullMsgType" json:"msg_type,omitempty"` }
DataRequest is a message used for a peer to request certain data blocks from a remote peer
func (*DataRequest) Descriptor ¶
func (*DataRequest) Descriptor() ([]byte, []int)
func (*DataRequest) FormattedDigests ¶ added in v1.1.0
func (dd *DataRequest) FormattedDigests() []string
func (*DataRequest) GetDigests ¶
func (m *DataRequest) GetDigests() []string
func (*DataRequest) GetMsgType ¶
func (m *DataRequest) GetMsgType() PullMsgType
func (*DataRequest) GetNonce ¶
func (m *DataRequest) GetNonce() uint64
func (*DataRequest) ProtoMessage ¶
func (*DataRequest) ProtoMessage()
func (*DataRequest) Reset ¶
func (m *DataRequest) Reset()
func (*DataRequest) String ¶
func (m *DataRequest) String() string
type DataUpdate ¶
type DataUpdate struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce" json:"nonce,omitempty"` Data []*Envelope `protobuf:"bytes,2,rep,name=data" json:"data,omitempty"` MsgType PullMsgType `protobuf:"varint,3,opt,name=msg_type,json=msgType,enum=gossip.PullMsgType" json:"msg_type,omitempty"` }
DataUpdate is the final message in the pull phase sent from the receiver to the initiator
func (*DataUpdate) Descriptor ¶
func (*DataUpdate) Descriptor() ([]byte, []int)
func (*DataUpdate) GetData ¶
func (m *DataUpdate) GetData() []*Envelope
func (*DataUpdate) GetMsgType ¶
func (m *DataUpdate) GetMsgType() PullMsgType
func (*DataUpdate) GetNonce ¶
func (m *DataUpdate) GetNonce() uint64
func (*DataUpdate) ProtoMessage ¶
func (*DataUpdate) ProtoMessage()
func (*DataUpdate) Reset ¶
func (m *DataUpdate) Reset()
func (*DataUpdate) String ¶
func (m *DataUpdate) String() string
type Envelope ¶
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" json:"secret_envelope,omitempty"` }
Envelope contains a marshalled GossipMessage and a signature over it. It may also contain a SecretEnvelope which is a marshalled Secret
func (*Envelope) GetSecretEnvelope ¶
func (m *Envelope) GetSecretEnvelope() *SecretEnvelope
func (*Envelope) SignSecret ¶
SignSecret signs the secret payload and creates a secret envelope out of it.
func (*Envelope) ToGossipMessage ¶
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.
type GossipClient ¶
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 ¶
func NewGossipClient(cc *grpc.ClientConn) GossipClient
type GossipHello ¶
type GossipHello struct { Nonce uint64 `protobuf:"varint,1,opt,name=nonce" 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,enum=gossip.PullMsgType" json:"msg_type,omitempty"` }
GossipHello is the message that is used for the peer to initiate a pull round with another peer
func (*GossipHello) Descriptor ¶
func (*GossipHello) Descriptor() ([]byte, []int)
func (*GossipHello) GetMetadata ¶
func (m *GossipHello) GetMetadata() []byte
func (*GossipHello) GetMsgType ¶
func (m *GossipHello) GetMsgType() PullMsgType
func (*GossipHello) GetNonce ¶
func (m *GossipHello) GetNonce() uint64
func (*GossipHello) ProtoMessage ¶
func (*GossipHello) ProtoMessage()
func (*GossipHello) Reset ¶
func (m *GossipHello) Reset()
func (*GossipHello) String ¶
func (m *GossipHello) String() string
type GossipMessage ¶
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" 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,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"` }
GossipMessage defines the message sent in a gossip network
func (*GossipMessage) Descriptor ¶
func (*GossipMessage) Descriptor() ([]byte, []int)
func (*GossipMessage) GetAck ¶ added in v1.1.0
func (m *GossipMessage) GetAck() *Acknowledgement
func (*GossipMessage) GetAliveMsg ¶
func (m *GossipMessage) GetAliveMsg() *AliveMessage
func (*GossipMessage) GetChannel ¶
func (m *GossipMessage) GetChannel() []byte
func (*GossipMessage) GetConn ¶
func (m *GossipMessage) GetConn() *ConnEstablish
func (*GossipMessage) GetContent ¶
func (m *GossipMessage) GetContent() isGossipMessage_Content
func (*GossipMessage) GetDataDig ¶
func (m *GossipMessage) GetDataDig() *DataDigest
func (*GossipMessage) GetDataMsg ¶
func (m *GossipMessage) GetDataMsg() *DataMessage
func (*GossipMessage) GetDataReq ¶
func (m *GossipMessage) GetDataReq() *DataRequest
func (*GossipMessage) GetDataUpdate ¶
func (m *GossipMessage) GetDataUpdate() *DataUpdate
func (*GossipMessage) GetEmpty ¶
func (m *GossipMessage) GetEmpty() *Empty
func (*GossipMessage) GetHello ¶
func (m *GossipMessage) GetHello() *GossipHello
func (*GossipMessage) GetLeadershipMsg ¶
func (m *GossipMessage) GetLeadershipMsg() *LeadershipMessage
func (*GossipMessage) GetMemReq ¶
func (m *GossipMessage) GetMemReq() *MembershipRequest
func (*GossipMessage) GetMemRes ¶
func (m *GossipMessage) GetMemRes() *MembershipResponse
func (*GossipMessage) GetNonce ¶
func (m *GossipMessage) GetNonce() uint64
func (*GossipMessage) GetPeerIdentity ¶
func (m *GossipMessage) GetPeerIdentity() *PeerIdentity
func (*GossipMessage) GetPrivateData ¶ added in v1.1.0
func (m *GossipMessage) GetPrivateData() *PrivateDataMessage
func (*GossipMessage) GetPrivateReq ¶ added in v1.1.0
func (m *GossipMessage) GetPrivateReq() *RemotePvtDataRequest
func (*GossipMessage) GetPrivateRes ¶ added in v1.1.0
func (m *GossipMessage) GetPrivateRes() *RemotePvtDataResponse
func (*GossipMessage) GetPullMsgType ¶
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 (*GossipMessage) GetStateInfo ¶
func (m *GossipMessage) GetStateInfo() *StateInfo
func (*GossipMessage) GetStateInfoPullReq ¶
func (m *GossipMessage) GetStateInfoPullReq() *StateInfoPullRequest
func (*GossipMessage) GetStateRequest ¶
func (m *GossipMessage) GetStateRequest() *RemoteStateRequest
func (*GossipMessage) GetStateResponse ¶
func (m *GossipMessage) GetStateResponse() *RemoteStateResponse
func (*GossipMessage) GetStateSnapshot ¶
func (m *GossipMessage) GetStateSnapshot() *StateInfoSnapshot
func (*GossipMessage) GetTag ¶
func (m *GossipMessage) GetTag() GossipMessage_Tag
func (*GossipMessage) IsAck ¶ added in v1.1.0
func (m *GossipMessage) IsAck() bool
IsAck returns whether this GossipMessage is an acknowledgement
func (*GossipMessage) IsAliveMsg ¶
func (m *GossipMessage) IsAliveMsg() bool
IsAliveMsg returns whether this GossipMessage is an AliveMessage
func (*GossipMessage) IsChannelRestricted ¶
func (m *GossipMessage) IsChannelRestricted() bool
IsChannelRestricted returns whether this GossipMessage should be routed only in its channel
func (*GossipMessage) IsDataMsg ¶
func (m *GossipMessage) IsDataMsg() bool
IsDataMsg returns whether this GossipMessage is a data message
func (*GossipMessage) IsDataReq ¶
func (m *GossipMessage) IsDataReq() bool
IsDataReq returns whether this GossipMessage is a data request message
func (*GossipMessage) IsDataUpdate ¶
func (m *GossipMessage) IsDataUpdate() bool
IsDataUpdate returns whether this GossipMessage is a data update message
func (*GossipMessage) IsDigestMsg ¶
func (m *GossipMessage) IsDigestMsg() bool
IsDigestMsg returns whether this GossipMessage is a digest message
func (*GossipMessage) IsHelloMsg ¶
func (m *GossipMessage) IsHelloMsg() bool
IsHelloMsg returns whether this GossipMessage is a hello message
func (*GossipMessage) IsIdentityMsg ¶
func (m *GossipMessage) IsIdentityMsg() bool
IsIdentityMsg returns whether this GossipMessage is an identity message
func (*GossipMessage) IsLeadershipMsg ¶
func (m *GossipMessage) IsLeadershipMsg() bool
IsLeadershipMsg returns whether this GossipMessage is a leadership (leader election) message
func (*GossipMessage) IsOrgRestricted ¶
func (m *GossipMessage) IsOrgRestricted() bool
IsOrgRestricted returns whether this GossipMessage should be routed only inside the organization
func (*GossipMessage) IsPrivateDataMsg ¶ added in v1.1.0
func (m *GossipMessage) IsPrivateDataMsg() bool
IsPrivateDataMsg returns whether this message is related to private data
func (*GossipMessage) IsPullMsg ¶
func (m *GossipMessage) IsPullMsg() bool
IsPullMsg returns whether this GossipMessage is a message that belongs to the pull mechanism
func (*GossipMessage) IsRemoteStateMessage ¶
func (m *GossipMessage) IsRemoteStateMessage() bool
IsRemoteStateMessage returns whether this GossipMessage is related to state synchronization
func (*GossipMessage) IsStateInfoMsg ¶
func (m *GossipMessage) IsStateInfoMsg() bool
IsStateInfoMsg returns whether this GossipMessage is a stateInfo message
func (*GossipMessage) IsStateInfoPullRequestMsg ¶
func (m *GossipMessage) IsStateInfoPullRequestMsg() bool
IsStateInfoPullRequestMsg returns whether this GossipMessage is a stateInfoPullRequest
func (*GossipMessage) IsStateInfoSnapshot ¶
func (m *GossipMessage) IsStateInfoSnapshot() bool
IsStateInfoSnapshot returns whether this GossipMessage is a stateInfo snapshot
func (*GossipMessage) IsTagLegal ¶
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 (*GossipMessage) NoopSign ¶
func (m *GossipMessage) NoopSign() (*SignedGossipMessage, error)
NoopSign creates a SignedGossipMessage with a nil signature
func (*GossipMessage) ProtoMessage ¶
func (*GossipMessage) ProtoMessage()
func (*GossipMessage) Reset ¶
func (m *GossipMessage) Reset()
func (*GossipMessage) String ¶
func (m *GossipMessage) String() string
func (*GossipMessage) XXX_OneofFuncs ¶
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.
type GossipMessage_Ack ¶ added in v1.1.0
type GossipMessage_Ack struct {
Ack *Acknowledgement `protobuf:"bytes,22,opt,name=ack,oneof"`
}
type GossipMessage_AliveMsg ¶
type GossipMessage_AliveMsg struct {
AliveMsg *AliveMessage `protobuf:"bytes,5,opt,name=alive_msg,json=aliveMsg,oneof"`
}
type GossipMessage_Conn ¶
type GossipMessage_Conn struct {
Conn *ConnEstablish `protobuf:"bytes,14,opt,name=conn,oneof"`
}
type GossipMessage_DataDig ¶
type GossipMessage_DataDig struct {
DataDig *DataDigest `protobuf:"bytes,10,opt,name=data_dig,json=dataDig,oneof"`
}
type GossipMessage_DataMsg ¶
type GossipMessage_DataMsg struct {
DataMsg *DataMessage `protobuf:"bytes,8,opt,name=data_msg,json=dataMsg,oneof"`
}
type GossipMessage_DataReq ¶
type GossipMessage_DataReq struct {
DataReq *DataRequest `protobuf:"bytes,11,opt,name=data_req,json=dataReq,oneof"`
}
type GossipMessage_DataUpdate ¶
type GossipMessage_DataUpdate struct {
DataUpdate *DataUpdate `protobuf:"bytes,12,opt,name=data_update,json=dataUpdate,oneof"`
}
type GossipMessage_Empty ¶
type GossipMessage_Empty struct {
Empty *Empty `protobuf:"bytes,13,opt,name=empty,oneof"`
}
type GossipMessage_Hello ¶
type GossipMessage_Hello struct {
Hello *GossipHello `protobuf:"bytes,9,opt,name=hello,oneof"`
}
type GossipMessage_LeadershipMsg ¶
type GossipMessage_LeadershipMsg struct {
LeadershipMsg *LeadershipMessage `protobuf:"bytes,20,opt,name=leadership_msg,json=leadershipMsg,oneof"`
}
type GossipMessage_MemReq ¶
type GossipMessage_MemReq struct {
MemReq *MembershipRequest `protobuf:"bytes,6,opt,name=mem_req,json=memReq,oneof"`
}
type GossipMessage_MemRes ¶
type GossipMessage_MemRes struct {
MemRes *MembershipResponse `protobuf:"bytes,7,opt,name=mem_res,json=memRes,oneof"`
}
type GossipMessage_PeerIdentity ¶
type GossipMessage_PeerIdentity struct {
PeerIdentity *PeerIdentity `protobuf:"bytes,21,opt,name=peer_identity,json=peerIdentity,oneof"`
}
type GossipMessage_PrivateData ¶ added in v1.1.0
type GossipMessage_PrivateData struct {
PrivateData *PrivateDataMessage `protobuf:"bytes,25,opt,name=private_data,json=privateData,oneof"`
}
type GossipMessage_PrivateReq ¶ added in v1.1.0
type GossipMessage_PrivateReq struct {
PrivateReq *RemotePvtDataRequest `protobuf:"bytes,23,opt,name=privateReq,oneof"`
}
type GossipMessage_PrivateRes ¶ added in v1.1.0
type GossipMessage_PrivateRes struct {
PrivateRes *RemotePvtDataResponse `protobuf:"bytes,24,opt,name=privateRes,oneof"`
}
type GossipMessage_StateInfo ¶
type GossipMessage_StateInfo struct {
StateInfo *StateInfo `protobuf:"bytes,15,opt,name=state_info,json=stateInfo,oneof"`
}
type GossipMessage_StateInfoPullReq ¶
type GossipMessage_StateInfoPullReq struct {
StateInfoPullReq *StateInfoPullRequest `protobuf:"bytes,17,opt,name=state_info_pull_req,json=stateInfoPullReq,oneof"`
}
type GossipMessage_StateRequest ¶
type GossipMessage_StateRequest struct {
StateRequest *RemoteStateRequest `protobuf:"bytes,18,opt,name=state_request,json=stateRequest,oneof"`
}
type GossipMessage_StateResponse ¶
type GossipMessage_StateResponse struct {
StateResponse *RemoteStateResponse `protobuf:"bytes,19,opt,name=state_response,json=stateResponse,oneof"`
}
type GossipMessage_StateSnapshot ¶
type GossipMessage_StateSnapshot struct {
StateSnapshot *StateInfoSnapshot `protobuf:"bytes,16,opt,name=state_snapshot,json=stateSnapshot,oneof"`
}
type GossipMessage_Tag ¶
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 ¶
func (GossipMessage_Tag) EnumDescriptor() ([]byte, []int)
func (GossipMessage_Tag) String ¶
func (x GossipMessage_Tag) String() string
type GossipServer ¶
type Gossip_GossipStreamClient ¶
type Gossip_GossipStreamServer ¶
type IdentifierExtractor ¶
type IdentifierExtractor func(*SignedGossipMessage) string
IdentifierExtractor extracts from a SignedGossipMessage an identifier
type LeadershipMessage ¶
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" json:"timestamp,omitempty"` IsDeclaration bool `protobuf:"varint,3,opt,name=is_declaration,json=isDeclaration" json:"is_declaration,omitempty"` }
Leadership Message is sent during leader election to inform remote peers about intent of peer to proclaim itself as leader
func (*LeadershipMessage) Descriptor ¶
func (*LeadershipMessage) Descriptor() ([]byte, []int)
func (*LeadershipMessage) GetIsDeclaration ¶
func (m *LeadershipMessage) GetIsDeclaration() bool
func (*LeadershipMessage) GetPkiId ¶
func (m *LeadershipMessage) GetPkiId() []byte
func (*LeadershipMessage) GetTimestamp ¶
func (m *LeadershipMessage) GetTimestamp() *PeerTime
func (*LeadershipMessage) ProtoMessage ¶
func (*LeadershipMessage) ProtoMessage()
func (*LeadershipMessage) Reset ¶
func (m *LeadershipMessage) Reset()
func (*LeadershipMessage) String ¶
func (m *LeadershipMessage) String() string
type Member ¶
type Member struct { Endpoint string `protobuf:"bytes,1,opt,name=endpoint" 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"` }
Member holds membership-related information about a peer
type MembershipRequest ¶
type MembershipRequest struct { SelfInformation *Envelope `protobuf:"bytes,1,opt,name=self_information,json=selfInformation" json:"self_information,omitempty"` Known [][]byte `protobuf:"bytes,2,rep,name=known,proto3" json:"known,omitempty"` }
MembershipRequest is used to ask membership information from a remote peer
func (*MembershipRequest) Descriptor ¶
func (*MembershipRequest) Descriptor() ([]byte, []int)
func (*MembershipRequest) GetKnown ¶
func (m *MembershipRequest) GetKnown() [][]byte
func (*MembershipRequest) GetSelfInformation ¶
func (m *MembershipRequest) GetSelfInformation() *Envelope
func (*MembershipRequest) ProtoMessage ¶
func (*MembershipRequest) ProtoMessage()
func (*MembershipRequest) Reset ¶
func (m *MembershipRequest) Reset()
func (*MembershipRequest) String ¶
func (m *MembershipRequest) String() string
type MembershipResponse ¶
type MembershipResponse struct { Alive []*Envelope `protobuf:"bytes,1,rep,name=alive" json:"alive,omitempty"` Dead []*Envelope `protobuf:"bytes,2,rep,name=dead" json:"dead,omitempty"` }
MembershipResponse is used for replying to MembershipRequests
func (*MembershipResponse) Descriptor ¶
func (*MembershipResponse) Descriptor() ([]byte, []int)
func (*MembershipResponse) GetAlive ¶
func (m *MembershipResponse) GetAlive() []*Envelope
func (*MembershipResponse) GetDead ¶
func (m *MembershipResponse) GetDead() []*Envelope
func (*MembershipResponse) ProtoMessage ¶
func (*MembershipResponse) ProtoMessage()
func (*MembershipResponse) Reset ¶
func (m *MembershipResponse) Reset()
func (*MembershipResponse) String ¶
func (m *MembershipResponse) String() string
type MsgConsumer ¶
type MsgConsumer func(message *SignedGossipMessage)
MsgConsumer invokes code given a SignedGossipMessage
type Payload ¶
type Payload struct { SeqNum uint64 `protobuf:"varint,1,opt,name=seq_num,json=seqNum" 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"` }
Payload contains a block
type PeerIdentity ¶
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"` }
PeerIdentity defines the identity of the peer Used to make other peers learn of the identity of a certain peer
func (*PeerIdentity) Descriptor ¶
func (*PeerIdentity) Descriptor() ([]byte, []int)
func (*PeerIdentity) GetCert ¶
func (m *PeerIdentity) GetCert() []byte
func (*PeerIdentity) GetMetadata ¶
func (m *PeerIdentity) GetMetadata() []byte
func (*PeerIdentity) GetPkiId ¶
func (m *PeerIdentity) GetPkiId() []byte
func (*PeerIdentity) ProtoMessage ¶
func (*PeerIdentity) ProtoMessage()
func (*PeerIdentity) Reset ¶
func (m *PeerIdentity) Reset()
func (*PeerIdentity) String ¶
func (m *PeerIdentity) String() string
type PeerTime ¶
type PeerTime struct { IncNum uint64 `protobuf:"varint,1,opt,name=inc_num,json=incNum" json:"inc_num,omitempty"` SeqNum uint64 `protobuf:"varint,2,opt,name=seq_num,json=seqNum" json:"seq_num,omitempty"` }
PeerTime defines the logical time of a peer's life
type PrivateDataMessage ¶ added in v1.1.0
type PrivateDataMessage struct {
Payload *PrivatePayload `protobuf:"bytes,1,opt,name=payload" json:"payload,omitempty"`
}
PrivateDataMessage message which includes private data information to distributed once transaction has been endorsed
func (*PrivateDataMessage) Descriptor ¶ added in v1.1.0
func (*PrivateDataMessage) Descriptor() ([]byte, []int)
func (*PrivateDataMessage) GetPayload ¶ added in v1.1.0
func (m *PrivateDataMessage) GetPayload() *PrivatePayload
func (*PrivateDataMessage) ProtoMessage ¶ added in v1.1.0
func (*PrivateDataMessage) ProtoMessage()
func (*PrivateDataMessage) Reset ¶ added in v1.1.0
func (m *PrivateDataMessage) Reset()
func (*PrivateDataMessage) String ¶ added in v1.1.0
func (m *PrivateDataMessage) String() string
type PrivatePayload ¶ added in v1.1.0
type PrivatePayload struct { CollectionName string `protobuf:"bytes,1,opt,name=collection_name,json=collectionName" json:"collection_name,omitempty"` Namespace string `protobuf:"bytes,2,opt,name=namespace" json:"namespace,omitempty"` TxId string `protobuf:"bytes,3,opt,name=tx_id,json=txId" json:"tx_id,omitempty"` PrivateRwset []byte `protobuf:"bytes,4,opt,name=private_rwset,json=privateRwset,proto3" json:"private_rwset,omitempty"` }
PrivatePayload payload to encapsulate private data with collection name to enable routing based on collection partitioning
func (*PrivatePayload) Descriptor ¶ added in v1.1.0
func (*PrivatePayload) Descriptor() ([]byte, []int)
func (*PrivatePayload) GetCollectionName ¶ added in v1.1.0
func (m *PrivatePayload) GetCollectionName() string
func (*PrivatePayload) GetNamespace ¶ added in v1.1.0
func (m *PrivatePayload) GetNamespace() string
func (*PrivatePayload) GetPrivateRwset ¶ added in v1.1.0
func (m *PrivatePayload) GetPrivateRwset() []byte
func (*PrivatePayload) GetTxId ¶ added in v1.1.0
func (m *PrivatePayload) GetTxId() string
func (*PrivatePayload) ProtoMessage ¶ added in v1.1.0
func (*PrivatePayload) ProtoMessage()
func (*PrivatePayload) Reset ¶ added in v1.1.0
func (m *PrivatePayload) Reset()
func (*PrivatePayload) String ¶ added in v1.1.0
func (m *PrivatePayload) String() string
type Properties ¶ added in v1.1.0
type Properties struct { LedgerHeight uint64 `protobuf:"varint,1,opt,name=ledger_height,json=ledgerHeight" json:"ledger_height,omitempty"` LeftChannel bool `protobuf:"varint,2,opt,name=left_channel,json=leftChannel" json:"left_channel,omitempty"` }
func (*Properties) Descriptor ¶ added in v1.1.0
func (*Properties) Descriptor() ([]byte, []int)
func (*Properties) GetLedgerHeight ¶ added in v1.1.0
func (m *Properties) GetLedgerHeight() uint64
func (*Properties) GetLeftChannel ¶ added in v1.1.0
func (m *Properties) GetLeftChannel() bool
func (*Properties) ProtoMessage ¶ added in v1.1.0
func (*Properties) ProtoMessage()
func (*Properties) Reset ¶ added in v1.1.0
func (m *Properties) Reset()
func (*Properties) String ¶ added in v1.1.0
func (m *Properties) String() string
type PullMsgType ¶
type PullMsgType int32
const ( PullMsgType_UNDEFINED PullMsgType = 0 PullMsgType_BLOCK_MSG PullMsgType = 1 PullMsgType_IDENTITY_MSG PullMsgType = 2 )
func (PullMsgType) EnumDescriptor ¶
func (PullMsgType) EnumDescriptor() ([]byte, []int)
func (PullMsgType) String ¶
func (x PullMsgType) String() string
type PvtDataDigest ¶ added in v1.1.0
type PvtDataDigest struct { TxId string `protobuf:"bytes,1,opt,name=tx_id,json=txId" json:"tx_id,omitempty"` Namespace string `protobuf:"bytes,2,opt,name=namespace" json:"namespace,omitempty"` Collection string `protobuf:"bytes,3,opt,name=collection" json:"collection,omitempty"` BlockSeq uint64 `protobuf:"varint,4,opt,name=block_seq,json=blockSeq" json:"block_seq,omitempty"` SeqInBlock uint64 `protobuf:"varint,5,opt,name=seq_in_block,json=seqInBlock" json:"seq_in_block,omitempty"` }
PvtDataDigest defines a digest of private data
func (*PvtDataDigest) Descriptor ¶ added in v1.1.0
func (*PvtDataDigest) Descriptor() ([]byte, []int)
func (*PvtDataDigest) GetBlockSeq ¶ added in v1.1.0
func (m *PvtDataDigest) GetBlockSeq() uint64
func (*PvtDataDigest) GetCollection ¶ added in v1.1.0
func (m *PvtDataDigest) GetCollection() string
func (*PvtDataDigest) GetNamespace ¶ added in v1.1.0
func (m *PvtDataDigest) GetNamespace() string
func (*PvtDataDigest) GetSeqInBlock ¶ added in v1.1.0
func (m *PvtDataDigest) GetSeqInBlock() uint64
func (*PvtDataDigest) GetTxId ¶ added in v1.1.0
func (m *PvtDataDigest) GetTxId() string
func (*PvtDataDigest) Hash ¶ added in v1.1.0
func (dig *PvtDataDigest) Hash() (string, error)
Hash returns the SHA256 representation of the PvtDataDigest's bytes
func (*PvtDataDigest) ProtoMessage ¶ added in v1.1.0
func (*PvtDataDigest) ProtoMessage()
func (*PvtDataDigest) Reset ¶ added in v1.1.0
func (m *PvtDataDigest) Reset()
func (*PvtDataDigest) String ¶ added in v1.1.0
func (m *PvtDataDigest) String() string
type PvtDataElement ¶ added in v1.1.0
type PvtDataElement struct { Digest *PvtDataDigest `protobuf:"bytes,1,opt,name=digest" json:"digest,omitempty"` // the payload is a marshaled kvrwset.KVRWSet Payload [][]byte `protobuf:"bytes,2,rep,name=payload,proto3" json:"payload,omitempty"` }
func (*PvtDataElement) Descriptor ¶ added in v1.1.0
func (*PvtDataElement) Descriptor() ([]byte, []int)
func (*PvtDataElement) GetDigest ¶ added in v1.1.0
func (m *PvtDataElement) GetDigest() *PvtDataDigest
func (*PvtDataElement) GetPayload ¶ added in v1.1.0
func (m *PvtDataElement) GetPayload() [][]byte
func (*PvtDataElement) ProtoMessage ¶ added in v1.1.0
func (*PvtDataElement) ProtoMessage()
func (*PvtDataElement) Reset ¶ added in v1.1.0
func (m *PvtDataElement) Reset()
func (*PvtDataElement) String ¶ added in v1.1.0
func (m *PvtDataElement) String() string
type PvtDataPayload ¶ added in v1.1.0
type PvtDataPayload struct { TxSeqInBlock uint64 `protobuf:"varint,1,opt,name=tx_seq_in_block,json=txSeqInBlock" 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"` }
PvtPayload augments private rwset data and tx index inside the block
func (*PvtDataPayload) Descriptor ¶ added in v1.1.0
func (*PvtDataPayload) Descriptor() ([]byte, []int)
func (*PvtDataPayload) GetPayload ¶ added in v1.1.0
func (m *PvtDataPayload) GetPayload() []byte
func (*PvtDataPayload) GetTxSeqInBlock ¶ added in v1.1.0
func (m *PvtDataPayload) GetTxSeqInBlock() uint64
func (*PvtDataPayload) ProtoMessage ¶ added in v1.1.0
func (*PvtDataPayload) ProtoMessage()
func (*PvtDataPayload) Reset ¶ added in v1.1.0
func (m *PvtDataPayload) Reset()
func (*PvtDataPayload) String ¶ added in v1.1.0
func (m *PvtDataPayload) String() string
type ReceivedMessage ¶
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) }
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 RemotePvtDataRequest ¶ added in v1.1.0
type RemotePvtDataRequest struct {
Digests []*PvtDataDigest `protobuf:"bytes,1,rep,name=digests" json:"digests,omitempty"`
}
RemotePrivateDataRequest message used to request missing private rwset
func (*RemotePvtDataRequest) Descriptor ¶ added in v1.1.0
func (*RemotePvtDataRequest) Descriptor() ([]byte, []int)
func (*RemotePvtDataRequest) GetDigests ¶ added in v1.1.0
func (m *RemotePvtDataRequest) GetDigests() []*PvtDataDigest
func (*RemotePvtDataRequest) ProtoMessage ¶ added in v1.1.0
func (*RemotePvtDataRequest) ProtoMessage()
func (*RemotePvtDataRequest) Reset ¶ added in v1.1.0
func (m *RemotePvtDataRequest) Reset()
func (*RemotePvtDataRequest) String ¶ added in v1.1.0
func (m *RemotePvtDataRequest) String() string
type RemotePvtDataResponse ¶ added in v1.1.0
type RemotePvtDataResponse struct {
Elements []*PvtDataElement `protobuf:"bytes,1,rep,name=elements" json:"elements,omitempty"`
}
RemotePrivateData message to response on private data replication request
func (*RemotePvtDataResponse) Descriptor ¶ added in v1.1.0
func (*RemotePvtDataResponse) Descriptor() ([]byte, []int)
func (*RemotePvtDataResponse) GetElements ¶ added in v1.1.0
func (m *RemotePvtDataResponse) GetElements() []*PvtDataElement
func (*RemotePvtDataResponse) ProtoMessage ¶ added in v1.1.0
func (*RemotePvtDataResponse) ProtoMessage()
func (*RemotePvtDataResponse) Reset ¶ added in v1.1.0
func (m *RemotePvtDataResponse) Reset()
func (*RemotePvtDataResponse) String ¶ added in v1.1.0
func (m *RemotePvtDataResponse) String() string
func (*RemotePvtDataResponse) ToString ¶ added in v1.1.0
func (res *RemotePvtDataResponse) ToString() string
ToString returns a string representation of this RemotePvtDataResponse
type RemoteStateRequest ¶
type RemoteStateRequest struct { StartSeqNum uint64 `protobuf:"varint,1,opt,name=start_seq_num,json=startSeqNum" json:"start_seq_num,omitempty"` EndSeqNum uint64 `protobuf:"varint,2,opt,name=end_seq_num,json=endSeqNum" json:"end_seq_num,omitempty"` }
RemoteStateRequest is used to ask a set of blocks from a remote peer
func (*RemoteStateRequest) Descriptor ¶
func (*RemoteStateRequest) Descriptor() ([]byte, []int)
func (*RemoteStateRequest) GetEndSeqNum ¶
func (m *RemoteStateRequest) GetEndSeqNum() uint64
func (*RemoteStateRequest) GetStartSeqNum ¶
func (m *RemoteStateRequest) GetStartSeqNum() uint64
func (*RemoteStateRequest) ProtoMessage ¶
func (*RemoteStateRequest) ProtoMessage()
func (*RemoteStateRequest) Reset ¶
func (m *RemoteStateRequest) Reset()
func (*RemoteStateRequest) String ¶
func (m *RemoteStateRequest) String() string
type RemoteStateResponse ¶
type RemoteStateResponse struct {
Payloads []*Payload `protobuf:"bytes,1,rep,name=payloads" json:"payloads,omitempty"`
}
RemoteStateResponse is used to send a set of blocks to a remote peer
func (*RemoteStateResponse) Descriptor ¶
func (*RemoteStateResponse) Descriptor() ([]byte, []int)
func (*RemoteStateResponse) GetPayloads ¶
func (m *RemoteStateResponse) GetPayloads() []*Payload
func (*RemoteStateResponse) ProtoMessage ¶
func (*RemoteStateResponse) ProtoMessage()
func (*RemoteStateResponse) Reset ¶
func (m *RemoteStateResponse) Reset()
func (*RemoteStateResponse) String ¶
func (m *RemoteStateResponse) String() string
type Secret ¶
type Secret struct { // Types that are valid to be assigned to Content: // *Secret_InternalEndpoint Content isSecret_Content `protobuf_oneof:"content"` }
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 SecretEnvelope ¶
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"` }
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
func (*SecretEnvelope) Descriptor ¶
func (*SecretEnvelope) Descriptor() ([]byte, []int)
func (*SecretEnvelope) GetPayload ¶
func (m *SecretEnvelope) GetPayload() []byte
func (*SecretEnvelope) GetSignature ¶
func (m *SecretEnvelope) GetSignature() []byte
func (*SecretEnvelope) InternalEndpoint ¶
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 (*SecretEnvelope) ProtoMessage()
func (*SecretEnvelope) Reset ¶
func (m *SecretEnvelope) Reset()
func (*SecretEnvelope) String ¶
func (m *SecretEnvelope) String() string
type Secret_InternalEndpoint ¶
type Secret_InternalEndpoint struct {
InternalEndpoint string `protobuf:"bytes,1,opt,name=internalEndpoint,oneof"`
}
type SignedGossipMessage ¶
type SignedGossipMessage struct { *Envelope *GossipMessage }
SignedGossipMessage contains a GossipMessage and the Envelope from which it came from
func (*SignedGossipMessage) IsSigned ¶
func (m *SignedGossipMessage) IsSigned() bool
IsSigned returns whether the message has a signature in the envelope.
func (*SignedGossipMessage) Sign ¶
func (m *SignedGossipMessage) Sign(signer Signer) (*Envelope, error)
Sign signs a GossipMessage with given Signer. Returns an Envelope on success, panics on failure.
func (*SignedGossipMessage) String ¶
func (m *SignedGossipMessage) String() string
String returns a string representation of a SignedGossipMessage
func (*SignedGossipMessage) Verify ¶
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.
type Signer ¶
Signer signs a message, and returns (signature, nil) on success, and nil and an error on failure.
type StateInfo ¶
type StateInfo struct { Metadata []byte `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` Timestamp *PeerTime `protobuf:"bytes,2,opt,name=timestamp" 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" json:"properties,omitempty"` }
StateInfo is used for a peer to relay its state information to other peers
func (*StateInfo) GetProperties ¶ added in v1.1.0
func (m *StateInfo) GetProperties() *Properties
func (*StateInfo) LedgerHeight ¶ added in v1.1.0
LedgerHeight returns the ledger height that is specified in the StateInfo message
type StateInfoPullRequest ¶
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"` }
StateInfoPullRequest is used to fetch a StateInfoSnapshot from a remote peer
func (*StateInfoPullRequest) Descriptor ¶
func (*StateInfoPullRequest) Descriptor() ([]byte, []int)
func (*StateInfoPullRequest) GetChannel_MAC ¶
func (m *StateInfoPullRequest) GetChannel_MAC() []byte
func (*StateInfoPullRequest) ProtoMessage ¶
func (*StateInfoPullRequest) ProtoMessage()
func (*StateInfoPullRequest) Reset ¶
func (m *StateInfoPullRequest) Reset()
func (*StateInfoPullRequest) String ¶
func (m *StateInfoPullRequest) String() string
type StateInfoSnapshot ¶
type StateInfoSnapshot struct {
Elements []*Envelope `protobuf:"bytes,1,rep,name=elements" json:"elements,omitempty"`
}
StateInfoSnapshot is an aggregation of StateInfo messages
func (*StateInfoSnapshot) Descriptor ¶
func (*StateInfoSnapshot) Descriptor() ([]byte, []int)
func (*StateInfoSnapshot) GetElements ¶
func (m *StateInfoSnapshot) GetElements() []*Envelope
func (*StateInfoSnapshot) ProtoMessage ¶
func (*StateInfoSnapshot) ProtoMessage()
func (*StateInfoSnapshot) Reset ¶
func (m *StateInfoSnapshot) Reset()
func (*StateInfoSnapshot) String ¶
func (m *StateInfoSnapshot) String() string