[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-tar] tar-1.25: test 39 fails on FreeBSD
From: |
Paul Eggert |
Subject: |
Re: [Bug-tar] tar-1.25: test 39 fails on FreeBSD |
Date: |
Tue, 23 Nov 2010 16:38:18 -0800 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.15) Gecko/20101027 Thunderbird/3.0.10 |
On 11/23/10 14:19, Bruno Haible wrote:
> It's easy to convert EMLINK to ELOOP when O_NOFOLLOW was
> specified among the flags, in lib/open.c and lib/openat.c.
One more thing: Solaris open(...) has a Solaris-specific flag O_NOLINKS
that can cause open to fail with errno==EMLINK. This is a valid extension
to POSIX, so if O_NOLINKS is also given the wrapper shouldn't convert
EMLINK to ELOOP. This shouldn't add to the number of syscalls either,
but I thought I'd mention it since one can trigger that issue with
"dd oflag=nofollow,nolinks ofile=foo" on Solaris.
Come to think of it, it might be more conservative to convert EMLINK
to ELOOP only if both (1) O_NOFOLLOW is given and (2) no flags
are given other than those standardized by POSIX.