X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 271EE3891C1B
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1641806883;
	bh=kDF3eoYiUEg02DdrXnh/Nn2dKGMmyi+LcRsqJtQHtKk=;
	h=Date:From:To:Subject:References:In-Reply-To:List-Id:
	 List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:
	 Reply-To:From;
	b=lDY5lvFeUr5SUhimXrLkJV285WQ2KLxGdbkObm+EdoPJ1pBx/YH7xgl9EeENCwkjU
	 h92nocPKqduj/E6pqmURvNvZajGUNRzyq5Xt0r67nyhdhKNxO98PkrlKw9A3djPWH1
	 CFywWdIup/h+tBrs8dZ0Ryxi+L0jSjFeEG1PSMWM=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1657A3858C2C
Authentication-Results: sourceware.org;
 dmarc=fail (p=none dis=none) header.from=cygwin.com
Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=cygwin.com
Date: Mon, 10 Jan 2022 10:27:30 +0100
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: Support for ADS (Alternate Data Streams)
Message-ID: <Ydv8Aj+aMhKgu42x@calimero.vinschen.de>
Mail-Followup-To: cygwin@cygwin.com
References: <25042.4135.663145.551881@consult.pretender>
 <CAF1jjLv+5JA5EGa=YX34fnExi5cFyoPzc8K=PkmW11o7bU6eRw@mail.gmail.com>
 <YdVtz7nup9JvZc7M@calimero.vinschen.de>
 <CAF1jjLvKD5DXzgev3-JbtZ-wG5XWipRkJjEmhyTupnCcxWyp7g@mail.gmail.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <CAF1jjLvKD5DXzgev3-JbtZ-wG5XWipRkJjEmhyTupnCcxWyp7g@mail.gmail.com>
X-Provags-ID: V03:K1:ekQnwgvCGQ6ZE9KLTYwJ8ReQxRcYF+FmEVuXkxswmWFmdghNG95
 OoigB0mchtXmBN8HGyl4xhQir7Ak5PBWkKgtiwXB0TeGa0dX3gX3R2HBVkPwIup0MNuumNM
 30RGYMRmjv5gRkwnlPpMPZHhV+QyaaSSjw4QZQqnmMi/cSd/C0vY45xCgg4p8pFXcFF1KMJ
 AgQRh4uzro0g3Q4eQxbkw==
X-UI-Out-Filterresults: notjunk:1;V03:K0:Yn6pMOUPg5w=:r0M9j1cl7AGcAgF9NIYhhs
 m0GVWPIKEtmXFRnov1bOUWo7qKlFk428TpbgU8jkNvMtYiY6RiWvfCeM1J5e7xYMD3VYLUqsy
 Oln433LMzA7+W38FvIxIgE3JK/pSQBgtKTfwh5InxTICUY8EG3pBPLEPJquJ0QejQb78Acyd3
 oIsM2Sq1OnIdAxToTKDRQzOeyR6RQknc6pXXFqMYZJdqJ22UeozzRAfkqE4jUSvhw6pHlmAoD
 pd+ikFOlz67q9i8MtWSDne/I2DFERmWDWO5o2CSPWEjbCe+pVNWsVTTkEynAwUB3kU0GbQUqP
 vUiAtOCCFlhFPjtn2nGZZ4kAAllw6O34Cayxy/flepJy9fZFUAeXfY1/QJhHWbvhY5ubVHBRm
 NQukWsJy1bQSEemjw7Xrnl9tHWKANM7bq8VXz/7kpuo4hvgbdHNFZAWggRaU44NfGX6qsJVny
 q/k6xr2IburU812rvlhc+HKw7BtFX/aPya61bG+mVNRogK/NJLlaluQZmCpftSD4DtIYrY8p9
 63gQhqSf/SSeKx3mtrdswWPTcwZNS87K59SwNIaKC0ew8jVPWD8m6uPufLBjZU0vf6/dTRwH2
 3mD7PpFG3AHgbtoGSSzaF9EqjoGi7ggHXUqz8WPRtroyHj8iXOnFaqnyalH82icE1qp5iCHvh
 jmNT80jVkptGr66qx2JA8VCjFvpzZHHV/ivemtJdAVQLV4883vNP0ek5S6wMjK+Fh9yaITmCH
 vQAx3t71HvZh2paT
X-Spam-Status: No, score=-88.5 required=5.0 tests=BAYES_00,
 GOOD_FROM_CORINNA_CYGWIN, KAM_DMARC_NONE, KAM_DMARC_STATUS, RCVD_IN_MSPIKE_H2,
 SPF_FAIL, SPF_HELO_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4
X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on
 server2.sourceware.org
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
Reply-To: cygwin@cygwin.com
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cygwin-bounces+archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie.com@cygwin.com>

On Jan  8 04:14, NightStrike wrote:
> On Wed, Jan 5, 2022, 05:08 Corinna Vinschen <corinna-cygwin@cygwin.com>
> wrote:
> 
> > On Jan  3 22:40, NightStrike wrote:
> > > On Sun, Jan 2, 2022, 15:51 <cygwin@kosowsky.org> wrote:
> > >
> > > > While I recognize that ADS is not supported by POSIX, I was wondering
> > > > what if any support for ADS might exist within Cygwin.
> > > >
> > > > The last time I looked into this was probably more than a decade ago
> > > > but I am seeing (unfortunately) more usage of ADS in the Windows
> > > > world, so I was wondering if there has been any effort to support in
> > > > Cygwin?
> > > >
> > > > --
> > > > Problem reports:      https://cygwin.com/problems.html
> > > > FAQ:                  https://cygwin.com/faq/
> > > > Documentation:        https://cygwin.com/docs.html
> > > > Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
> > >
> > >
> > > FWIW, ntfs-3g under Linux maps these to extended attributes
> >
> > Using the EA API as ntfs-3g with the streams_interface=xattr option
> > seems like a nice way to allow reading and writing ADS on Cygwin as
> > well.
> >
> > Do you know how ntfs-3g performs the mapping?  For instance, I guess
> > that ADS are stored in the user.* namespace?  Does listxattr list ADS or
> > does it skip them?  Stuff like that.
> >
> 
> The ntfs.streams.list attribute contains the stream names, and there's a
> shortcut to access them by name with a colon. So if you have a stream named
> str and a file named f.txt, you could do 'cat f.txt:str'.

Hmm, that's not quite what I expected.  We could support an EA like
ntfs.streams.list, but we can't use the colon syntax.

We could map streams to EAs so they are read with getxattr and written
with setxattr.  Or we would have to invent a different way.


Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
