Copyright © tutorialspoint.com

# sysfs() - Unix, Linux System Call

# NAME

sysfs - get file system type information

# SYNOPSIS

int sysfs(int option, const char *fsname);

int sysfs(int option, unsigned int fs_index, char *buf);

int sysfs(int option);

# DESCRIPTION

sysfs() returns information about the file system types currently present in the kernel. The specific form of the sysfs() call and the information returned depends on the option in effect:

Tag | Description
--- | ---
1 | Translate the file-system identifier string fsname into a file-system type index.
2 | Translate the file-system type index fs_index into a null-terminated file-system identifier string. This string will be written to the buffer pointed to by buf. Make sure that buf has enough space to accept the string.
3 | Return the total number of file system types currently present in the kernel.

The numbering of the file-system type indexes begins with zero.

# RETURN VALUE

On success, sysfs() returns the file-system index for option 1, zero for option 2, and the number of currently configured file systems for option 3. On error, -1 is returned, and errno is set appropriately.

# ERRORS

Tag | Description
--- | ---
EFAULT | Either fsname or buf is outside your accessible address space.
EINVAL | fsname is not a valid file-system type identifier; fs_index is out-of-bounds; option is invalid.

# CONFORMING TO

SVr4.

# NOTE

On Linux with the proc filesystem mounted on /proc, the same information can be derived from /proc/filesystems.

# BUGS

There is no libc or glibc support. There is no way to guess how large buf should be.

Copyright © tutorialspoint.com