shrexeds

package
v0.7.0-rc5 Latest Latest
Warning

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

Go to latest
Published: Feb 16, 2023 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

Client is responsible for requesting EDSs for blocksync over the ShrEx/EDS protocol.

func NewClient

func NewClient(host host.Host, opts ...Option) (*Client, error)

NewClient creates a new ShrEx/EDS client.

func (*Client) RequestEDS

func (c *Client) RequestEDS(
	ctx context.Context,
	dataHash share.DataHash,
	peer peer.ID,
) (*rsmt2d.ExtendedDataSquare, error)

RequestEDS requests the ODS from the given peers and returns the EDS upon success.

type Option

type Option func(*Parameters)

Option is the functional option that is applied to the shrex/eds protocol to configure its parameters.

func WithConcurrencyLimit

func WithConcurrencyLimit(concurrencyLimit int) Option

WithConcurrencyLimit is a functional option that configures the `concurrencyLimit` parameter

func WithProtocolSuffix

func WithProtocolSuffix(protocolSuffix string) Option

WithProtocolSuffix is a functional option that configures the `protocolSuffix` parameter

type Parameters

type Parameters struct {
	// ReadDeadline sets the timeout for reading messages from the stream.
	ReadDeadline time.Duration

	// WriteDeadline sets the timeout for writing messages to the stream.
	WriteDeadline time.Duration

	// ReadCARDeadline defines the deadline for reading a CAR from disk.
	ReadCARDeadline time.Duration

	// BufferSize defines the size of the buffer used for writing an ODS over the stream.
	BufferSize uint64
	// contains filtered or unexported fields
}

Parameters is the set of parameters that must be configured for the shrex/eds protocol.

func DefaultParameters

func DefaultParameters() *Parameters

func (*Parameters) Validate

func (p *Parameters) Validate() error

type Server

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

Server is responsible for serving ODSs for blocksync over the ShrEx/EDS protocol.

func NewServer

func NewServer(host host.Host, store *eds.Store, opts ...Option) (*Server, error)

NewServer creates a new ShrEx/EDS server.

func (*Server) Start

func (s *Server) Start(context.Context) error

func (*Server) Stop

func (s *Server) Stop(context.Context) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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