summaryrefslogtreecommitdiff
path: root/source4/smb_server/smb2
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2008-02-14 14:54:21 +1100
committerAndrew Tridgell <tridge@samba.org>2008-02-14 14:54:21 +1100
commit4a04a5e620a4666fc123d04cb96ef391de72c469 (patch)
tree81801b0f146d77f546f03382d644ca47d334bfe2 /source4/smb_server/smb2
parent501e8fbc3dd49e4e1b9ccc08f830af4f8c1a1095 (diff)
downloadsamba-4a04a5e620a4666fc123d04cb96ef391de72c469.tar.gz
samba-4a04a5e620a4666fc123d04cb96ef391de72c469.tar.bz2
samba-4a04a5e620a4666fc123d04cb96ef391de72c469.zip
A better way to handle the different format of RenameInformation in SMB2
We now define a separate info level RAW_SFILEINFO_RENAME_INFORMATION_SMB2 and set that level when handling SMB2 packets. This makes the parsers clearer. (This used to be commit f6cdf3f1177f63d80be757f007eb15380839b4f5)
Diffstat (limited to 'source4/smb_server/smb2')
-rw-r--r--source4/smb_server/smb2/fileinfo.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source4/smb_server/smb2/fileinfo.c b/source4/smb_server/smb2/fileinfo.c
index e375b7308f..e6521991ef 100644
--- a/source4/smb_server/smb2/fileinfo.c
+++ b/source4/smb_server/smb2/fileinfo.c
@@ -266,6 +266,11 @@ static NTSTATUS smb2srv_setinfo_file(struct smb2srv_setinfo_op *op, uint8_t smb2
io->generic.level = smb2_level + 1000;
io->generic.in.file.ntvfs = op->info->in.file.ntvfs;
+ /* handle cases that don't map directly */
+ if (io->generic.level == RAW_SFILEINFO_RENAME_INFORMATION) {
+ io->generic.level = RAW_SFILEINFO_RENAME_INFORMATION_SMB2;
+ }
+
status = smbsrv_pull_passthru_sfileinfo(io, io->generic.level, io,
&op->info->in.blob,
STR_UNICODE, &op->req->in.bufinfo);