Consolidated List of All CIFS Spec Feedback

Luke Kenneth Casson Leighton lkcl at samba.org
Wed Feb 16 09:04:12 GMT 2000


5a) Document the mechanisms for getting/setting network share information (old protocol) 

Additional Information - Open, Quantum

[lkcl: NetrShareEnum format available in "DCE/RPC over SMB ISBN 1578701503",
srvsvc chapter.]

5c) Document the mechanisms for getting/setting security information (through RPC)

[lkcl: question is too general.  which particular DCE/RPC pipe?  does the
queryer mean SamrGetSecObject, LsarGetSecObject, (and set equivs.) or
maybe RegretKeySecurity.  there is pretty much one for every single handle-
based pipe]

8) Increase/improve the documentation for CIFS using TCP transport (Appendix B)

[lkcl current info is sufficient.  why is more needed?  you make a
connection, as described, and you don't send a NetBIOS session request.
what more is there to be explained?]

13) Outline of how NTLMSSP works, and how it uses 40-bit, 128-bit, key-exchange 
and both sign and seal modes (for BOTH NTLMV1 and NTLMV2).  Again, annotated 
examples needed showing the intermediate calculation stages and the signed / 
sealed traffic, before and after.

Additional Information - In new draft? Deferred for first release,
One approach is to summarize material in the book, "DCE/RPC over SMB, Samba and 
Windows NT Domain Internals"

[lkcl: not sufficient.  documentation in book "DCE/RPC over SMB..." was
made through observation of network traffic and through assistance from
undisclosed sources, from which the sign and seal constants for NTLMv2-based
NTLMSSP sign and seal modes were not available.  if i have to spend
time on this it will LITERALLY take me a solid three weeks of research.
it will take the right person at microsoft maybe five to fifteen minutes.]

14) Outline of how NETLOGON, the new 0x400001ff and the new Windows 2000 0x7fff01ff
(or whatever) modes work - ie, "the NETLOGON secure channel"

Additional Information - In new draft? Deferred for first release,
One approach is to summarize material in the book, "DCE/RPC over SMB, Samba and 
Windows NT Domain Internals"

[lkcl: not sufficient. "DCE/RPC over SMB ..." only contains 0x400001ff mode
of operation.  book specification has also not been verified as correct
because the implementation in samba was created _after_ the specification
in "DCE/RPC over SMB" was written.

15) Specification of how DCE/RPC over SMB works

Additional Information - In new draft? Deferred for first release,
One approach is to summarize material in the book, "DCE/RPC over SMB, Samba and 
Windows NT Domain Internals"

[lkcl: not sufficient.  "DCE/RPC over SMB ..." does not cover how to use
SMBwriteX or SMBtrans+SMBtranssecondary to transfer multiple PDU requests.
book also does not cover SMBwritebraw, which is only used by win95.]

16) Specification of each of the services that run over DCE/RPC.  Could this be 
done as IDL files?

Additional Information - In new draft? Deferred for first release,
One approach is to summarize material in the book, "DCE/RPC over SMB, Samba and 
Windows NT Domain Internals"

[lkcl: how about microsoft just publishes their IDL files?]

26) Time/date fields are SMB_TIME - Some were listed as LARGE_INTEGER

Correction - Fix wording, SNIA

[lkcl: some of the code-paths are not properly tested by microsoft
for non nt-nt, win95-nt, nt-win95 negotiated SMBs.  this has resulted in
other CIFS vendors sending SMBs at generally-unused-outside-of-microsoft-
clients-and-servers-but-used-by-everyone-else-because-that's-what's-
in-the-spec for time/dates and win95 or nt returning 64-bit timestamps
in 32-bit fields.]

34) In Section 4.2.10, explain in detail how wildcarding should work.  Give 
examples such as renaming multiple files and renaming a file to a name with 
a wildcard in it.

[lkcl: not sufficient.  the samba team has been attempting to get mask_match
to exactly the same semantics as NT, 95 and DOS for well over four years.
a pseudo-code algotithm is therefore required, from microsoft, or actual
code, because it is unreasonable to expect people to spend so much time
doing empirical tests on this].

43) Questions from Section 5.4 SMB Protocol Dialect Constants:
a) What is the difference between LM1.2X002 and DOS LM1.2X002?  A Win95 client 
offers the latter, the NT client offers the former. How are they different?
b) The text says, "... the server will perform error mapping to appropriate DOS 
errors."  What does this mean?  Should the error codes in Chapter 6 be used?

[lkcl: it means, if you're gong to use DOS status codes, you're asking for
trouble.  NT clients do not correctly process DOS status codes under
certain instances.  Weird and erratic client-side behaviour tends to just...
go away if 32-bit status codes are returned instead of DOS ones.
request that microsoft NOT mandate that 32-bit status codes be ignored
by clients if the server says it does not support 32-bit status codes
in the negotiation phase, so that smb_flags2 can be set in an INDIVIDUAL
SMB response, not ALL SMB responses, to say that THIS PARTICULAR SMB
response contains a 32-bit status code.  thanks].

46) Explain how DFS is set on the Server (The current Spec explains how to use 
DFS but not how to set it)

Additional Information - Open, Microsoft

[lkcl: _lots_ more info needed,  two separate samba team members have
attempted to get DFS working in samba, and both attempts failed].


<a href="mailto:lkcl at samba.org" > Luke Kenneth Casson Leighton    </a>
<a href="http://cb1.com/~lkcl"  > Samba and Network Development   </a>
<a href="http://samba.org"      > Samba Web site                  </a>
<a href="http://www.iss.net"    > Internet Security Systems, Inc. </a>
<a href="http://mcp.com"        > Macmillan Technical Publishing  </a>
 
ISBN1578701503 DCE/RPC over SMB: Samba and Windows NT Domain Internals



More information about the samba-technical mailing list