small refactor*
This commit is contained in:
parent
b6b541e050
commit
24a4d30275
232 changed files with 2164 additions and 1906 deletions
server/pkg/go-nfs/helpers
59
server/pkg/go-nfs/helpers/nullauthhandler.go
Normal file
59
server/pkg/go-nfs/helpers/nullauthhandler.go
Normal file
|
@ -0,0 +1,59 @@
|
|||
package helpers
|
||||
|
||||
import (
|
||||
"context"
|
||||
"net"
|
||||
|
||||
"git.kmsign.ru/royalcat/tstor/server/pkg/ctxbilly"
|
||||
nfs "git.kmsign.ru/royalcat/tstor/server/pkg/go-nfs"
|
||||
)
|
||||
|
||||
// NewNullAuthHandler creates a handler for the provided filesystem
|
||||
func NewNullAuthHandler(fs nfs.Filesystem) nfs.Handler {
|
||||
return &NullAuthHandler{fs}
|
||||
}
|
||||
|
||||
// NullAuthHandler returns a NFS backing that exposes a given file system in response to all mount requests.
|
||||
type NullAuthHandler struct {
|
||||
fs nfs.Filesystem
|
||||
}
|
||||
|
||||
// Mount backs Mount RPC Requests, allowing for access control policies.
|
||||
func (h *NullAuthHandler) Mount(ctx context.Context, conn net.Conn, req nfs.MountRequest) (status nfs.MountStatus, hndl nfs.Filesystem, auths []nfs.AuthFlavor) {
|
||||
status = nfs.MountStatusOk
|
||||
hndl = h.fs
|
||||
auths = []nfs.AuthFlavor{nfs.AuthFlavorNull}
|
||||
return
|
||||
}
|
||||
|
||||
// Change provides an interface for updating file attributes.
|
||||
func (h *NullAuthHandler) Change(fs nfs.Filesystem) nfs.Change {
|
||||
if c, ok := h.fs.(ctxbilly.Change); ok {
|
||||
return c
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// FSStat provides information about a filesystem.
|
||||
func (h *NullAuthHandler) FSStat(context.Context, nfs.Filesystem, *nfs.FSStat) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// ToHandle handled by CachingHandler
|
||||
func (h *NullAuthHandler) ToHandle(context.Context, nfs.Filesystem, []string) []byte {
|
||||
return []byte{}
|
||||
}
|
||||
|
||||
// FromHandle handled by CachingHandler
|
||||
func (h *NullAuthHandler) FromHandle(context.Context, []byte) (nfs.Filesystem, []string, error) {
|
||||
return nil, []string{}, nil
|
||||
}
|
||||
|
||||
func (c *NullAuthHandler) InvalidateHandle(context.Context, nfs.Filesystem, []byte) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// HandleLImit handled by cachingHandler
|
||||
func (h *NullAuthHandler) HandleLimit() int {
|
||||
return -1
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue