summaryrefslogtreecommitdiff
path: root/setcifsacl.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@samba.org>2012-11-07 10:19:16 -0500
committerJeff Layton <jlayton@samba.org>2012-11-07 10:19:16 -0500
commitb07c3d72ff27e1818e3c1a38466d027d04a54e04 (patch)
tree6a3af3b3293a51c821cac63a8566484a083db11d /setcifsacl.c
parent47400ee5dcdda7e7b77b536f4befb5c04c1c5144 (diff)
downloadcifs-utils-b07c3d72ff27e1818e3c1a38466d027d04a54e04.tar.gz
cifs-utils-b07c3d72ff27e1818e3c1a38466d027d04a54e04.tar.bz2
cifs-utils-b07c3d72ff27e1818e3c1a38466d027d04a54e04.zip
setcifsacl: fix up endianness conversions
Don't use htole32 when you really want le32toh. Also, when copying or comparing ACEs, it's incorrect to convert the endianness of these fields. Let's just keep things simple and declare that multibyte fields in all of these structs are always kept in little-endian. Signed-off-by: Jeff Layton <jlayton@samba.org>
Diffstat (limited to 'setcifsacl.c')
-rw-r--r--setcifsacl.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/setcifsacl.c b/setcifsacl.c
index 612796b..86dca9d 100644
--- a/setcifsacl.c
+++ b/setcifsacl.c
@@ -61,9 +61,9 @@ copy_sec_desc(const struct cifs_ntsd *pntsd, struct cifs_ntsd *pnntsd,
struct cifs_ctrl_acl *dacl_ptr, *ndacl_ptr;
/* copy security descriptor control portion */
- osidsoffset = htole32(pntsd->osidoffset);
- gsidsoffset = htole32(pntsd->gsidoffset);
- dacloffset = htole32(pntsd->dacloffset);
+ osidsoffset = le32toh(pntsd->osidoffset);
+ gsidsoffset = le32toh(pntsd->gsidoffset);
+ dacloffset = le32toh(pntsd->dacloffset);
pnntsd->revision = pntsd->revision;
pnntsd->type = pntsd->type;
@@ -110,7 +110,7 @@ copy_ace(struct cifs_ace *dace, struct cifs_ace *sace)
dace->type = sace->type;
dace->flags = sace->flags;
- dace->access_req = htole32(sace->access_req);
+ dace->access_req = sace->access_req;
dace->sid.revision = sace->sid.revision;
dace->sid.num_subauth = sace->sid.num_subauth;
@@ -119,9 +119,9 @@ copy_ace(struct cifs_ace *dace, struct cifs_ace *sace)
for (i = 0; i < sace->sid.num_subauth; i++)
dace->sid.sub_auth[i] = sace->sid.sub_auth[i];
- dace->size = htole16(sace->size);
+ dace->size = sace->size;
- return dace->size;
+ return le16toh(dace->size);
}
static int
@@ -155,7 +155,7 @@ compare_aces(struct cifs_ace *sace, struct cifs_ace *dace, int compflags)
}
if (compflags & COMPMASK) {
- if (dace->access_req != htole32(sace->access_req))
+ if (dace->access_req != sace->access_req)
return 0;
}