summaryrefslogtreecommitdiff
path: root/source4/smb_server/smb2/tcon.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2007-05-14 18:02:49 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 14:52:26 -0500
commitbf62b6642c77e14142cdb724dc99dd3f8bfd89ac (patch)
tree2b17ad07f9b77bb5ec7d4397b8306e02938095ba /source4/smb_server/smb2/tcon.c
parent37f8c04d900df00dd984dfd6be33b367b145a3ac (diff)
downloadsamba-bf62b6642c77e14142cdb724dc99dd3f8bfd89ac.tar.gz
samba-bf62b6642c77e14142cdb724dc99dd3f8bfd89ac.tar.bz2
samba-bf62b6642c77e14142cdb724dc99dd3f8bfd89ac.zip
r22866: handle incoming chained smb2 requests in our server code to let
the windows explorer in longhorn beta3 work. metze (This used to be commit 2390c9f24daccec917608cac0870890cdc73cb1c)
Diffstat (limited to 'source4/smb_server/smb2/tcon.c')
-rw-r--r--source4/smb_server/smb2/tcon.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/source4/smb_server/smb2/tcon.c b/source4/smb_server/smb2/tcon.c
index a98110ab85..023ca9b0a4 100644
--- a/source4/smb_server/smb2/tcon.c
+++ b/source4/smb_server/smb2/tcon.c
@@ -45,6 +45,17 @@ struct ntvfs_handle *smb2srv_pull_handle(struct smb2srv_request *req, const uint
uint32_t tid;
uint32_t pad;
+ /*
+ * if there're chained requests used the cached handle
+ *
+ * TODO: check if this also correct when the given handle
+ * isn't all 0xFF.
+ */
+ if (req->chained_file_handle) {
+ base = req->chained_file_handle;
+ offset = 0;
+ }
+
hid = BVAL(base, offset);
tid = IVAL(base, offset + 8);
pad = IVAL(base, offset + 12);