// Makes a directory called req.Name in dir func (dir *Directory) Mkdir(req *fuse.MkdirRequest, intr fs.Intr) (fs.Node, fuse.Error) { filesystem.Lock(dir) defer filesystem.Unlock(dir) util.P_out(req.String()) if strings.Contains(req.Name, "@") { return dir.mkArchive(req.Name) } subdir := new(Directory) subdir.InitDirectory(req.Name, os.ModeDir|req.Mode, dir) dir.setChild(subdir) subdir.dirty = true dir.dirty = true return subdir, nil }