Documentation ¶
Overview ¶
package fuse/dms3ns implements a fuse filesystem that interfaces with dms3ns, the naming system for dms3.
Index ¶
- func InitializeKeyspace(n *core.Dms3Node, key ci.PrivKey) error
- func Mount(dms3 *core.Dms3Node, dms3nsmp, dms3mp string) (mount.Mount, error)
- type Directory
- func (d *Directory) Attr(ctx context.Context, a *fuse.Attr) error
- func (dir *Directory) Create(ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse) (fs.Node, fs.Handle, error)
- func (s *Directory) Lookup(ctx context.Context, name string) (fs.Node, error)
- func (dir *Directory) Mkdir(ctx context.Context, req *fuse.MkdirRequest) (fs.Node, error)
- func (dir *Directory) ReadDirAll(ctx context.Context) ([]fuse.Dirent, error)
- func (dir *Directory) Remove(ctx context.Context, req *fuse.RemoveRequest) error
- func (dir *Directory) Rename(ctx context.Context, req *fuse.RenameRequest, newDir fs.Node) error
- type File
- func (fi *File) Flush(ctx context.Context, req *fuse.FlushRequest) error
- func (fi *File) Forget()
- func (fi *File) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
- func (fi *File) Release(ctx context.Context, req *fuse.ReleaseRequest) error
- func (fi *File) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
- func (fi *File) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
- type FileNode
- type FileSystem
- type Link
- type Root
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitializeKeyspace ¶
InitializeKeyspace sets the dms3ns record for the given key to point to an empty directory.
Types ¶
type Directory ¶
type Directory struct {
// contains filtered or unexported fields
}
Directory is wrapper over an mfs directory to satisfy the fuse fs interface
func (*Directory) ReadDirAll ¶
ReadDirAll reads the link structure as directory entries
type File ¶
type File struct {
// contains filtered or unexported fields
}
File is wrapper over an mfs file to satisfy the fuse fs interface
func (*File) Read ¶
func (fi *File) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*File) Setattr ¶
func (fi *File) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
func (*File) Write ¶
func (fi *File) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type FileNode ¶
type FileNode struct {
// contains filtered or unexported fields
}
type FileSystem ¶
FileSystem is the readwrite DMS3NS Fuse Filesystem.
func NewFileSystem ¶
func NewFileSystem(ctx context.Context, dms3 iface.CoreAPI, dms3path, dms3nspath string) (*FileSystem, error)
NewFileSystem constructs new fs using given core.Dms3Node instance.
func (*FileSystem) Destroy ¶
func (f *FileSystem) Destroy()
type Root ¶
type Root struct { Dms3 iface.CoreAPI Keys map[string]iface.Key // Used for symlinking into dms3 Dms3Root string Dms3NsRoot string LocalDirs map[string]fs.Node Roots map[string]*mfs.Root LocalLinks map[string]*Link }
Root is the root object of the filesystem tree.
func CreateRoot ¶
func (*Root) Forget ¶
func (r *Root) Forget()
Forget is called when the filesystem is unmounted. probably. see comments here: http://godoc.org/bazil.org/fuse/fs#FSDestroyer