Cygwin 3.7 wishlist: read/write NTFS alternate data streams via openat(O_XATTR)

Thomas Wolff towo@towo.net
Tue Mar 25 16:17:06 GMT 2025


[oops, used wrong Reply function]

Am 24.03.2025 um 21:58 schrieb Corinna Vinschen:
> On Mar 24 21:42, Thomas Wolff wrote:
>>
>> Am 24.03.2025 um 17:08 schrieb Jeffrey Altman:
>>> On 3/24/2025 10:25 AM, Martin Wege via Cygwin wrote:
>>>> Hello,
>>>>
>>>> another wishlist entry (old one):
>>>> read/write NTFS alternate data streams via openat(O_XATTR)
>>>  From my perspective as a filesystem developer, Extended Attributes and
>>> Alternate Data Streams are different concepts which I believe are
>>> inappropriate to mix.
>>>
>>> Filesystems can implement one, the other, both or neither.
>>>
>>> An Extended Attribute is a name:value pair that can be attached to an
>>> inode. The size of individual values and the sum of the value sizes
>>> are often quite constrained because they are stored in the inode
>>> metadata. Copying an inode is guaranteed to copy the Extended Attributes.
>>>
>>> Alternate Data Streams are typically represented as independent
>>> inodes. The Alternate Data Stream namespace can be represented by a
>>> directory inode referenced from the file inode. Each ADS inode might
>>> have their own Extended Attributes to go along with the data stream.
>>> ACLs on ADS inodes can also be independent of the ACL on the primary
>>> inode depending upon the implementation.
>>>
>>> Therefore, I am reluctant to see openat(O_XATTR) be used to access
>>> alternate data streams.
>>>
>>> Jeffrey Altman
>> Why not use the Windows syntax?
>> cat file.txt:ads.txt
>> etc. (Was this discussed before?)
>> Thomas
> The colon is a valid filename character in Cygwin, it will be converted
> to the UNICODE private use area:
> https://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars
>
> Therefore you can't use the colon to specify streams.
>
>
> Corinna
OK, so what about a slash? Handling the base file like a directory for
access and listing...
Thomas


More information about the Cygwin-developers mailing list