diff options
author | Jakob Unterwurzacher | 2020-06-21 12:42:18 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2020-06-21 12:42:18 +0200 |
commit | ebdf58b9ebf366ac6dbf500c0f4f4d211451bb44 (patch) | |
tree | d30c80ae667d844ce0081820b9b07e48940d4cf0 /internal/fusefrontend/root_node.go | |
parent | 77632b7554000f2e832a0e9fded1a3894b2502c3 (diff) |
v2api: implement GetAttr and Readdir
Diffstat (limited to 'internal/fusefrontend/root_node.go')
-rw-r--r-- | internal/fusefrontend/root_node.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/internal/fusefrontend/root_node.go b/internal/fusefrontend/root_node.go new file mode 100644 index 0000000..94fd021 --- /dev/null +++ b/internal/fusefrontend/root_node.go @@ -0,0 +1,24 @@ +package fusefrontend + +import ( + "time" + + "github.com/rfjakob/gocryptfs/internal/tlog" +) + +// reportMitigatedCorruption is used to report a corruption that was transparently +// mitigated and did not return an error to the user. Pass the name of the corrupt +// item (filename for OpenDir(), xattr name for ListXAttr() etc). +// See the MitigatedCorruptions channel for more info. +func (rn *RootNode) reportMitigatedCorruption(item string) { + if rn.MitigatedCorruptions == nil { + return + } + select { + case rn.MitigatedCorruptions <- item: + case <-time.After(1 * time.Second): + tlog.Warn.Printf("BUG: reportCorruptItem: timeout") + //debug.PrintStack() + return + } +} |