diff options
author | Jeff Layton <jlayton@samba.org> | 2012-11-07 10:19:16 -0500 |
---|---|---|
committer | Jeff Layton <jlayton@samba.org> | 2012-11-07 10:19:16 -0500 |
commit | b07c3d72ff27e1818e3c1a38466d027d04a54e04 (patch) | |
tree | 6a3af3b3293a51c821cac63a8566484a083db11d | |
parent | 47400ee5dcdda7e7b77b536f4befb5c04c1c5144 (diff) | |
download | cifs-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>
-rw-r--r-- | setcifsacl.c | 14 |
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; } |