pubmessage

package
v0.17.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2023 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLength        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflow          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroup = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	// ErrInvalidChannelID is returned for an invalid inner channel ID.
	ErrInvalidChannelID = errors.New("invalid or empty channel id on pubmessage")
)
View Source
var File_github_com_aperturerobotics_bifrost_pubsub_util_pubmessage_pubmessage_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Message

type Message struct {
	// contains filtered or unexported fields
}

Message fulfills the Message type with a PubMessageInner.

func NewMessage

func NewMessage(peerID peer.ID, pktInner *PubMessageInner) *Message

NewMessage constructs a new Message object

func (*Message) GetAuthenticated

func (m *Message) GetAuthenticated() bool

GetAuthenticated indicates if the signature is valid.

func (*Message) GetData

func (m *Message) GetData() []byte

GetData returns the Message data.

func (*Message) GetFrom

func (m *Message) GetFrom() peer.ID

GetFrom returns the peer ID of the sender.

type PubMessageInner

type PubMessageInner struct {

	// Data is the message data.
	Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
	// Channel is the channel.
	Channel string `protobuf:"bytes,2,opt,name=channel,proto3" json:"channel,omitempty"`
	// Timestamp is the message timestamp.
	Timestamp *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// contains filtered or unexported fields
}

PubMessageInner is the signed inner portion of the message.

func ExtractAndVerify

func ExtractAndVerify(msg *peer.SignedMsg) (*PubMessageInner, crypto.PubKey, peer.ID, error)

ExtractAndVerify extracts the inner message from a signed message.

func NewPubMessage

func NewPubMessage(
	channelID string,
	privKey crypto.PrivKey,
	hashType hash.HashType,
	data []byte,
) (*peer.SignedMsg, *PubMessageInner, error)

NewPubMessage constructs/signs/encodes a new pub-message and inner message.

Uses time.Now() for the timestamp: not deterministic.

func (*PubMessageInner) CloneMessageVT added in v0.15.6

func (m *PubMessageInner) CloneMessageVT() proto.Message

func (*PubMessageInner) CloneVT added in v0.8.3

func (m *PubMessageInner) CloneVT() *PubMessageInner

func (*PubMessageInner) Descriptor deprecated

func (*PubMessageInner) Descriptor() ([]byte, []int)

Deprecated: Use PubMessageInner.ProtoReflect.Descriptor instead.

func (*PubMessageInner) EqualMessageVT added in v0.15.6

func (this *PubMessageInner) EqualMessageVT(thatMsg proto.Message) bool

func (*PubMessageInner) EqualVT added in v0.3.0

func (this *PubMessageInner) EqualVT(that *PubMessageInner) bool

func (*PubMessageInner) GetChannel

func (x *PubMessageInner) GetChannel() string

func (*PubMessageInner) GetData

func (x *PubMessageInner) GetData() []byte

func (*PubMessageInner) GetTimestamp

func (x *PubMessageInner) GetTimestamp() *timestamppb.Timestamp

func (*PubMessageInner) MarshalToSizedBufferVT added in v0.2.0

func (m *PubMessageInner) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*PubMessageInner) MarshalToVT added in v0.2.0

func (m *PubMessageInner) MarshalToVT(dAtA []byte) (int, error)

func (*PubMessageInner) MarshalVT added in v0.2.0

func (m *PubMessageInner) MarshalVT() (dAtA []byte, err error)

func (*PubMessageInner) ProtoMessage

func (*PubMessageInner) ProtoMessage()

func (*PubMessageInner) ProtoReflect added in v0.2.0

func (x *PubMessageInner) ProtoReflect() protoreflect.Message

func (*PubMessageInner) Reset

func (x *PubMessageInner) Reset()

func (*PubMessageInner) SizeVT added in v0.2.0

func (m *PubMessageInner) SizeVT() (n int)

func (*PubMessageInner) String

func (x *PubMessageInner) String() string

func (*PubMessageInner) UnmarshalVT added in v0.2.0

func (m *PubMessageInner) UnmarshalVT(dAtA []byte) error

func (*PubMessageInner) Validate

func (i *PubMessageInner) Validate() error

Validate checks the inner data.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL