Modulebase-4.23.0.0Haskell2010
System.Posix.Internals
POSIX support layer for the standard libraries.
The API of this module is unstable and not meant to be consumed by the general public.
If you absolutely must depend on it, make sure to use a tight upper
bound, e.g., base < 4.X rather than base < 5, because the interface can
change rapidly without much warning.
This module is built on *every* platform, including Win32.
Non-POSIX compliant in order to support the following features: * S_ISSOCK (no sockets in POSIX)
Synopsis
- value c_access
- value c_chmod
- value c_close
- value c_creat
- value c_dup
- value c_dup2
- value c_fcntl_lock
- value c_fcntl_read
- value c_fcntl_write
- value c_fstat
- value c_ftruncate
- value c_getpid
- value c_interruptible_open
- value c_interruptible_open_
- value c_isatty
- value c_lflag
- value c_link
- value c_lseek
- value c_mkfifo
- value c_open
- value c_openat
- value c_pipe
- value c_read
- value c_s_isblk
- value c_s_ischr
- value c_s_isdir
- value c_s_isfifo
- value c_s_isreg
- value c_s_issock
- value c_safe_open
- value c_safe_open_
- value c_safe_read
- value c_safe_write
- value c_sigaddset
- value c_sigemptyset
- value c_sigprocmask
- value c_stat
- value c_tcgetattr
- value c_tcsetattr
- value c_umask
- value c_unlink
- value c_utime
- value c_waitpid
- value c_write
- value checkForInteriorNuls
- value const_echo
- value const_f_getfl
- value const_f_setfd
- value const_f_setfl
- value const_fd_cloexec
- value const_icanon
- value const_sig_block
- value const_sig_setmask
- value const_sigttou
- value const_tcsanow
- value const_vmin
- value const_vtime
- value dEFAULT_BUFFER_SIZE
- value fdFileSize
- value fdGetMode
- value fdStat
- value fdType
- value fileType
- value getEcho
- value get_saved_termios
- value hostIsThreaded
- value ioe_unknownfiletype
- value lstat
- value newFilePath
- value o_APPEND
- value o_BINARY
- value o_CREAT
- value o_EXCL
- value o_NOCTTY
- value o_NONBLOCK
- value o_RDONLY
- value o_RDWR
- value o_TRUNC
- value o_WRONLY
- value peekFilePath
- value peekFilePathLen
- value poke_c_lflag
- value ptr_c_cc
- value puts
- value rtsIsThreaded_
- value sEEK_CUR
- value sEEK_END
- value sEEK_SET
- value s_isblk
- value s_ischr
- value s_isdir
- value s_isfifo
- value s_isreg
- value s_issock
- value setCloseOnExec
- value setCooked
- value setEcho
- value setNonBlockingFD
- value set_saved_termios
- value sizeof_sigset_t
- value sizeof_stat
- value sizeof_termios
- value st_dev
- value st_ino
- value st_mode
- value st_mtime
- value st_size
- value statGetType
- value statGetType_maybe
- value tcSetAttr
- value throwInternalNulError
- value withFilePath
- data CFLock
- type CFilePath
- data CGroup
- data CLconv
- data CPasswd
- data CSigaction
- data CSigset
- data CStat
- data CTermios
- data CTm
- data CTms
- data CUtimbuf
- data CUtsname
- type FD
- Packagebase-4.23.0.0
- Exports126
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceInternals.hs
The same as c_safe_open, but an interruptible operation as described in Control.Exception—it respects uninterruptibleMask but not mask.
We want to be able to interrupt an openFile call if it's expensive (NFS, FUSE, etc.), and we especially need to be able to interrupt a blocking open call. See #17912.
Check an encoded FilePath for internal NUL octets as these are disallowed in POSIX filepaths. See #13660.
Consult the RTS to find whether it is threaded.
Return a known device type or throw an exception if the device type is unknown.
Unlike statGetType, statGetType_maybe will not throw an exception
if the CStat refers to a unknown device type.