generic/529 always fails on ppc64 or s390x big-endian machine as:
set posix acl: Operation not supported
Due to the members of struct posix_acl_xattr_entry/header need to be
little-endian byte order, so use htole*() helper to make sure that.
Signed-off-by: Zorro Lang <zlang@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
#include <stdint.h>
#include <unistd.h>
#include <sys/xattr.h>
+#include <endian.h>
void die(const char *msg)
{
int main(int argc, char *argv[])
{
+ /* posix_acl_xattr_entry/header need little-endian order */
struct myacl acl = {
- .d = 2,
+ .d = htole32(2),
.e = {
- {1, 0, 0},
- {4, 0, 0},
- {0x10, 0, 0},
- {0x20, 0, 0},
+ {htole16(1), 0, 0},
+ {htole16(4), 0, 0},
+ {htole16(0x10), 0, 0},
+ {htole16(0x20), 0, 0},
},
};
char buf[64];