From owner-freebsd-fs Sun Jul 22 12:46:58 2001 Delivered-To: freebsd-fs@freebsd.org Received: from hawk.mail.pas.earthlink.net (hawk.mail.pas.earthlink.net [207.217.120.22]) by hub.freebsd.org (Postfix) with ESMTP id 75DF337B401; Sun, 22 Jul 2001 12:46:53 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from mindspring.com (dialup-209.247.136.127.Dial1.SanJose1.Level3.net [209.247.136.127]) by hawk.mail.pas.earthlink.net (EL-8_9_3_3/8.9.3) with ESMTP id MAA10284; Sun, 22 Jul 2001 12:46:29 -0700 (PDT) Message-ID: <3B5B2DBB.16B607E2@mindspring.com> Date: Sun, 22 Jul 2001 12:47:07 -0700 From: Terry Lambert Reply-To: tlambert2@mindspring.com X-Mailer: Mozilla 4.7 [en]C-CCK-MCD {Sony} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Bruce Evans Cc: Joshua Goodall , freebsd-fs@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG Subject: Re: flags on symlinks References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-fs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org Bruce Evans wrote: > > Is there a particular reason why there's no capability for setting flags > > on symlinks? the chflags syscall uses namei with FOLLOW, and changing this > > to NOFOLLOW allows chflags(2) to Do What I Want (i.e. SF_IMMUTABLE on a > > VLNK) Flags are associated with inodes, and symlinks do not have inodes in the common case, as they exist solely in the directory entry, unless they are too long. > > is there a filesystem train crash awaiting me for doing this, or am I in > > the clear? I realise it changes the semantics of chflags(1) so an > > alternative syscall or a follow/nofollow boolean addition to struct > > chflags_args is better than this hack. > > There should be a separate lchflags syscall for this. Obtain it from > NetBSD. Several utilities need to be updated to handle flags on symlinks. > I'm not sure if NetBSD has implemented this. Pretty clearly, there should _NOT_ be a seperate system call; the damn thing should just work. Adding a seperate system call means theaching everything that deals with flags about it (ls, chflags, every FS supporing symlinks, etc.). -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message