From: Shirish Pargaonkar Date: Tue, 12 Feb 2008 20:46:26 +0000 (+0000) Subject: [CIFS] patch to fix incorrect encoding of number of aces on set mode X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=d9f382eff6fbabcd09dad4558d1797c267e9746e;p=mv-sheeva.git [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 Signed-off-by: Steve French --- diff --git a/fs/cifs/cifsacl.c b/fs/cifs/cifsacl.c index 49485108454..f93932c2177 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, ppace = kmalloc(num_aces * sizeof(struct cifs_ace *), GFP_KERNEL); -/* cifscred->cecount = pdacl->num_aces; - cifscred->aces = kmalloc(num_aces * - sizeof(struct cifs_ace *), GFP_KERNEL);*/ - for (i = 0; i < num_aces; ++i) { ppace[i] = (struct cifs_ace *) (acl_base + acl_size); #ifdef CONFIG_CIFS_DEBUG2 @@ -428,7 +424,7 @@ static int set_chmod_dacl(struct cifs_acl *pndacl, struct cifs_sid *pownersid, &sid_everyone, nmode, S_IRWXO); pndacl->size = cpu_to_le16(size + sizeof(struct cifs_acl)); - pndacl->num_aces = 3; + pndacl->num_aces = cpu_to_le32(3); return (0); }