Module Name: src Committed By: christos Date: Tue Nov 24 16:38:31 UTC 2020
Modified Files: src/sys/fs/ptyfs: ptyfs_vnops.c Log Message: PR/55821: tar can not extract base.tgz anymore (./dev/pts and mounted ptyfs) Allow chown/chmod at the root of ptyfs. To generate a diff of this commit: cvs rdiff -u -r1.60 -r1.61 src/sys/fs/ptyfs/ptyfs_vnops.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/fs/ptyfs/ptyfs_vnops.c diff -u src/sys/fs/ptyfs/ptyfs_vnops.c:1.60 src/sys/fs/ptyfs/ptyfs_vnops.c:1.61 --- src/sys/fs/ptyfs/ptyfs_vnops.c:1.60 Sat Jun 27 13:29:18 2020 +++ src/sys/fs/ptyfs/ptyfs_vnops.c Tue Nov 24 11:38:31 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: ptyfs_vnops.c,v 1.60 2020/06/27 17:29:18 christos Exp $ */ +/* $NetBSD: ptyfs_vnops.c,v 1.61 2020/11/24 16:38:31 christos Exp $ */ /* * Copyright (c) 1993, 1995 @@ -76,7 +76,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.60 2020/06/27 17:29:18 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ptyfs_vnops.c,v 1.61 2020/11/24 16:38:31 christos Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -456,8 +456,6 @@ ptyfs_setattr(void *v) if (vap->va_uid != (uid_t)VNOVAL || vap->va_gid != (gid_t)VNOVAL) { if (vp->v_mount->mnt_flag & MNT_RDONLY) return EROFS; - if (ptyfs->ptyfs_type == PTYFSroot) - return EPERM; error = ptyfs_chown(vp, vap->va_uid, vap->va_gid, cred, l); if (error) return error; @@ -492,8 +490,6 @@ ptyfs_setattr(void *v) if (vap->va_mode != (mode_t)VNOVAL) { if (vp->v_mount->mnt_flag & MNT_RDONLY) return EROFS; - if (ptyfs->ptyfs_type == PTYFSroot) - return EPERM; if ((ptyfs->ptyfs_flags & SF_SNAPSHOT) != 0 && (vap->va_mode & (S_IXUSR|S_IWUSR|S_IXGRP|S_IWGRP|S_IXOTH|S_IWOTH)))