receivers

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Nov 23, 2022 License: LGPL-3.0 Imports: 9 Imported by: 7

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNotSupported = errors.New("operation not supported by receiver")
)
View Source
var ErrUnsupported = fmt.Errorf("unsupported operation for receiver")

Functions

This section is empty.

Types

type ReceiveContext

type ReceiveContext interface {
	context.Context

	CurrentSubvolume() *ReceivingSubvolume
	ResolvePath(path string) string
	Log() *log.Logger
	Verbosity() int
}

type Receiver

type Receiver interface {
	Subvol(ctx ReceiveContext, path string, uuid uuid.UUID, ctransid uint64) error
	Snapshot(ctx ReceiveContext, path string, uuid uuid.UUID, ctransid uint64, cloneUUID uuid.UUID, cloneCtransid uint64) error
	Mkfile(ctx ReceiveContext, path string, ino uint64) error
	Mkdir(ctx ReceiveContext, path string, ino uint64) error
	Mknod(ctx ReceiveContext, path string, ino uint64, mode fs.FileMode, rdev uint64) error
	Mkfifo(ctx ReceiveContext, path string, ino uint64) error
	Mksock(ctx ReceiveContext, path string, ino uint64) error
	Symlink(ctx ReceiveContext, path string, ino uint64, linkTo string) error
	Rename(ctx ReceiveContext, oldPath string, newPath string) error
	Link(ctx ReceiveContext, path string, linkTo string) error
	Unlink(ctx ReceiveContext, path string) error
	Rmdir(pctx ReceiveContext, ath string) error
	Write(ctx ReceiveContext, path string, offset uint64, data []byte) error
	EncodedWrite(ctx ReceiveContext, path string, op *btrfs.EncodedWriteOp, forceDecompress bool) error
	Clone(ctx ReceiveContext, path string, offset uint64, len uint64, cloneUUID uuid.UUID, cloneCtransid uint64, clonePath string, cloneOffset uint64) error
	SetXattr(ctx ReceiveContext, path string, name string, data []byte) error
	RemoveXattr(ctx ReceiveContext, path string, name string) error
	Truncate(ctx ReceiveContext, path string, size uint64) error
	Chmod(ctx ReceiveContext, path string, mode fs.FileMode) error
	Chown(pctx ReceiveContext, ath string, uid uint64, gid uint64) error
	Utimes(ctx ReceiveContext, path string, atime, mtime, ctime time.Time) error
	UpdateExtent(ctx ReceiveContext, path string, fileOffset uint64, tmpSize uint64) error
	EnableVerity(ctx ReceiveContext, path string, algorithm uint8, blockSize uint32, salt []byte, sig []byte) error
	Fallocate(ctx ReceiveContext, path string, mode fs.FileMode, offset uint64, len uint64) error
	Fileattr(ctx ReceiveContext, path string, attr uint32) error

	FinishSubvolume(ctx ReceiveContext) error
}

type ReceivingSubvolume

type ReceivingSubvolume struct {
	// The path of the subvolume
	Path string
	// The UUID of the subvolume
	UUID uuid.UUID
	// The ctransid of the subvolume
	Ctransid uint64
}

func (*ReceivingSubvolume) ResolvePath

func (r *ReceivingSubvolume) ResolvePath(path string) string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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