{-# LINE 1 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LANGUAGE CApiFFI #-}
{-# OPTIONS_HADDOCK hide #-}
module Foundation.System.Bindings.Posix
where
import Basement.Compat.Base
import Basement.Compat.C.Types
import Data.Bits
import Foundation.System.Bindings.PosixDef
data CDir
data CDirent
sysPosix_E2BIG
, sysPosix_EACCES
, sysPosix_EADDRINUSE
, sysPosix_EADDRNOTAVAIL
, sysPosix_EAFNOSUPPORT
, sysPosix_EAGAIN
, sysPosix_EALREADY
, sysPosix_EBADF
, sysPosix_EBUSY
, sysPosix_ECANCELED
, sysPosix_ECHILD
, sysPosix_ECONNABORTED
, sysPosix_ECONNREFUSED
, sysPosix_ECONNRESET
, sysPosix_EDEADLK
, sysPosix_EDESTADDRREQ
, sysPosix_EDOM
, sysPosix_EDQUOT
, sysPosix_EEXIST
, sysPosix_EFAULT
, sysPosix_EFBIG
, sysPosix_EHOSTUNREACH
, sysPosix_EIDRM
, sysPosix_EILSEQ
, sysPosix_EINPROGRESS
, sysPosix_EINTR
, sysPosix_EINVAL
, sysPosix_EIO
, sysPosix_EISCONN
, sysPosix_EISDIR
, sysPosix_ELOOP
, sysPosix_EMFILE
, sysPosix_EMLINK
, sysPosix_EMSGSIZE
, sysPosix_ENAMETOOLONG
, sysPosix_ENETDOWN
, sysPosix_ENETRESET
, sysPosix_ENETUNREACH
, sysPosix_ENFILE
, sysPosix_ENOBUFS
, sysPosix_ENODEV
, sysPosix_ENOENT
, sysPosix_ENOEXEC
, sysPosix_ENOLCK
, sysPosix_ENOMEM
, sysPosix_ENOMSG
, sysPosix_ENOPROTOOPT
, sysPosix_ENOSPC
, sysPosix_ENOSYS
, sysPosix_ENOTCONN
, sysPosix_ENOTDIR
, sysPosix_ENOTEMPTY
, sysPosix_ENOTSOCK
, sysPosix_ENOTSUP
, sysPosix_ENOTTY
, sysPosix_ENXIO
, sysPosix_EOPNOTSUPP
, sysPosix_EOVERFLOW
, sysPosix_EPERM
, sysPosix_EPIPE
, sysPosix_EPROTONOSUPPORT
, sysPosix_EPROTOTYPE
, sysPosix_ERANGE
, sysPosix_EROFS
, sysPosix_ESPIPE
, sysPosix_ESRCH
, sysPosix_ESTALE
, sysPosix_ETIMEDOUT
, sysPosix_ETXTBSY
, sysPosix_EWOULDBLOCK
, sysPosix_EXDEV :: CErrno
sysPosix_E2BIG = (7)
{-# LINE 105 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EACCES = (13)
{-# LINE 106 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EADDRINUSE = (98)
{-# LINE 107 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EADDRNOTAVAIL = (99)
{-# LINE 108 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EAFNOSUPPORT = (97)
{-# LINE 109 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EAGAIN = (11)
{-# LINE 110 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EALREADY = (114)
{-# LINE 111 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EBADF = (9)
{-# LINE 112 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EBUSY = (16)
{-# LINE 113 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ECANCELED = (125)
{-# LINE 114 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ECHILD = (10)
{-# LINE 115 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ECONNABORTED = (103)
{-# LINE 116 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ECONNREFUSED = (111)
{-# LINE 117 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ECONNRESET = (104)
{-# LINE 118 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EDEADLK = (35)
{-# LINE 119 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EDESTADDRREQ = (89)
{-# LINE 120 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EDOM = (33)
{-# LINE 121 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EDQUOT = (122)
{-# LINE 122 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EEXIST = (17)
{-# LINE 123 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EFAULT = (14)
{-# LINE 124 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EFBIG = (27)
{-# LINE 125 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EHOSTUNREACH = (113)
{-# LINE 126 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EIDRM = (43)
{-# LINE 127 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EILSEQ = (84)
{-# LINE 128 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EINPROGRESS = (115)
{-# LINE 129 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EINTR = (4)
{-# LINE 130 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EINVAL = (22)
{-# LINE 131 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EIO = (5)
{-# LINE 132 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EISCONN = (106)
{-# LINE 133 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EISDIR = (21)
{-# LINE 134 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ELOOP = (40)
{-# LINE 135 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EMFILE = (24)
{-# LINE 136 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EMLINK = (31)
{-# LINE 137 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EMSGSIZE = (90)
{-# LINE 138 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENAMETOOLONG = (36)
{-# LINE 139 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENETDOWN = (100)
{-# LINE 140 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENETRESET = (102)
{-# LINE 141 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENETUNREACH = (101)
{-# LINE 142 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENFILE = (23)
{-# LINE 143 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOBUFS = (105)
{-# LINE 144 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENODEV = (19)
{-# LINE 145 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOENT = (2)
{-# LINE 146 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOEXEC = (8)
{-# LINE 147 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOLCK = (37)
{-# LINE 148 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOMEM = (12)
{-# LINE 149 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOMSG = (42)
{-# LINE 150 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOPROTOOPT = (92)
{-# LINE 151 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOSPC = (28)
{-# LINE 152 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOSYS = (38)
{-# LINE 153 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTCONN = (107)
{-# LINE 154 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTDIR = (20)
{-# LINE 155 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTEMPTY = (39)
{-# LINE 156 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTSOCK = (88)
{-# LINE 157 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTSUP = (95)
{-# LINE 158 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTTY = (25)
{-# LINE 159 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENXIO = (6)
{-# LINE 160 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EOPNOTSUPP = (95)
{-# LINE 161 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EOVERFLOW = (75)
{-# LINE 162 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EPERM = (1)
{-# LINE 163 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EPIPE = (32)
{-# LINE 164 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EPROTONOSUPPORT = (93)
{-# LINE 165 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EPROTOTYPE = (91)
{-# LINE 166 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ERANGE = (34)
{-# LINE 167 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EROFS = (30)
{-# LINE 168 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ESPIPE = (29)
{-# LINE 169 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ESRCH = (3)
{-# LINE 170 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ESTALE = (116)
{-# LINE 171 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ETIMEDOUT = (110)
{-# LINE 172 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ETXTBSY = (26)
{-# LINE 173 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EWOULDBLOCK = (11)
{-# LINE 174 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EXDEV = (18)
{-# LINE 175 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 177 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENODATA :: CErrno
sysPosix_ENODATA = (61)
{-# LINE 179 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 180 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 182 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOSR :: CErrno
sysPosix_ENOSR = (63)
{-# LINE 184 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 185 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 187 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOSTR :: CErrno
sysPosix_ENOSTR = (60)
{-# LINE 189 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 190 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 192 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ETIME :: CErrno
sysPosix_ETIME = (62)
{-# LINE 194 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 195 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 197 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EBADMSG :: CErrno
sysPosix_EBADMSG = (74)
{-# LINE 199 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 200 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 202 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EMULTIHOP :: CErrno
sysPosix_EMULTIHOP = (72)
{-# LINE 204 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 205 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 207 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOLINK :: CErrno
sysPosix_ENOLINK = (67)
{-# LINE 209 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 210 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 212 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_ENOTRECOVERABLE :: CErrno
sysPosix_ENOTRECOVERABLE = (131)
{-# LINE 214 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 215 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 217 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EOWNERDEAD :: CErrno
sysPosix_EOWNERDEAD = (130)
{-# LINE 219 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 220 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 222 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_EPROTO :: CErrno
sysPosix_EPROTO = (71)
{-# LINE 224 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 225 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_RDONLY
, sysPosix_O_WRONLY
, sysPosix_O_RDWR
, sysPosix_O_NONBLOCK
, sysPosix_O_APPEND
, sysPosix_O_CREAT
, sysPosix_O_TRUNC
, sysPosix_O_EXCL :: COpenFlags
sysPosix_O_RDONLY = (0)
{-# LINE 235 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_WRONLY = (1)
{-# LINE 236 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_RDWR = ((0) .|. (1))
{-# LINE 237 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_NONBLOCK = (2048)
{-# LINE 238 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_APPEND = (1024)
{-# LINE 239 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_CREAT = (64)
{-# LINE 240 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_TRUNC = (512)
{-# LINE 241 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_EXCL = (128)
{-# LINE 242 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 244 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_NOFOLLOW :: COpenFlags
sysPosix_O_NOFOLLOW = (131072)
{-# LINE 246 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 247 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 249 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_O_CLOEXEC :: COpenFlags
sysPosix_O_CLOEXEC = (524288)
{-# LINE 251 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 252 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_PROT_NONE
, sysPosix_PROT_READ
, sysPosix_PROT_WRITE
, sysPosix_PROT_EXEC :: CMemProtFlags
sysPosix_PROT_NONE = (0)
{-# LINE 258 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_PROT_READ = (1)
{-# LINE 259 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_PROT_WRITE = (2)
{-# LINE 260 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_PROT_EXEC = (4)
{-# LINE 261 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MAP_SHARED
, sysPosix_MAP_PRIVATE
, sysPosix_MAP_FIXED
, sysPosix_MAP_ANONYMOUS :: CMemMappingFlags
sysPosix_MAP_SHARED = (1)
{-# LINE 267 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MAP_PRIVATE = (2)
{-# LINE 268 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MAP_FIXED = (16)
{-# LINE 269 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 272 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MAP_ANONYMOUS = (32)
{-# LINE 273 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 274 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_NORMAL
, sysPosix_MADV_RANDOM
, sysPosix_MADV_SEQUENTIAL
, sysPosix_MADV_WILLNEED
, sysPosix_MADV_DONTNEED :: CMemAdvice
{-# LINE 281 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_NORMAL = (0)
{-# LINE 282 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_RANDOM = (1)
{-# LINE 283 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_SEQUENTIAL = (2)
{-# LINE 284 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_WILLNEED = (3)
{-# LINE 285 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MADV_DONTNEED = (4)
{-# LINE 286 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 293 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MS_ASYNC
, sysPosix_MS_SYNC
, sysPosix_MS_INVALIDATE :: CMemSyncFlags
sysPosix_MS_ASYNC = (1)
{-# LINE 298 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MS_SYNC = (4)
{-# LINE 299 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_MS_INVALIDATE = (2)
{-# LINE 300 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "mmap"
sysPosixMmap :: Ptr a -> CSize -> CMemProtFlags -> CMemMappingFlags -> CFd -> COff -> IO (Ptr a)
foreign import ccall unsafe "munmap"
sysPosixMunmap :: Ptr a -> CSize -> IO CInt
{-# LINE 308 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "posix_madvise"
sysPosixMadvise :: Ptr a -> CSize -> CMemAdvice -> IO CInt
{-# LINE 314 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "msync"
sysPosixMsync :: Ptr a -> CSize -> CMemSyncFlags -> IO CInt
foreign import ccall unsafe "mprotect"
sysPosixMprotect :: Ptr a -> CSize -> CMemProtFlags -> IO CInt
{-# LINE 322 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "mlock"
sysPosixMlock :: Ptr a -> CSize -> IO CInt
{-# LINE 328 "Foundation/System/Bindings/Posix.hsc" #-}
{-# LINE 330 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "munlock"
sysPosixMunlock :: Ptr a -> CSize -> IO CInt
{-# LINE 336 "Foundation/System/Bindings/Posix.hsc" #-}
sysPosix_SC_PAGESIZE :: CSysconfName
sysPosix_SC_PAGESIZE = (30)
{-# LINE 339 "Foundation/System/Bindings/Posix.hsc" #-}
foreign import ccall unsafe "sysconf"
sysPosixSysconf :: CSysconfName -> CLong
foreign import ccall unsafe "open"
sysPosixOpen :: Ptr CChar -> COpenFlags -> CMode -> IO CFd
foreign import ccall unsafe "openat"
sysPosixOpenAt :: CFd -> Ptr CChar -> COpenFlags -> CMode -> IO CFd
foreign import ccall unsafe "close"
sysPosixClose :: CFd -> IO CInt
foreign import capi "fcntl.h fcntl"
sysPosixFnctlNoArg :: CFd -> CInt -> IO CInt
foreign import capi "fcntl.h fcntl"
sysPosixFnctlPtr :: CFd -> CInt -> Ptr a -> IO CInt
foreign import ccall unsafe "ftruncate"
sysPosixFtruncate :: CFd -> COff -> IO CInt
foreign import ccall unsafe "opendir"
sysPosixOpendir :: Ptr CChar -> IO (Ptr CDir)
foreign import ccall unsafe "fdopendir"
sysPosixFdopendir :: CFd -> IO (Ptr CDir)
foreign import ccall unsafe "readdir"
sysPosixReaddir :: Ptr CDir -> IO (Ptr CDirent)
foreign import ccall unsafe "readdir_r"
sysPosixReaddirR :: Ptr CDir -> Ptr CDirent -> Ptr (Ptr CDirent) -> IO CInt
foreign import ccall unsafe "telldir"
sysPosixTelldir :: Ptr CDir -> IO CLong
foreign import ccall unsafe "seekdir"
sysPosixSeekdir :: Ptr CDir -> CLong -> IO ()
foreign import ccall unsafe "rewinddir"
sysPosixRewinddir :: Ptr CDir -> IO ()
foreign import ccall unsafe "closedir"
sysPosixClosedir :: Ptr CDir -> IO CInt
foreign import ccall unsafe "dirfd"
sysPosixDirfd :: Ptr CDir -> IO CFd