Documentation
¶
Index ¶
- Variables
- func AssertKeyResponseCallback(expectedKey []byte) func(client.ResponseMetaInfo) error
- func NodeInfoFromNetmapElement(dst *NodeInfo, info interface{ ... })
- func NodeInfoFromRawNetmapElement(dst *NodeInfo, info interface{ ... }) error
- type Client
- type MultiAddressClient
- type NodeInfo
- func (x NodeInfo) AddressGroup() network.AddressGroup
- func (x NodeInfo) ExternalAddressGroup() network.AddressGroup
- func (x *NodeInfo) PublicKey() []byte
- func (x *NodeInfo) SetAddressGroup(v network.AddressGroup)
- func (x *NodeInfo) SetExternalAddressGroup(v network.AddressGroup)
- func (x *NodeInfo) SetPublicKey(v []byte)
Constants ¶
This section is empty.
Variables ¶
var ErrWrongPublicKey = errors.New("public key is different from the key in the network map")
ErrWrongPublicKey is returned when the client's response is signed with a key different from the one declared in the network map.
Functions ¶
func AssertKeyResponseCallback ¶
func AssertKeyResponseCallback(expectedKey []byte) func(client.ResponseMetaInfo) error
AssertKeyResponseCallback returns client response callback which checks if the response was signed by the expected key. Returns ErrWrongPublicKey in case of key mismatch.
func NodeInfoFromNetmapElement ¶
func NodeInfoFromNetmapElement(dst *NodeInfo, info interface { PublicKey() []byte Addresses() network.AddressGroup ExternalAddresses() network.AddressGroup })
NodeInfoFromNetmapElement fills NodeInfo structure from the interface of the parsed netmap member's descriptor.
Args must not be nil.
func NodeInfoFromRawNetmapElement ¶
func NodeInfoFromRawNetmapElement(dst *NodeInfo, info interface { PublicKey() []byte IterateAddresses(func(string) bool) NumberOfAddresses() int ExternalAddresses() []string }) error
NodeInfoFromRawNetmapElement fills NodeInfo structure from the interface of raw netmap member's descriptor.
Args must not be nil.
Types ¶
type Client ¶
type Client interface { ContainerAnnounceUsedSpace(ctx context.Context, announcements []container.SizeEstimation, prm client.PrmAnnounceSpace) error ObjectPutInit(ctx context.Context, header object.Object, signer user.Signer, prm client.PrmObjectPutInit) (client.ObjectWriter, error) ReplicateObject(ctx context.Context, id oid.ID, src io.ReadSeeker, signer neofscrypto.Signer) error ObjectDelete(ctx context.Context, containerID cid.ID, objectID oid.ID, signer user.Signer, prm client.PrmObjectDelete) (oid.ID, error) ObjectGetInit(ctx context.Context, containerID cid.ID, objectID oid.ID, signer user.Signer, prm client.PrmObjectGet) (object.Object, *client.PayloadReader, error) ObjectHead(ctx context.Context, containerID cid.ID, objectID oid.ID, signer user.Signer, prm client.PrmObjectHead) (*object.Object, error) ObjectSearchInit(ctx context.Context, containerID cid.ID, signer user.Signer, prm client.PrmObjectSearch) (*client.ObjectListReader, error) ObjectRangeInit(ctx context.Context, containerID cid.ID, objectID oid.ID, offset, length uint64, signer user.Signer, prm client.PrmObjectRange) (*client.ObjectRangeReader, error) ObjectHash(ctx context.Context, containerID cid.ID, objectID oid.ID, signer user.Signer, prm client.PrmObjectHash) ([][]byte, error) AnnounceLocalTrust(ctx context.Context, epoch uint64, trusts []reputationSDK.Trust, prm client.PrmAnnounceLocalTrust) error AnnounceIntermediateTrust(ctx context.Context, epoch uint64, trust reputationSDK.PeerToPeerTrust, prm client.PrmAnnounceIntermediateTrust) error ExecRaw(f func(client *rawclient.Client) error) error Close() error }
Client is an interface of NeoFS storage node's client.
type MultiAddressClient ¶
type MultiAddressClient interface { Client // RawForAddress must return rawclient.Client // for the passed network.Address. RawForAddress(network.Address, func(cli *rawclient.Client) error) error ReportError(error) }
MultiAddressClient is an interface of the Client that supports multihost work.
type NodeInfo ¶
type NodeInfo struct {
// contains filtered or unexported fields
}
NodeInfo groups information about a NeoFS storage node needed for Client construction.
func (NodeInfo) AddressGroup ¶
func (x NodeInfo) AddressGroup() network.AddressGroup
AddressGroup returns a group of network addresses.
func (NodeInfo) ExternalAddressGroup ¶
func (x NodeInfo) ExternalAddressGroup() network.AddressGroup
ExternalAddressGroup returns a group of network addresses.
func (*NodeInfo) PublicKey ¶
PublicKey returns a public key in a binary format.
Result must not be mutated.
func (*NodeInfo) SetAddressGroup ¶
func (x *NodeInfo) SetAddressGroup(v network.AddressGroup)
SetAddressGroup sets a group of network addresses.
func (*NodeInfo) SetExternalAddressGroup ¶
func (x *NodeInfo) SetExternalAddressGroup(v network.AddressGroup)
SetExternalAddressGroup sets an external group of network addresses.
func (*NodeInfo) SetPublicKey ¶
SetPublicKey sets a public key in a binary format.
Argument must not be mutated.