Added an Unlink method.

geesefs-0-30-9
Aaron Jacobs 2015-03-06 23:27:10 -06:00
parent 125491a6e9
commit 77165f118a
1 changed files with 21 additions and 0 deletions

View File

@ -118,6 +118,15 @@ type FileSystem interface {
ctx context.Context,
req *RmDirRequest) (*RmDirResponse, error)
// Unlink a file from its parent. If this brings the inode's link count to
// zero, the inode should be deleted once the kernel calls ForgetInode. It
// may still be referenced before then if a user still has the file open.
//
// Sample implementation in ext2: ext2_unlink (http://goo.gl/hY6r6C)
Unlink(
ctx context.Context,
req *UnlinkRequest) (*UnlinkResponse, error)
///////////////////////////////////
// Directory handles
///////////////////////////////////
@ -515,6 +524,18 @@ type RmDirRequest struct {
Name string
}
type UnlinkResponse struct {
}
type UnlinkRequest struct {
Header RequestHeader
// The ID of parent directory inode, and the name of the file being removed
// within it.
Parent InodeID
Name string
}
type RmDirResponse struct {
}