#include <sys/fstyp.h> #include <sys/fsid.h> int sysfs(int opcode, const char *fsname);
int sysfs(int opcode, int fs_index, char *buf);
int sysfs(int opcode);
The sysfs() function returns information about the file system types configured in the system. The number of arguments accepted by sysfs() depends on the opcode argument, which can take the following values:
Translate fsname, a null-terminated file-system type identifier, into a file-system type index.
Translate fs_index, a file-system type index, into a null-terminated file-system type identifier and write it into the buffer pointed to by buf, which must be at least of size FSTYPSZ as defined in <sys/fstyp.h>.
Return the total number of file system types configured in the system.
Upon successful completion, the value returned depends upon the opcode argument as follows:
the file-system type index
the number of file system types configured
Otherwise, −1 is returned and errno is set to indicate the error.
The sysfs() function will fail if:
The buf or fsname argument points to an illegal address.
The fsname argument points to an invalid file-system identifier; the fs_index argument is 0 or invalid; or the opcode argument is invalid.