Module rustix::backend

source ยท
Expand description

The linux_raw backend.

This makes Linux syscalls directly, without going through libc.

ยงSafety

These files performs raw system calls, and sometimes passes them uninitialized memory buffers. The signatures in this module are currently manually maintained and must correspond with the signatures of the actual Linux syscalls.

Some of this could be auto-generated from the Linux header file <linux/syscalls.h>, but we often need more information than it provides, such as which pointers are array slices, out parameters, or in-out parameters, which integers are owned or borrowed file descriptors, etc.

Modulesยง

  • arch ๐Ÿ”’
    Architecture-specific syscall code.
  • c ๐Ÿ”’
    Adapt the Linux API to resemble a POSIX-style libc API.
  • conv ๐Ÿ”’
    Convert values to ArgReg and from RetReg.
  • event ๐Ÿ”’
  • fd ๐Ÿ”’
  • fs ๐Ÿ”’
  • io ๐Ÿ”’
  • mount ๐Ÿ”’
  • net ๐Ÿ”’
  • param ๐Ÿ”’
  • pid ๐Ÿ”’
  • pipe ๐Ÿ”’
  • prctl ๐Ÿ”’
  • process ๐Ÿ”’
  • reg ๐Ÿ”’
    Encapsulation for system call arguments and return values.
  • shm ๐Ÿ”’
  • system ๐Ÿ”’
  • thread ๐Ÿ”’
  • time ๐Ÿ”’
  • ugid ๐Ÿ”’
  • vdso ๐Ÿ”’
    Parse the Linux vDSO.
  • vdso_wrappers ๐Ÿ”’
    Implement syscalls using the vDSO.

Constantsยง

  • MAX_IOV ๐Ÿ”’
    The maximum number of buffers that can be passed into a vectored I/O system call on the current platform.