Subject: bug#12523: Solaris 10 "cp -p" returns unknown error on NFSv4 share, permissions preserve not work

From: Jim Meyering <[email-masked]>
Date: Mon, 08 Oct 2012 19:45:05 +0200

Eric Blake wrote:
> On 10/08/2012 05:45 AM, Ryba, Lukas wrote:
>> Vendor currently investigated that problem happens with the
>> combination of ZFS filesystem on NFSv3 only server and NFSv3 client.
>>
>> 1. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv4 server is ok
>> 2. facl with combination of UFS filesystem(POSIX acls) exported by
>> NFSv3 server is ok
>> 3. facl with combination of ZFS filesystem(NFSv4 acls) exported by
>> NFSv3 server fails on client with errno -1 which is our case
>> IMHO errno value in case 3 should be something useful. Like ENOTSUP.
>
> I wonder if gnulib should write rpl_facl() that checks for the case of
> facl() failing with errno set to -1 and explicitly reset errno to
> ENOTSUP in that case, to work around this vendor bug.

Sounds good to me, especially if the reporter confirms the fix.
The added overhead of a wrapper and test-upon-failure should be
acceptable for a function like facl.

>> -----Original Message-----
>> From: Paul Eggert [mailto:[email-masked]]
>> Sent: Thursday, October 04, 2012 5:53 PM
>> To: Ryba, Lukas
>> Cc: [email-masked]
>> Subject: Re: bug#12523: Solaris 10 "cp -p" returns unknown error on
>> NFSv4 share, permissions preserve not work
>>
>> On 10/04/2012 02:19 AM, Ryba, Lukas wrote:
>>> Workaround is simple. Just not use facl call right now. acl works ok.
>>
>> That might work around the problem on your Solaris implementation,
>> but it introduces other issues, on other platforms, so I'd like
>> to get at the bottom of why such a change is really needed.