diff --git a/copyparty/ftpd.py b/copyparty/ftpd.py index ed18a0e7..ab8db97f 100644 --- a/copyparty/ftpd.py +++ b/copyparty/ftpd.py @@ -152,10 +152,6 @@ class FtpFs(AbstractedFS): self.cwd = "/" # pyftpdlib convention of leading slash self.root = "/var/lib/empty" - self.can_read = self.can_write = self.can_move = False - self.can_delete = self.can_get = self.can_upget = False - self.can_admin = self.can_dot = False - self.listdirinfo = self.listdir self.chdir(".") @@ -218,7 +214,7 @@ class FtpFs(AbstractedFS): m: bool = False, d: bool = False, ) -> tuple[str, VFS, str]: - return self.v2a(os.path.join(self.cwd, vpath), r, w, m, d) + return self.v2a(join(self.cwd, vpath), r, w, m, d) def ftp2fs(self, ftppath: str) -> str: # return self.v2a(ftppath) @@ -297,16 +293,6 @@ class FtpFs(AbstractedFS): avfs = vfs self.cwd = nwd - ( - self.can_read, - self.can_write, - self.can_move, - self.can_delete, - self.can_get, - self.can_upget, - self.can_admin, - self.can_dot, - ) = avfs.can_access("", self.h.uname) def mkdir(self, path: str) -> None: ap, vfs, _ = self.rv2a(path, w=True) @@ -329,7 +315,7 @@ class FtpFs(AbstractedFS): vfs_ls = [x[0] for x in vfs_ls1] vfs_ls.extend(vfs_virt.keys()) - if not self.can_dot: + if self.uname not in vfs.axs.udot: vfs_ls = exclude_dotfiles(vfs_ls) vfs_ls.sort() @@ -377,9 +363,6 @@ class FtpFs(AbstractedFS): raise FSE(str(ex)) def rename(self, src: str, dst: str) -> None: - if not self.can_move: - raise FSE("Not allowed for user " + self.h.uname) - if self.args.no_mv: raise FSE("The rename/move feature is disabled in server config")