Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d9f382ef authored by Shirish Pargaonkar's avatar Shirish Pargaonkar Committed by Steve French
Browse files

[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: default avatarShirish Pargaonkar <shirishp@us.ibm.com>
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent 6f7e8f37
Loading
Loading
Loading
Loading
+1 −5
Original line number Original line Diff line number Diff line
@@ -372,10 +372,6 @@ static void parse_dacl(struct cifs_acl *pdacl, char *end_of_acl,
		ppace = kmalloc(num_aces * sizeof(struct cifs_ace *),
		ppace = kmalloc(num_aces * sizeof(struct cifs_ace *),
				GFP_KERNEL);
				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) {
		for (i = 0; i < num_aces; ++i) {
			ppace[i] = (struct cifs_ace *) (acl_base + acl_size);
			ppace[i] = (struct cifs_ace *) (acl_base + acl_size);
#ifdef CONFIG_CIFS_DEBUG2
#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);
					 &sid_everyone, nmode, S_IRWXO);


	pndacl->size = cpu_to_le16(size + sizeof(struct cifs_acl));
	pndacl->size = cpu_to_le16(size + sizeof(struct cifs_acl));
	pndacl->num_aces = 3;
	pndacl->num_aces = cpu_to_le32(3);


	return (0);
	return (0);
}
}