aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs
diff options
context:
space:
mode:
authorShirish Pargaonkar <shirishp@us.ibm.com>2008-02-12 15:46:26 -0500
committerSteve French <sfrench@us.ibm.com>2008-02-12 15:46:26 -0500
commitd9f382eff6fbabcd09dad4558d1797c267e9746e (patch)
treed59f564418da4b62355ab2576aee02bee38f3add /fs/cifs
parent6f7e8f376360c789cf84a0321960dcef8bf92aff (diff)
[CIFS] patch to fix incorrect encoding of number of aces on set mode
This patch fixes an error in the experimental cifs acl code. During chmod, set security descriptor data (num aces) is not sent with little-endian encoding. Signed-off-by: Shirish Pargaonkar <shirishp@us.ibm.com> Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs')
-rw-r--r--fs/cifs/cifsacl.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/cifs/cifsacl.c b/fs/cifs/cifsacl.c
index 49485108454f..f93932c21772 100644
--- a/fs/cifs/cifsacl.c
+++ b/fs/cifs/cifsacl.c
@@ -372,10 +372,6 @@ static void parse_dacl(struct cifs_acl *pdacl, char *end_of_acl,
372 ppace = kmalloc(num_aces * sizeof(struct cifs_ace *), 372 ppace = kmalloc(num_aces * sizeof(struct cifs_ace *),
373 GFP_KERNEL); 373 GFP_KERNEL);
374 374
375/* cifscred->cecount = pdacl->num_aces;
376 cifscred->aces = kmalloc(num_aces *
377 sizeof(struct cifs_ace *), GFP_KERNEL);*/
378
379 for (i = 0; i < num_aces; ++i) { 375 for (i = 0; i < num_aces; ++i) {
380 ppace[i] = (struct cifs_ace *) (acl_base + acl_size); 376 ppace[i] = (struct cifs_ace *) (acl_base + acl_size);
381#ifdef CONFIG_CIFS_DEBUG2 377#ifdef CONFIG_CIFS_DEBUG2
@@ -428,7 +424,7 @@ static int set_chmod_dacl(struct cifs_acl *pndacl, struct cifs_sid *pownersid,
428 &sid_everyone, nmode, S_IRWXO); 424 &sid_everyone, nmode, S_IRWXO);
429 425
430 pndacl->size = cpu_to_le16(size + sizeof(struct cifs_acl)); 426 pndacl->size = cpu_to_le16(size + sizeof(struct cifs_acl));
431 pndacl->num_aces = 3; 427 pndacl->num_aces = cpu_to_le32(3);
432 428
433 return (0); 429 return (0);
434} 430}