From f0bba969d87f0fd5c7d3f1ba001a5c9a754cd7ed Mon Sep 17 00:00:00 2001 From: Brad Smith Date: Sat, 10 Mar 2012 19:16:06 +0100 Subject: s3: Improve statvfs support Autobuild-User: Volker Lendecke Autobuild-Date: Sun Mar 11 14:18:04 CET 2012 on sn-devel-104 --- source3/smbd/statvfs.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'source3/smbd/statvfs.c') diff --git a/source3/smbd/statvfs.c b/source3/smbd/statvfs.c index 1e72a8e48b..5cefe2d4c2 100644 --- a/source3/smbd/statvfs.c +++ b/source3/smbd/statvfs.c @@ -151,12 +151,17 @@ static int linux_statvfs(const char *path, vfs_statvfs_struct *statbuf) statbuf->TotalFileNodes = statvfs_buf.f_files; statbuf->FreeFileNodes = statvfs_buf.f_ffree; statbuf->FsIdentifier = statvfs_buf.f_fsid; - - /* Good defaults for Linux filesystems are case sensitive - * and case preserving. + /* Try to extrapolate some of the fs flags into the + * capabilities */ statbuf->FsCapabilities = FILE_CASE_SENSITIVE_SEARCH | FILE_CASE_PRESERVED_NAMES; +#ifdef ST_QUOTA + if (statvfs_buf.f_flag & ST_QUOTA) + statbuf->FsCapabilities |= FILE_VOLUME_QUOTAS; +#endif + if (statvfs_buf.f_flag & ST_RDONLY) + statbuf->FsCapabilities |= FILE_READ_ONLY_VOLUME; } return result; } -- cgit