L4Re Operating System Framework
Interface and Usage Documentation
|
The basic interface for an open POSIX file. More...
#include <vfs.h>
Additional Inherited Members | |
Public Member Functions inherited from L4Re::Vfs::Generic_file | |
virtual int | unlock_all_locks () noexcept=0 |
Unlock all locks on the file. | |
virtual int | fstat64 (struct stat64 *buf) const noexcept=0 |
Get status information for the file. | |
virtual int | fchmod (mode_t) noexcept=0 |
Change POSIX access rights on the file. | |
virtual int | get_status_flags () const noexcept=0 |
Get file status flags (fcntl F_GETFL). | |
virtual int | set_status_flags (long flags) noexcept=0 |
Set file status flags (fcntl F_SETFL). | |
Public Member Functions inherited from L4Re::Vfs::Regular_file | |
virtual L4::Cap< L4Re::Dataspace > | data_space () noexcept=0 |
Get an L4Re::Dataspace object for the file. | |
virtual ssize_t | readv (const struct iovec *, int iovcnt) noexcept=0 |
Read one or more blocks of data from the file. | |
virtual ssize_t | writev (const struct iovec *, int iovcnt) noexcept=0 |
Write one or more blocks of data to the file. | |
virtual off64_t | lseek64 (off64_t, int) noexcept=0 |
Change the file pointer. | |
virtual int | ftruncate64 (off64_t pos) noexcept=0 |
Truncate the file at the given position. | |
virtual int | fsync () const noexcept=0 |
Sync the data and meta data to persistent storage. | |
virtual int | fdatasync () const noexcept=0 |
Sync the data to persistent storage. | |
virtual int | get_lock (struct flock64 *lock) noexcept=0 |
Test if the given lock can be placed in the file. | |
virtual int | set_lock (struct flock64 *lock, bool wait) noexcept=0 |
Acquire or release the given lock on the file. | |
Public Member Functions inherited from L4Re::Vfs::Directory | |
virtual int | faccessat (const char *path, int mode, int flags) noexcept=0 |
Check access permissions on the given file. | |
virtual int | mkdir (const char *path, mode_t mode) noexcept=0 |
Create a new subdirectory. | |
virtual int | unlink (const char *path) noexcept=0 |
Unlink the given file from that directory. | |
virtual int | rename (const char *src_path, const char *dst_path) noexcept=0 |
Rename the given file. | |
virtual int | link (const char *src_path, const char *dst_path) noexcept=0 |
Create a hard link (second name) for the given file. | |
virtual int | symlink (const char *src_path, const char *dst_path) noexcept=0 |
Create a symbolic link for the given file. | |
virtual int | rmdir (const char *path) noexcept=0 |
Delete an empty directory. | |
Public Member Functions inherited from L4Re::Vfs::Special_file | |
virtual int | ioctl (unsigned long cmd, va_list args) noexcept=0 |
The famous IO control. | |
The basic interface for an open POSIX file.
An open POSIX file can be anything that hides behind a POSIX file descriptor. This means that even directories are files. An open file can be anything from a directory to a special device file so see Generic_file, Regular_file, Directory, and Special_file for more information.