Does the CreateDisposition flag of a client depend on Server's response ?
vmittal05 at gmail.com
Mon Feb 6 19:19:41 UTC 2023
I observe the same behavior with my Win10 client and Samba server with
The /COPY:DATX didn't change the behavior for the directory, but /DCOPY:X
does as I had
mentioned in my earlier comments.
And not sure why, but only /DCOPY:X does, if I specify any other flag like
/DCOPY:DAX, it doesn't :)
On Mon, Feb 6, 2023 at 11:24 PM Tom Talpey <tom at talpey.com> wrote:
> Aha - ok, if Windows-to-Windows is broken, it's in robocopy.
> Interestingly, I can't repro this from my Win11 system to
> a Samba server with streams_xattr loaded.
> Yes, I'm aware it's the directory create that fails.
> Maybe one other thing to test. What if you add the "X" copyflag,
> which turns off copying streams? Perhaps your robocopy.exe will
> ignore the filesystem stream attribute and use FILE_OPEN like usual.
> It's purely an academic exercise though.
> robocopy C:\Users\mittal\Downloads Y:\Shared\Folder1\Subfolder
> <file-name> /COPY:DATX /R:1 /W:10
> On 2/5/2023 11:44 AM, varun mittal wrote:
> > Hi Tom
> > I did test it with Windows share too and the behavior was the same.
> > But please note, the FILE_OPEN_IF I am chasing is for the Directory
> > and not the files.
> > In my case, the source directory doesn't have any named data stream.
> > The files in the source directory also didn't have any ADS. These files
> > generated locally.
> > On Sat, Feb 4, 2023 at 7:38 PM Tom Talpey <tom at talpey.com
> > <mailto:tom at talpey.com>> wrote:
> > This is worth figuring out.
> > Because it's a file in your Downloads folder, it was probably
> > created by a browser. This means it has an additional stream
> > which indicates it's from the internet. Defender and other
> > tools use the presence of that stream to throw the "Do you
> > really want to open this file?" dialogs.
> > When you copy the file to a non-stream filesystem, that stream
> > is obviously lost, in which case robocopy is not going to do
> > anything special. But when copying to a filesystem that does,
> > it will take a different path, copying everything. Or maybe it's
> > the fact that it's in the Downloads folder, and robocopy is
> > being clever. Or just a bug in the Win10 robocopy you mentioned
> > you're using.
> > Would you happen to have a Windows system with an NTFS share
> > that you could robocopy the same file to, and grab a trace?
> > It would give us the breadcrumbs to figure out what's missing.
> > Maybe there's some other volume or filesystem attribute that's
> > missing, and confusing robocopy.
> > Tom.
> > On 2/4/2023 3:17 AM, varun mittal wrote:
> > > Nothing fancy, simple copy command:
> > > robocopy C:\Users\mittal\Downloads Y:\Shared\Folder1\Subfolder
> > > <file-name> /COPY:DAT /R:1 /W:10
> > >
> > > On Sat, Feb 4, 2023, 8:05 AM Tom Talpey <tom at talpey.com
> > <mailto:tom at talpey.com>
> > > <mailto:tom at talpey.com <mailto:tom at talpey.com>>> wrote:
> > >
> > > On 2/3/2023 12:50 PM, Jeremy Allison via samba-technical
> > > > On Fri, Feb 03, 2023 at 08:51:57PM +0530, varun mittal
> > > >> I was able to narrow it down to the "Named Streams" bit
> > > >> "FileFSAttributeInformation" response.
> > > >> When this value is toggled from 0 to 1, as is
> advertised by
> > > >> `streams_xattr` VFS module, Robocopy
> > > >> switched from FILE_OPEN to FILE_OPEN_IF.
> > > >> Thanks
> > > >
> > > > Thanks for tracking that down. What strange behavior.
> > > > I can't see why having a stream would make the open
> > > > change to optionally creating the file, but it's good
> > > > info to know. Thanks for posting the follow-up to
> > > > the list !
> > >
> > > It's not the presence af a stream, it's that the fileystem
> > supports
> > > named streams. It's getting that from a
> > FileFsAttributeInformation
> > > on the root directory.
> > >
> > > Robocopy has a very broad range of OS- and FS-dependent
> > > and optimizations. I bet there's some combination of its
> > > commandline options that can change this.
> > >
> > > Varun, what exact robocopy command are you seeing this from?
> > >
> > > Tom.
> > >
More information about the samba-technical