summaryrefslogtreecommitdiffhomepage
path: root/pkg/p9/server.go
diff options
context:
space:
mode:
authorFabricio Voznika <fvoznika@google.com>2021-11-02 12:26:18 -0700
committergVisor bot <gvisor-bot@google.com>2021-11-02 12:29:06 -0700
commit1e1d6b2be37873c5e62461834df973f41565c662 (patch)
tree8fc32650747443694f77956da5f744f62df20b18 /pkg/p9/server.go
parent42a08f036f7be69b6c6d1b971911cd1aea611ece (diff)
Allow SetAttr and Allocate for deleted files
It's safe to call SetAttr and Allocate on fsgofer because the file path is not used to open the file, if needed. Fixes #3654 PiperOrigin-RevId: 407149393
Diffstat (limited to 'pkg/p9/server.go')
-rw-r--r--pkg/p9/server.go9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkg/p9/server.go b/pkg/p9/server.go
index 6428ad745..e7d129f9d 100644
--- a/pkg/p9/server.go
+++ b/pkg/p9/server.go
@@ -34,6 +34,8 @@ type Server struct {
// attacher provides the attach function.
attacher Attacher
+ options AttacherOptions
+
// pathTree is the full set of paths opened on this server.
//
// These may be across different connections, but rename operations
@@ -48,10 +50,15 @@ type Server struct {
renameMu sync.RWMutex
}
-// NewServer returns a new server.
+// NewServer returns a new server. attacher may be nil.
func NewServer(attacher Attacher) *Server {
+ opts := AttacherOptions{}
+ if attacher != nil {
+ opts = attacher.ServerOptions()
+ }
return &Server{
attacher: attacher,
+ options: opts,
pathTree: newPathNode(),
}
}