Support for SMB1 and SMB2 within the VFS

Richard Sharpe realrichardsharpe at
Tue Nov 22 11:53:05 MST 2011

On Tue, Nov 22, 2011 at 10:14 AM, Jeremy Allison <jra at> wrote:
> On Tue, Nov 22, 2011 at 09:48:32AM -0800, Richard Sharpe wrote:
>> Hi,
>> I was recently looking at previous version support in SMB1 and SMB2
>> and wondered to what extent there is clean support in the Samba 3 VFS
>> for this.
>> What I mean by this is that in SMB1, previous versions are referred to
>> in paths with something like /path/to/some/dir/@GMT:some-time/...
>> while in SMB2 previous versions are handled with a TimeWarp extra info
>> on a Create Request.
>> Is this info cleanly passed into the VFS such that it is easy for VFS
>> routines to work with either SMB1 or SMB2 clients or do VFS routines
>> that deal with paths need to be burdened with the differences between
>> SMB1 and SMB2 encoding of this info?
> Right now the SMB2 timewarp reuest is mapped into a
> @GMT:TIME\\original pathname and then passed into
> the VFS.
> Longer term it'd be better to change the VFS to
> pass in a timewarp NTTIME and move the parsing
> of the @GMT:time out into the SMB1 code.
> Just like we went from mapping old DOS open
> modes into WindowsNT open modes and moved the
> mapping layer into the DOS open code.

Do we always get an fsp or something like that?

Would it make sense to have a function or a macro for extracting the
previous version (or timewarp) info from an FSP so that VFS
implementers can be insulated from any future changes in this area?

Richard Sharpe

More information about the samba-technical mailing list