in internal/proxy/proxy_other.go [37:55]
func configureFUSE(c *Client, conf *Config) (*Client, error) {
if _, err := os.Stat(conf.FUSEDir); err != nil {
return nil, err
}
if err := os.MkdirAll(conf.FUSETempDir, 0777); err != nil {
return nil, err
}
c.fuseMount = fuseMount{
fuseDir: conf.FUSEDir,
fuseTempDir: conf.FUSETempDir,
fuseSockets: map[string]socketSymlink{},
// Use pointers for the following mutexes so fuseMount may be embedded
// as a value and support zero value lookups on fuseDir.
fuseMu: &sync.Mutex{},
fuseServerMu: &sync.Mutex{},
fuseWg: &sync.WaitGroup{},
}
return c, nil
}