Documentation ¶
Index ¶
- func CopyAttrsFromUnixToFuse(st *unix.Stat_t, out *fuse.Attr)
- func ToStatus(err error) fuse.Status
- type LoopbackFileSystem
- type LoopbackNode
- func (n *LoopbackNode) Getattr(ctx context.Context, f fs.FileHandle, out *fuse.AttrOut) syscall.Errno
- func (n *LoopbackNode) Getxattr(ctx context.Context, attr string, dest []byte) (uint32, syscall.Errno)
- func (n *LoopbackNode) Listxattr(ctx context.Context, dest []byte) (uint32, syscall.Errno)
- func (n *LoopbackNode) Lookup(ctx context.Context, name string, out *fuse.EntryOut) (*fs.Inode, syscall.Errno)
- func (n *LoopbackNode) Open(ctx context.Context, flags uint32) (fh fs.FileHandle, fuseFlags uint32, errno syscall.Errno)
- func (n *LoopbackNode) Opendir(ctx context.Context) syscall.Errno
- func (n *LoopbackNode) Readdir(ctx context.Context) (fs.DirStream, syscall.Errno)
- func (n *LoopbackNode) Readlink(ctx context.Context) ([]byte, syscall.Errno)
- func (n *LoopbackNode) Statfs(ctx context.Context, out *fuse.StatfsOut) syscall.Errno
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type LoopbackFileSystem ¶
type LoopbackFileSystem struct { RootDir string RootFD int OnAccess func(path string) OnRead func(path string) // contains filtered or unexported fields }
func NewLoopbackFileSystem ¶
func NewLoopbackFileSystem(root string) (*LoopbackFileSystem, error)
Based on the hanwen/go-fuse loopback example, but wth "openat" everywhere (because we want to mount /a over /a in prod) - otherwise if you went by path instead of by fd, accessing /a would then request /a and cause an infinite loop.
func (*LoopbackFileSystem) AllowReads ¶
func (fs *LoopbackFileSystem) AllowReads()
func (*LoopbackFileSystem) Root ¶
func (f *LoopbackFileSystem) Root() fs.InodeEmbedder
type LoopbackNode ¶
func (*LoopbackNode) Getattr ¶
func (n *LoopbackNode) Getattr(ctx context.Context, f fs.FileHandle, out *fuse.AttrOut) syscall.Errno
func (*LoopbackNode) Open ¶
func (n *LoopbackNode) Open(ctx context.Context, flags uint32) (fh fs.FileHandle, fuseFlags uint32, errno syscall.Errno)
Click to show internal directories.
Click to hide internal directories.