Determine if a file system supports files > 4GB
Determine if a file system supports files > 4GB
- Subject: Determine if a file system supports files > 4GB
- From: Dragan Milić <email@hidden>
- Date: Mon, 12 Aug 2013 15:34:07 +0200
I'm trying to determine if a file system supports "big" files (> 4GB). For that I used to use File Manager API and FSGetVolumeParms() to get extended volume attributes and then check for bSupports2TBFiles. Since the File Manager API has been deprecated as of OS X 10.8, I want to replace all usage of it by other APIs, but I couldn't figure out how to get this particular information.
Documentation suggests to replace FSGetVolumeParms() with -[NSURL getResourceValue:forKey:error:] at the Foundation level or with CFURLCopyResourcePropertyForKey() at the Core Foundation level. However, I couldn't find any key in NSURL/CFURL that would really provide the information I'm looking for.
There are no suggestions what to use at the POSIX level. I checked out statfs(), but it seems it doesn't help either; no particular information about support for "big" files, neither in struct statfs type, nor in its f_flags field. I've found something that suggests solution in "mount.h" header, flag VFS_TBL64BITREADY, but I don't want to go low to kernel level and I still don't know whether "file system 64-bit readiness" really means support for "big" files.
I know I can hard-code a list of known file types which support "big" files and use struct statfs fields f_fstypename and/or f_type, but I wouldn't consider that as a reliable approach.
-- Dragan
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden