parse_dos_attribute_blob() inconsistent file_id through make_file_id_from_itime()

Ralph Boehme slow at
Sat Dec 14 10:22:42 UTC 2019

Am 12/14/19 um 6:11 AM schrieb Krasimir Ganchev:
> On Friday, December 13, 2019 12:59 AM, Ralph Boehme wrote:
>> this is a recent Samba change to overcome the problematic use of inode numbers for the file-ids. The assumption was that with nsec filesystem timestamp granularity, the itime, which stands for invented time and is basically an immutable birthtime, will alway be unique.
>> Can you share a network trace of a minimal reproducer?
> I am attaching a minimal packet capture at the time the directory was browsed.

sorry if that wasn't clear, but we also need the capture to cover when
the files were created.

What's strange is that the capture shows that for files where the
file-id is the same, the creation-dates are different, so I would expect
the itime to be different as well which should result in unique file-ids.

Go figure, we definitely need a network trace with *parallel* log level
10. smb.conf as well.

> You can clearly see that the fileids returned are the same for files with the same timestamp (find response packet 53 from the capture).
> Within the attachment there is also a text file containing some part of the client debug log, stat of the shared directory contents, and samba-tool ntacl getdosinfo of each file in the directory.

Unfortunately the output is only with seconds granularity.

> You mentioned the change was needed due to problematic use of inode numbers. I suppose this might be an issue with filesystems without inode table. Can you please elaborate?

inode numbers are reused by the kernel, so they're not unique identifiers.


Ralph Boehme, Samba Team      
Samba Developer, SerNet GmbH
GPG-Fingerprint   FAE2C6088A24252051C559E4AA1E9B7126399E46

More information about the samba-technical mailing list