Module rustix::io

source · []
Expand description

I/O operations.

Modules

epoll support.

Structs

O_* constants for use with dup2.

The error type for rustix APIs.

The EFD_* flags accepted by eventfd.

A buffer type used with Write::write_vectored.

A buffer type used with Read::read_vectored.

MAP_* flags for use with mmap.

MLOCK_* flags for use with mlock_with.

PROT_* flags for use with mprotect.

MREMAP_* flags for use with mremap.

MS_* flags for use with msync.

A wrapper around io_lifetimes::OwnedFd which closes the file descriptor using rustix’s own close rather than libc’s close.

O_* constants for use with pipe_with.

struct pollfd—File descriptor and flags for use with poll.

POLL* flags for use with poll.

PROT_* flags for use with mmap.

RWF_* constants for use with preadv2 and pwritev2.

The O_* flags accepted by userfaultfd.

Enums

POSIX_MADV_* constants for use with madvise.

Enumeration of possible methods to seek within an I/O object.

Constants

ICANON

PIPE_BUF—The maximum length at which writes to a pipe are atomic.

Functions

close(raw_fd)—Closes a RawFd directly.

dup(fd)—Creates a new OwnedFd instance that shares the same underlying file description as fd.

dup2(fd, new)—Creates a new OwnedFd instance that shares the same underlying file description as the existing OwnedFd instance, closing new and reusing its file descriptor.

dup3(fd, new, flags)—Creates a new OwnedFd instance that shares the same underlying file description as the existing OwnedFd instance, closing new and reusing its file descriptor, with flags.

eventfd(initval, flags)—Creates a file descriptor for event notification.

ioctl(fd, BLKPBSZGET)—Returns the physical block size of a block device.

ioctl(fd, BLKSSZGET)—Returns the logical block size of a block device.

ioctl(fd, FIONBIO, &value)—Enables or disables non-blocking mode.

ioctl(fd, FIONREAD)—Returns the number of bytes ready to be read.

ioctl(fd, TCGETS)—Get terminal attributes.

ioctl(fd, TIOCEXCL)—Enables exclusive mode on a terminal.

ioctl(fd, TIOCGWINSZ)—Get the current terminal window size.

ioctl(fd, TIOCNXCL)—Disables exclusive mode on a terminal.

Returns a pair of booleans indicating whether the file descriptor is readable and/or writable, respectively.

isatty(fd)—Tests whether a file descriptor refers to a terminal.

posix_madvise(addr, len, advice)—Declares an expected access pattern for a memory-mapped file.

mlock(ptr, len)—Lock memory into RAM.

mlock2(ptr, len, flags)—Lock memory into RAM, with flags.

mmap(ptr, len, prot, flags, fd, offset)—Create a file-backed memory mapping.

mmap(ptr, len, prot, MAP_ANONYMOUS | flags, -1, 0)—Create an anonymous memory mapping.

mprotect(ptr, len, flags)

mremap(old_address, old_size, new_size, flags)—Resize, modify, and/or move a memory mapping.

mremap(old_address, old_size, new_size, MREMAP_FIXED | flags)—Resize, modify, and/or move a memory mapping to a specific address.

msync(addr, len, flags)—Declares an expected access pattern for a memory-mapped file.

munlock(ptr, len)—Unlock memory.

munmap(ptr, len)

pipe()—Creates a pipe.

pipe2(flags)—Creates a pipe, with flags.

poll(self.fds, timeout)

pread(fd, buf, offset)—Reads from a file at a given position.

preadv(fd, bufs, offset)—Reads from a file at a given position into multiple buffers.

preadv2(fd, bufs, offset, flags)—Reads data, with several options.

Returns a handle to Linux’s /proc/self/fd directory.

Returns a handle to a Linux /proc/self/fdinfo/<fd> file.

Returns a handle to a Linux /proc/self/maps file.

Returns a handle to a Linux /proc/self/pagemap file.

pwrite(fd, bufs)—Writes to a file at a given position.

pwritev(fd, bufs, offset)—Writes to a file at a given position from multiple buffers.

pwritev2(fd, bufs, offset, flags)—Writes data, with several options.

read(fd, buf)—Reads from a stream.

readv(fd, bufs)—Reads from a stream into multiple buffers.

STDERR_FILENO—Standard error, borrowed.

STDIN_FILENO—Standard input, borrowed.

STDOUT_FILENO—Standard output, borrowed.

STDERR_FILENO—Standard error, owned.

STDIN_FILENO—Standard input, owned.

STDOUT_FILENO—Standard output, owned.

ttynameprocfs

ttyname_r(fd)

userfaultfd(flags)

Call f until it either succeeds or fails other than Error::INTR.

write(fd, buf)—Writes to a stream.

writev(fd, bufs)—Writes to a stream from multiple buffers.

Type Definitions

A specialized Result type for rustix APIs.

tcflag_t—A type for the flags fields of Termios.

struct termios for use with ioctl_tcgets.

struct winsize for use with ioctl_tiocgwinsz.