[jcifs] Latest versions of [MS-CIFS] and [MS-SMB] are available.
Christopher R. Hertel
crh at ubiqx.mn.org
Fri Mar 19 15:09:20 MDT 2010
The newest versions of [MS-CIFS] and [MS-SMB] are now available on
[MS-CIFS] = http://msdn.microsoft.com/en-us/library/ee442092.aspx
[MS-SMB] = http://msdn.microsoft.com/en-us/library/cc246231.aspx
Each contains major improvements with respect to their predecessors.
[MS-CIFS] was (in my not so humble opinion) pretty dang good already. The
new version, however, represents another half a year's work and includes:
* A major overhaul to Extended Attribute (EA) structure and handling
* Clarifications to several command and sub-command descriptions.
* A major overhaul to File Attribute and Extended File Attribute
specifications, as well as things like Desired Access, Search
Attributes, and such-like.
* Better identification of DOS vs. OS/2 vs. NT structures and
* Refinements to the error code tables.
* Multiple new or improved Windows Behavior Notes, often
referencing the new File Systems Algorithms ([MS-FSA])
document. There's a lot of juicy material here.
* A complete overhaul to the Abstract Data Model to bring it in
line with the other documents in the set, and to extend it to
cover more stuff.
The ADM is in Section 3 of the document, and that's a big section;
it provides the semantics of the protocol. It's not the easiest
section to read, but it's worth the effort.
SMB/CIFS is often described as a "stateful" protocol. The ADM
actually *documents the state variables and their states*. I
don't know of any other reference that does this.
* Too many other improvements to list here.
[MS-SMB] has also been completely rewritten. It no longer references the
old Leach/Naik IETF draft CIFS specification. It is now an extension of
[MS-CIFS]. This reduces the overall size of [MS-SMB], since much of the
material in older versions of [MS-SMB] was there to compensate for things
that were missing from the Leach/Naik draft document.
In the process over overhauling [MS-SMB], we also fixed several subtle bugs,
and added missing information.
* The ADM is improved.
* The Extended Security specification is clarified and improved.
* Missing field descriptions were added.
* The Error Code listings are more complete.
* ...again, there's much more than can be covered here.
[MS-SMB] is now a *new document*. If you have an older copy you can hang on
to it if you like, but you'll want the new [MS-SMB] if you are doing any
serious protocol implementation work.
For those of you unfamiliar with these documents, and the process that
created them, please see this Samba Team blog article:
There is also a follow-up on ZDnet: http://blogs.zdnet.com/open-source/?p=4681
[MS-CIFS] and [MS-SMB] are Microsoft documents produced by ubiqx Consulting,
Inc. (that's me and my team) under contract with Microsoft. We combined
Samba Team expertise and accumulated know-how with direct access to
Microsoft engineers, source code (!), and support. This was a collaborative
effort. The stated goal was "Everyone Wins".
The more that the Samba and jCIFS communities make use of these documents,
and report any problems, the better we will have achieved that goal.
"Implementing CIFS - the Common Internet FileSystem" ISBN: 013047116X
Samba Team -- http://www.samba.org/ -)----- Christopher R. Hertel
jCIFS Team -- http://jcifs.samba.org/ -)----- ubiqx development, uninq.
ubiqx Team -- http://www.ubiqx.org/ -)----- crh at ubiqx.mn.org
OnLineBook -- http://ubiqx.org/cifs/ -)----- crh at ubiqx.org
More information about the jCIFS