diff options
author | Jeff Layton <jlayton@redhat.com> | 2008-08-02 07:26:12 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2008-08-06 00:17:20 -0400 |
commit | 4e1e7fb9e879d48011a887715d7966484d9644ea (patch) | |
tree | fd00305c34e71a6454144c8c65390245c698fdbc /fs/cifs/cifssmb.c | |
parent | 9e96af8525264973d8d1f800b0ddce0289fc0bdd (diff) |
bundle up Unix SET_PATH_INFO args into a struct and change name
We'd like to be able to use the unix SET_PATH_INFO_BASIC args to set
file times as well, but that makes the argument list rather long. Bundle
up the args for unix SET_PATH_INFO call into a struct. For now, we don't
actually use the times fields anywhere. That will be done in a follow-on
patch.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r-- | fs/cifs/cifssmb.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index c621ffa2ca90..ced8eaa9d37d 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
@@ -5013,10 +5013,9 @@ SetAttrLgcyRetry: | |||
5013 | #endif /* temporarily unneeded SetAttr legacy function */ | 5013 | #endif /* temporarily unneeded SetAttr legacy function */ |
5014 | 5014 | ||
5015 | int | 5015 | int |
5016 | CIFSSMBUnixSetPerms(const int xid, struct cifsTconInfo *tcon, | 5016 | CIFSSMBUnixSetInfo(const int xid, struct cifsTconInfo *tcon, char *fileName, |
5017 | char *fileName, __u64 mode, __u64 uid, __u64 gid, | 5017 | const struct cifs_unix_set_info_args *args, |
5018 | dev_t device, const struct nls_table *nls_codepage, | 5018 | const struct nls_table *nls_codepage, int remap) |
5019 | int remap) | ||
5020 | { | 5019 | { |
5021 | TRANSACTION2_SPI_REQ *pSMB = NULL; | 5020 | TRANSACTION2_SPI_REQ *pSMB = NULL; |
5022 | TRANSACTION2_SPI_RSP *pSMBr = NULL; | 5021 | TRANSACTION2_SPI_RSP *pSMBr = NULL; |
@@ -5025,6 +5024,7 @@ CIFSSMBUnixSetPerms(const int xid, struct cifsTconInfo *tcon, | |||
5025 | int bytes_returned = 0; | 5024 | int bytes_returned = 0; |
5026 | FILE_UNIX_BASIC_INFO *data_offset; | 5025 | FILE_UNIX_BASIC_INFO *data_offset; |
5027 | __u16 params, param_offset, offset, count, byte_count; | 5026 | __u16 params, param_offset, offset, count, byte_count; |
5027 | __u64 mode = args->mode; | ||
5028 | 5028 | ||
5029 | cFYI(1, ("In SetUID/GID/Mode")); | 5029 | cFYI(1, ("In SetUID/GID/Mode")); |
5030 | setPermsRetry: | 5030 | setPermsRetry: |
@@ -5080,16 +5080,16 @@ setPermsRetry: | |||
5080 | set file size and do not want to truncate file size to zero | 5080 | set file size and do not want to truncate file size to zero |
5081 | accidently as happened on one Samba server beta by putting | 5081 | accidently as happened on one Samba server beta by putting |
5082 | zero instead of -1 here */ | 5082 | zero instead of -1 here */ |
5083 | data_offset->EndOfFile = NO_CHANGE_64; | 5083 | data_offset->EndOfFile = cpu_to_le64(NO_CHANGE_64); |
5084 | data_offset->NumOfBytes = NO_CHANGE_64; | 5084 | data_offset->NumOfBytes = cpu_to_le64(NO_CHANGE_64); |
5085 | data_offset->LastStatusChange = NO_CHANGE_64; | 5085 | data_offset->LastStatusChange = cpu_to_le64(args->ctime); |
5086 | data_offset->LastAccessTime = NO_CHANGE_64; | 5086 | data_offset->LastAccessTime = cpu_to_le64(args->atime); |
5087 | data_offset->LastModificationTime = NO_CHANGE_64; | 5087 | data_offset->LastModificationTime = cpu_to_le64(args->mtime); |
5088 | data_offset->Uid = cpu_to_le64(uid); | 5088 | data_offset->Uid = cpu_to_le64(args->uid); |
5089 | data_offset->Gid = cpu_to_le64(gid); | 5089 | data_offset->Gid = cpu_to_le64(args->gid); |
5090 | /* better to leave device as zero when it is */ | 5090 | /* better to leave device as zero when it is */ |
5091 | data_offset->DevMajor = cpu_to_le64(MAJOR(device)); | 5091 | data_offset->DevMajor = cpu_to_le64(MAJOR(args->device)); |
5092 | data_offset->DevMinor = cpu_to_le64(MINOR(device)); | 5092 | data_offset->DevMinor = cpu_to_le64(MINOR(args->device)); |
5093 | data_offset->Permissions = cpu_to_le64(mode); | 5093 | data_offset->Permissions = cpu_to_le64(mode); |
5094 | 5094 | ||
5095 | if (S_ISREG(mode)) | 5095 | if (S_ISREG(mode)) |