From 6f1914f5db33a0d4431069eb9378cac68daf8cc0 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Thu, 9 Mar 2023 16:43:39 -0700 Subject: btrfstree: Rethink 'Path' yet again --- lib/btrfs/btrfstree/btree.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'lib/btrfs/btrfstree/btree.go') diff --git a/lib/btrfs/btrfstree/btree.go b/lib/btrfs/btrfstree/btree.go index 4f5d21b..19c7c68 100644 --- a/lib/btrfs/btrfstree/btree.go +++ b/lib/btrfs/btrfstree/btree.go @@ -14,6 +14,17 @@ import ( "git.lukeshu.com/btrfs-progs-ng/lib/btrfs/btrfsvol" ) +type Tree interface { + // CheckOwner returns whether it is permissible for a node + // with .Head.Owner=owner and .Head.Generation=gen to be in + // this tree. + // + // If there is an error determining this, then `failOpen` + // specifies whether it should return an error (false) or nil + // (true). + TreeCheckOwner(ctx context.Context, failOpen bool, owner btrfsprim.ObjID, gen btrfsprim.Generation) error +} + type TreeSearcher interface { // How the search should be described in the event of an // error. -- cgit v1.2.3-54-g00ecf