nfsv4

package
v0.0.0-...-ea22f37 Latest Latest
Warning

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

Go to latest
Published: Apr 1, 2024 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewBaseProgram

func NewBaseProgram(rootDirectory virtual.Directory, handleResolver virtual.HandleResolver, randomNumberGenerator random.SingleThreadedGenerator, rebootVerifier nfsv4.Verifier4, stateIDOtherPrefix [stateIDOtherPrefixLength]byte, clock clock.Clock, enforcedLeaseTime, announcedLeaseTime time.Duration) nfsv4.Nfs4Program

NewBaseProgram creates an nfsv4.Nfs4Program that forwards all operations to a virtual file system. It implements most of the features of NFSv4.0.

func NewMetricsProgram

func NewMetricsProgram(base nfsv4.Nfs4Program) nfsv4.Nfs4Program

NewMetricsProgram creates a decorator for nfsv4.Nfs4Program that exposes Prometheus metrics for all compound operations called.

Right now it only provides counters for the number of operations called. Timing of operation is not exposed, as it can only be computed at the procedure level, which isn't meaningful in practice.

func NewSystemAuthenticator

func NewSystemAuthenticator(metadataExtractor *jmespath.JMESPath, maximumCacheSize int, evictionSet eviction.Set[SystemAuthenticatorCacheKey]) rpcserver.Authenticator

NewSystemAuthenticator is an RPCv2 Authenticator that requires that requests provide credentials of flavor AUTH_SYS, as described in RFC 5531, appendix A. The body of the credentials are converted to an AuthenticationMetadata object using a JMESPath expression. The resulting metadata is attached to the Context.

Types

type SystemAuthenticatorCacheKey

type SystemAuthenticatorCacheKey [sha256.Size]byte

SystemAuthenticatorCacheKey is the key type that's used by the system authenticato's eviction set.

Jump to

Keyboard shortcuts

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