From: Gerald Pfeifer gerald@pfeifer.com
On FreeBSD 12 and 14 ENODATA is not regularly defined. Cater to that in fd_get_file_info() and get_file_info(). --- dlls/ntdll/unix/file.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c index c7ba12a5c13..d5535af3827 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c @@ -1565,7 +1565,11 @@ static int fd_get_file_info( int fd, unsigned int options, struct stat *st, ULON attr_len = xattr_fget( fd, SAMBA_XATTR_DOS_ATTRIB, attr_data, sizeof(attr_data)-1 ); if (attr_len != -1) *attr |= parse_samba_dos_attrib_data( attr_data, attr_len ); - else if (errno != ENODATA && errno != ENOTSUP) + else if (errno != ENOTSUP +#ifdef ENODATA + && errno != ENODATA +#endif + ) WARN( "Failed to get extended attribute " SAMBA_XATTR_DOS_ATTRIB ". errno %d (%s)\n", errno, strerror( errno ) );
@@ -1653,7 +1657,11 @@ static int get_file_info( const char *path, struct stat *st, ULONG *attr ) attr_len = xattr_get( path, SAMBA_XATTR_DOS_ATTRIB, attr_data, sizeof(attr_data)-1 ); if (attr_len != -1) *attr |= parse_samba_dos_attrib_data( attr_data, attr_len ); - else if (errno != ENODATA && errno != ENOTSUP) + else if (errno != ENOTSUP +#ifdef ENODATA + && errno != ENODATA +#endif + ) WARN( "Failed to get extended attribute " SAMBA_XATTR_DOS_ATTRIB " from "%s". errno %d (%s)\n", path, errno, strerror( errno ) );