override_mode () used to suppress ENODATA only in a certain condition.
ENODATA errors in other situations made load_dir () fail because it
indirectly calls override_mode () when the underlying file system
reports DT_UNKNOWN for an opaque whiteout file and such an file does
not have mode xattrs. do_fchmod () and do_chmod () worked around the
problem by supressing ENODATA by themselves, but that led to code
duplication. Always suppress ENODATA to resolve these problems.
Signed-off-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
also honor user.containers.override_stat to override containers stat
override as it is set by containers/storage.
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
utils.c: file_exists_at: fallback to `fstatat` when `faccessat` fails with `EINVAL` (on musl).
.travis.yml: alpine test added.
main.c: reallocate path before appending.
Closes#174.
Signed-off-by: Max Goltzsche <max.goltzsche@gmail.com>
it caused an issue on armv7h where different versions of dirent struct
were used in main.c and in the other files.
Regression introduced with c2c2ac5b82fb59322da227d196214b4a58ede634
Closes: https://github.com/containers/fuse-overlayfs/issues/197
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>