Re: symlinks with 2.1 kernels
Jason Gunthorpe <firstname.lastname@example.org> writes:
> Christoph and I tracked this down last sunday. The summary as we see it is
> - 2.1.8x is no longer posix conforming, chown() attempts to change the
> ownership of the target of the link
> - In 2.1.8x there is a new function call called lchown in the kernel
> that did NOT exist before
> - The only way to change the ownership of a file is to use lchown()
Eh? Shouldn't that be '... the ownership of a link ...'?
> - llibc6 currently makes chown = lchown because linux lacked a lchown
> - dpkg, tar, chown and others will have to be changed to use the new bsd
> lchown function
> - libc6 will have to have special chown functions written that emulate
> the new behavior on older kernels, most importantly providing a cover
> for lchown that calls chown in the case where there is no lchown kernel
> BSD uses this 'new' system and claims it is posix conforming, but
> apparently the posix draft is a bit ambiguos. I think the lack of a lchown
> function in posix implies they intended you to use chown on symlinks.
BSD isn't alone here. Solaris (and every other SVR4 system I've ever used)
has been doing this for ages.
"Normality is a statistical illusion." -- me
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
Trouble? e-mail to email@example.com .