From 6de4e58cf27a3bb6e81653ca63b77e29d1bb46f2 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sat, 30 Sep 2023 14:19:14 +0200 Subject: [PATCH] patch 9.0.1963: Configure script may not detect xattr Problem: Configure script may not detect xattr correctly Solution: include sys/xattr instead of attr/xattr, make Test_write_with_xattr_support() test xattr feature correctly This also applies to the Smack security feature, so change the include and configure script for it as well. closes: #13229 Signed-off-by: Christian Brabandt Co-authored-by: zeertzjq --- src/auto/configure | 4 ++-- src/configure.ac | 4 ++-- src/os_unix.c | 4 ++-- src/testdir/test_writefile.vim | 1 + src/version.c | 2 ++ 5 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/auto/configure b/src/auto/configure index 54c1aa815..9eca87c27 100755 --- a/src/auto/configure +++ b/src/auto/configure @@ -5279,7 +5279,7 @@ else printf "%s\n" "yes" >&6; } fi if test "$enable_smack" = "yes"; then - ac_fn_c_check_header_compile "$LINENO" "attr/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default" + ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default" if test "x$ac_cv_header_attr_xattr_h" = xyes then : true @@ -5434,7 +5434,7 @@ fi if test "$enable_xattr" = "yes"; then { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } - ac_fn_c_check_header_compile "$LINENO" "attr/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default" + ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default" if test "x$ac_cv_header_attr_xattr_h" = xyes then : printf "%s\n" "#define HAVE_XATTR 1" >>confdefs.h diff --git a/src/configure.ac b/src/configure.ac index e21e23490..4b2046dd5 100644 --- a/src/configure.ac +++ b/src/configure.ac @@ -480,7 +480,7 @@ else AC_MSG_RESULT(yes) fi if test "$enable_smack" = "yes"; then - AC_CHECK_HEADER([attr/xattr.h], true, enable_smack="no") + AC_CHECK_HEADER([sys/xattr.h], true, enable_smack="no") fi if test "$enable_smack" = "yes"; then AC_MSG_CHECKING(for XATTR_NAME_SMACKEXEC in linux/xattr.h) @@ -520,7 +520,7 @@ AC_ARG_ENABLE(xattr, , enable_xattr="yes") if test "$enable_xattr" = "yes"; then AC_MSG_RESULT(yes) - AC_CHECK_HEADER([attr/xattr.h], [AC_DEFINE(HAVE_XATTR)]) + AC_CHECK_HEADER([sys/xattr.h], [AC_DEFINE(HAVE_XATTR)]) else AC_MSG_RESULT(no) fi diff --git a/src/os_unix.c b/src/os_unix.c index 674dd9666..50acd5a0c 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -36,12 +36,12 @@ static int selinux_enabled = -1; #endif #ifdef FEAT_XATTR -# include +# include # define XATTR_VAL_LEN 1024 #endif #ifdef HAVE_SMACK -# include +# include # include # ifndef SMACK_LABEL_LEN # define SMACK_LABEL_LEN 1024 diff --git a/src/testdir/test_writefile.vim b/src/testdir/test_writefile.vim index a54efa7cf..3b0164e88 100644 --- a/src/testdir/test_writefile.vim +++ b/src/testdir/test_writefile.vim @@ -979,6 +979,7 @@ endfunc func Test_write_with_xattr_support() CheckLinux + CheckFeature xattr CheckExecutable setfattr let contents = ["file with xattrs", "line two"] diff --git a/src/version.c b/src/version.c index ffa5afcb5..f918ad896 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1963, /**/ 1962, /**/