getcifsacl does not work with CIFS mount versions 2 or 3

Miloslav Hůla miloslav.hula at fsv.cvut.cz
Thu Jan 24 14:08:38 UTC 2019


Dne 2019-01-24 v 15:01 Miloslav Hůla via samba-technical napsal(a):
> Dne 2019-01-24 v 14:19 Aurélien Aptel napsal(a):
>> Miloslav Hůla via samba-technical <samba-technical at lists.samba.org>
>> writes:
>>> When I mount CIFS share (mount -t cids) with vers=1.0 I can perform
>>> getcifsacl sucessfully. But when I mount with vers=2.0, or 2.1, or 3.0,
>>> ACL reading fails.
>>>
>>> getxattr error: 95
>>> REVISION:0x0
>>> CONTROL:0x0
>>>
>>> Why getcifsacl depends on SMB protocol version? Can I read ACL via newer
>>> SMB protocol?
>>
>> I believe you need a recent kernel enough to use the new ioctl and the
>> not-yet-released cifs-utils with the corresponding new tool smbinfo.
>>
>> https://github.com/piastry/cifs-utils/tree/next
> 
> Thank you for pointing me out!
> 
> I compiled mount.cifs and smbinfo from mentioned next branch and I got 
> error:
> 
> # smbinfo secdesc /mnt/cifs/file.txt
> ioctl failed with Inappropriate ioctl for device
> 
> so, the 4.9.0-8-amd64 is probably too old.
> 
> Which version is new enough? Some 4.x or 5.0?

Probably, the answer is v4.20.

In smbinfo.c secdesc() call is used CIFS_QUERY_INFO which I found in 
kernel source since 4.20.

https://elixir.bootlin.com/linux/v4.20.4/ident/CIFS_QUERY_INFO

Milo




More information about the samba-technical mailing list