]> Git Repo - qemu.git/commit - hw/9pfs/9p-posix-acl.c
9pfs: fix removing non-existent POSIX ACL xattr on macOS host
authorChristian Schoenebeck <[email protected]>
Fri, 29 Apr 2022 10:25:22 +0000 (12:25 +0200)
committerChristian Schoenebeck <[email protected]>
Sun, 1 May 2022 12:07:03 +0000 (14:07 +0200)
commit9ea3164611a63e898a979f2da24caa1abd29d906
treec1b5241a93fb3c24c9e5f4bdab3913d7cf9b2e70
parent951fe2f89f46f5d51eead066556edc7369e23915
9pfs: fix removing non-existent POSIX ACL xattr on macOS host

When mapped POSIX ACL is used, we are ignoring errors when trying
to remove a POSIX ACL xattr that does not exist. On Linux hosts we
would get ENODATA in such cases, on macOS hosts however we get
ENOATTR instead.

As we can be sure that ENOATTR is defined as being identical on Linux
hosts (at least by qemu/xattr.h), it is safe to fix this issue by
simply comparing against ENOATTR instead of ENODATA.

This patch fixes e.g. a command on Linux guest like:

  cp --preserve=mode old new

Signed-off-by: Christian Schoenebeck <[email protected]>
Link: https://lore.kernel.org/qemu-devel/2866993.yOYK24bMf6@silver/
Reviewed-by: Greg Kurz <[email protected]>
Reviewed-by: Akihiko Odaki <[email protected]>
Message-Id: <34f81e9bffd7a3e65fb7aab5b56c107bd0aac960.1651228001[email protected]>
hw/9pfs/9p-posix-acl.c
This page took 0.024648 seconds and 4 git commands to generate.