diff options
author | Stefan Metzmacher <metze@samba.org> | 2006-07-01 14:12:13 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:09:41 -0500 |
commit | a18fc61d4f6140ed6081d779dbad223cdd6df0cf (patch) | |
tree | 5b033d0ddea4d8f93d4280fde5e44be9df33e881 /source4 | |
parent | b20c00f718c09cc2c9077235488683e0ca98f5bc (diff) | |
download | samba-a18fc61d4f6140ed6081d779dbad223cdd6df0cf.tar.gz samba-a18fc61d4f6140ed6081d779dbad223cdd6df0cf.tar.bz2 samba-a18fc61d4f6140ed6081d779dbad223cdd6df0cf.zip |
r16733: implement SMB2 SetInfo
metze
(This used to be commit 9b6f74778f8db2fa18bb56dcbc6bd8168a882ac9)
Diffstat (limited to 'source4')
-rw-r--r-- | source4/smb_server/smb2/fileinfo.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/source4/smb_server/smb2/fileinfo.c b/source4/smb_server/smb2/fileinfo.c index 32b7d1094e..d6290da33e 100644 --- a/source4/smb_server/smb2/fileinfo.c +++ b/source4/smb_server/smb2/fileinfo.c @@ -255,7 +255,22 @@ static void smb2srv_setinfo_send(struct ntvfs_request *ntvfs) static NTSTATUS smb2srv_setinfo_file(struct smb2srv_setinfo_op *op, uint8_t smb2_level) { - return NT_STATUS_FOOBAR; + union smb_setfileinfo *io; + NTSTATUS status; + + io = talloc(op, union smb_setfileinfo); + NT_STATUS_HAVE_NO_MEMORY(io); + + /* the levels directly map to the passthru levels */ + io->generic.level = smb2_level + 1000; + io->generic.in.file.ntvfs = op->info->in.file.ntvfs; + + status = smbsrv_pull_passthru_sfileinfo(io, io->generic.level, io, + &op->info->in.blob, + STR_UNICODE, NULL); + NT_STATUS_NOT_OK_RETURN(status); + + return ntvfs_setfileinfo(op->req->ntvfs, io); } static NTSTATUS smb2srv_setinfo_fs(struct smb2srv_setinfo_op *op, uint8_t smb2_level) |