Date: Tue, 29 Aug 2000 08:14:35 +0700 (ALMST) From: Boris Popov <bp@butya.kz> To: Robert Watson <rwatson@FreeBSD.org> Cc: phk@FreeBSD.org, freebsd-fs@FreeBSD.org Subject: Re: procfs_lookup() and jail interaction Message-ID: <Pine.BSF.4.21.0008290809320.812-100000@bhome.butya.kz> In-Reply-To: <Pine.NEB.3.96L.1000828124049.84062K-100000@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 28 Aug 2000, Robert Watson wrote: > So I've largely resolved these concerns -- as a synthetic in-memory file > system, procfs is not using the name cache -- the issue I'm running into > now in procfs is with the open() syscall. Following the p_stuff patches, > procfs_getattrt() and so on all return ENOENT. However, an attempt to > call open(/proc/1, O_CREAT) results in an EISDIR error, instead of EROFS. This is because procfs_lookup() function doesn't check for CREATE operation. I'm unsure why this test is omitted because procfs has readonly namespace. The following patch should fix this: --- procfs_vnops.c.old Sun Aug 27 09:43:37 2000 +++ procfs_vnops.c Tue Aug 29 08:00:08 2000 @@ -683,7 +683,8 @@ *vpp = NULL; - if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME) + if (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME || + cnp->cn_nameiop == CREATE) return (EROFS); if (cnp->cn_namelen == 1 && *pname == '.') { -- Boris Popov To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0008290809320.812-100000>