Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Jul 2001 23:42:34 +0200
From:      Christoph Hellwig <hch@caldera.de>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        Bruce Evans <bde@zeta.org.au>, Joshua Goodall <joshua@roughtrade.net>, freebsd-fs@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Re: flags on symlinks
Message-ID:  <20010722234234.A7191@caldera.de>
In-Reply-To: <3B5B2DBB.16B607E2@mindspring.com>; from tlambert2@mindspring.com on Sun, Jul 22, 2001 at 12:47:07PM -0700
References:  <Pine.BSF.4.21.0107222210480.25554-100000@besplex.bde.org> <3B5B2DBB.16B607E2@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Jul 22, 2001 at 12:47:07PM -0700, Terry Lambert wrote:
> 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.
>

Erm, Terry?

In FFS and derived systems symlinks take an inode.  In all other
major filesystems I know, too.

> 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.).

I haven't looked at FreeBSD's namei algorihm in detail, but in
theory it could easily do the access checks before calling
VOP_READLINK.  For the userspace tools: yes the two or three
(you forgot at least mtree) the changes need to be done.

If you know an idea that implements file flags on symlinks without
that change please tell it.

	Christoph

-- 
Whip me.  Beat me.  Make me maintain AIX.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010722234234.A7191>