diff --git a/meta/recipes-devtools/pseudo/files/xattr_version.patch b/meta/recipes-devtools/pseudo/files/xattr_version.patch new file mode 100644 index 0000000000..a8b14bdd69 --- /dev/null +++ b/meta/recipes-devtools/pseudo/files/xattr_version.patch @@ -0,0 +1,54 @@ +On a tumbleweed system, "install X Y" was showing the error: + +pseudo: ENOSYS for 'fsetxattr'. + +which was being caused by dlsym() for that function returning NULL. This +appears to be due to it finding an unresolved symbol in libacl for this +symbol in libattr. It hasn't been resolved so its NULL. dlerror() returns +nothing since this is a valid symbol entry, its just not the one we want. + +We can add the glibc version string for the symbol we actually want so we get +that version rather than the libattr/libacl one. + +To quote libattr: +""" + These dumb wrappers are for backwards compatibility only. + Actual syscall wrappers are long gone to libc. +""" +and they are simply wrappers around the libc version so our attaching +to the libc versions should intercept any accesses via these too. + +RP 2020/06/22 +Signed-off-by: Richard Purdie