From c7b80acd0d961f52b584a1788db32d162dfa8e6c Mon Sep 17 00:00:00 2001 From: ed Date: Mon, 25 May 2026 20:06:17 +0000 Subject: [PATCH] fix ?tar on xvol reject; would panic and kill the connection instead of just skipping the blocked symlink --- copyparty/authsrv.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/copyparty/authsrv.py b/copyparty/authsrv.py index 9eb0e259..4a34824f 100644 --- a/copyparty/authsrv.py +++ b/copyparty/authsrv.py @@ -627,6 +627,9 @@ class VFS(object): t = "%s has no %s in %r => %r => %r" self.log("vfs", t % (uname, msg, vpath, cvpath, ap), 6) + if not err: + return None + t = "you don't have %s-access in %r or below %r" raise Pebkac(err, t % (msg, "/" + cvpath, "/" + vn.vpath)) @@ -858,7 +861,7 @@ class VFS(object): for le in vfs_ls: ap = absreal(os.path.join(fsroot, le[0])) vn2 = self.chk_ap(ap) - if not vn2 or not vn2.get("", uname, True, False): + if not vn2 or not vn2.get("", uname, True, False, err=0): rm1.append(le) _ = [vfs_ls.remove(x) for x in rm1] # type: ignore