content...
authorMichael Adam <obnox@samba.org>
Wed, 23 Sep 2015 09:58:29 +0000 (11:58 +0200)
committerMichael Adam <obnox@samba.org>
Wed, 23 Sep 2015 09:58:29 +0000 (11:58 +0200)
content.wiki

index dd5bc78e91ec15a7be8d6dae6329b73249e55f9c..45d3bb95e5db89a50fd3aeb0db6c42a40946751f 100644 (file)
 #* secure negotiation [4.0]
 #* durable handles v2 [4.0]
 #* '''_red_Multi-Channel_''' [WIP+]
-#* SMB direct [designing/starting]
-#* persistent file handles [design/tracer]
-#* cluster features [design]
+#* SMB direct [design]
+#* cluster features [design/WIP]
 #** witness [WIP+]
+#* persistent file handles [design/tracer]
 #* storage features [WIP]
-# SMB 3.0.2 (Win8.1 / 2012R2): [DONE,master]
+# SMB 3.0.2 (Win8.1 / 2012R2): [4.3]
 # SMB 3.1.1 (Win10 / 2014):
-#* negotiate contexts, preauth: [DONE,master]
+#* negotiate contexts, preauth: [4.3]
 
 [[[.35\textwidth]]]
 %<<<durable-crop-colormod-1024,width=.9\textwidth>>>
 ** ''Natural choice'': at SessionSetup (Bind)
 ** !Idea!: as early as possible, based on ClientGUID \\ %
 ==> per ClientGUID single process model
-*<0> !But!: This may not work! \frownie
+*<0> !But!: There may be problems! ... \frownie
 [block]>
 
 
 ** ''Natural choice'': at SessionSetup (Bind)
 ** !Idea!: as early as possible, based on ClientGUID \\ %
 ==> per ClientGUID single process model
-*<0> !But!: This may not work! \frownie
+*<0> !But!: There may be problems! ... \frownie
 [block]>
 
 
 ** ''Natural choice'': at SessionSetup (Bind)
 ** ''Idea'': as early as possible, based on ClientGUID \\ %
 ==> per ClientGUID single process model
-* !But!: This may not work! \frownie
+* !But!: There may be problems! ... \frownie
 [block]>
 
 
@@ -207,12 +207,29 @@ Open.ClientGuid == Connection.ClientGuid
 }
 
 +<3->{
-<[block]{This may not be correct!}
-There is confusion -- currently being discussed.
+<[block]{The truth is...}
+The Windows server does not enforce it!
+[block]>
+}
+
+
+==== The Relevance of the ClientGUID ====
+
+<[block]{Windows behaviour according to MS}
+* The server does NOT enforce same ClientGUID in a session.
+* But clients can be expected to do it.
+* But it is not explicitly documented like this.
+[block]>
+
++<2->{
+<[block]{The good news:}
+There will be documentation notes:
+* Things will not work as expected when clients behave differently.
+* It is OK for a server to enforce equality of ClientGUID within session.
 [block]>
 }
 
-==== More on ClientGUID : Leases ====
+==== More digression on ClientGUID : Leases ====
 
 <[block]{According to [MS-SMB2]}
 * Server Global data Structures:
@@ -226,11 +243,10 @@ There is confusion -- currently being discussed.
 ** smb server uses ClientGuid and LeaseKey given by ObjectStore
 
  ==> !Inconsistent\! -- What to do?!
-
 [block]>
 
 
-==== Multi-Channel $\in$ Samba : pass by SessionID ====
+==== Multi-Channel $\in$ Samba : pass by SessionID (plan B) ====
 
 <[center]
 <<<smb3-mc-samba-v2.png,height=.9\textheight>>>
@@ -247,7 +263,7 @@ There is confusion -- currently being discussed.
 # implement smbd message to pass a tcp socket [ess.DONE]
 # transfer connection in Negotiate (by ClientGUID) [ess.DONE]
 # implement session bind [ess.DONE]
-# transfer connection in Session Bind (by SessionID) [WIP]
+# transfer connection in Session Bind (by SessionID) [thinking..]
 # implement channel epoch numbers [WIP]
 # implement interface discovery [WIP]
 # implement test case [WIP(isn't it always?... $\smiley$)]