2016-03-01 15:57:46 -07:00
|
|
|
// Copyright 2014 The Go Authors. All rights reserved.
|
2014-11-21 08:22:18 -07:00
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
package runtime
|
|
|
|
|
|
|
|
const (
|
|
|
|
_NSIG = 32
|
|
|
|
_SI_USER = 1
|
|
|
|
|
|
|
|
// native_client/src/trusted/service_runtime/include/sys/errno.h
|
|
|
|
// The errors are mainly copied from Linux.
|
2016-02-10 22:46:51 -07:00
|
|
|
_EPERM = 1 /* Operation not permitted */
|
|
|
|
_ENOENT = 2 /* No such file or directory */
|
|
|
|
_ESRCH = 3 /* No such process */
|
|
|
|
_EINTR = 4 /* Interrupted system call */
|
|
|
|
_EIO = 5 /* I/O error */
|
|
|
|
_ENXIO = 6 /* No such device or address */
|
|
|
|
_E2BIG = 7 /* Argument list too long */
|
|
|
|
_ENOEXEC = 8 /* Exec format error */
|
|
|
|
_EBADF = 9 /* Bad file number */
|
|
|
|
_ECHILD = 10 /* No child processes */
|
|
|
|
_EAGAIN = 11 /* Try again */
|
|
|
|
// _ENOMEM is defined in mem_bsd.go for nacl.
|
|
|
|
// _ENOMEM = 12 /* Out of memory */
|
2014-11-21 08:22:18 -07:00
|
|
|
_EACCES = 13 /* Permission denied */
|
|
|
|
_EFAULT = 14 /* Bad address */
|
|
|
|
_EBUSY = 16 /* Device or resource busy */
|
|
|
|
_EEXIST = 17 /* File exists */
|
|
|
|
_EXDEV = 18 /* Cross-device link */
|
|
|
|
_ENODEV = 19 /* No such device */
|
|
|
|
_ENOTDIR = 20 /* Not a directory */
|
|
|
|
_EISDIR = 21 /* Is a directory */
|
|
|
|
_EINVAL = 22 /* Invalid argument */
|
|
|
|
_ENFILE = 23 /* File table overflow */
|
|
|
|
_EMFILE = 24 /* Too many open files */
|
|
|
|
_ENOTTY = 25 /* Not a typewriter */
|
|
|
|
_EFBIG = 27 /* File too large */
|
|
|
|
_ENOSPC = 28 /* No space left on device */
|
|
|
|
_ESPIPE = 29 /* Illegal seek */
|
|
|
|
_EROFS = 30 /* Read-only file system */
|
|
|
|
_EMLINK = 31 /* Too many links */
|
|
|
|
_EPIPE = 32 /* Broken pipe */
|
|
|
|
_ENAMETOOLONG = 36 /* File name too long */
|
|
|
|
_ENOSYS = 38 /* Function not implemented */
|
|
|
|
_EDQUOT = 122 /* Quota exceeded */
|
|
|
|
_EDOM = 33 /* Math arg out of domain of func */
|
|
|
|
_ERANGE = 34 /* Math result not representable */
|
|
|
|
_EDEADLK = 35 /* Deadlock condition */
|
|
|
|
_ENOLCK = 37 /* No record locks available */
|
|
|
|
_ENOTEMPTY = 39 /* Directory not empty */
|
|
|
|
_ELOOP = 40 /* Too many symbolic links */
|
|
|
|
_ENOMSG = 42 /* No message of desired type */
|
|
|
|
_EIDRM = 43 /* Identifier removed */
|
|
|
|
_ECHRNG = 44 /* Channel number out of range */
|
|
|
|
_EL2NSYNC = 45 /* Level 2 not synchronized */
|
|
|
|
_EL3HLT = 46 /* Level 3 halted */
|
|
|
|
_EL3RST = 47 /* Level 3 reset */
|
|
|
|
_ELNRNG = 48 /* Link number out of range */
|
|
|
|
_EUNATCH = 49 /* Protocol driver not attached */
|
|
|
|
_ENOCSI = 50 /* No CSI structure available */
|
|
|
|
_EL2HLT = 51 /* Level 2 halted */
|
|
|
|
_EBADE = 52 /* Invalid exchange */
|
|
|
|
_EBADR = 53 /* Invalid request descriptor */
|
|
|
|
_EXFULL = 54 /* Exchange full */
|
|
|
|
_ENOANO = 55 /* No anode */
|
|
|
|
_EBADRQC = 56 /* Invalid request code */
|
|
|
|
_EBADSLT = 57 /* Invalid slot */
|
|
|
|
_EDEADLOCK = _EDEADLK /* File locking deadlock error */
|
|
|
|
_EBFONT = 59 /* Bad font file fmt */
|
|
|
|
_ENOSTR = 60 /* Device not a stream */
|
|
|
|
_ENODATA = 61 /* No data (for no delay io) */
|
|
|
|
_ETIME = 62 /* Timer expired */
|
|
|
|
_ENOSR = 63 /* Out of streams resources */
|
|
|
|
_ENONET = 64 /* Machine is not on the network */
|
|
|
|
_ENOPKG = 65 /* Package not installed */
|
|
|
|
_EREMOTE = 66 /* The object is remote */
|
|
|
|
_ENOLINK = 67 /* The link has been severed */
|
|
|
|
_EADV = 68 /* Advertise error */
|
|
|
|
_ESRMNT = 69 /* Srmount error */
|
|
|
|
_ECOMM = 70 /* Communication error on send */
|
|
|
|
_EPROTO = 71 /* Protocol error */
|
|
|
|
_EMULTIHOP = 72 /* Multihop attempted */
|
|
|
|
_EDOTDOT = 73 /* Cross mount point (not really error) */
|
|
|
|
_EBADMSG = 74 /* Trying to read unreadable message */
|
|
|
|
_EOVERFLOW = 75 /* Value too large for defined data type */
|
|
|
|
_ENOTUNIQ = 76 /* Given log. name not unique */
|
|
|
|
_EBADFD = 77 /* f.d. invalid for this operation */
|
|
|
|
_EREMCHG = 78 /* Remote address changed */
|
|
|
|
_ELIBACC = 79 /* Can't access a needed shared lib */
|
|
|
|
_ELIBBAD = 80 /* Accessing a corrupted shared lib */
|
|
|
|
_ELIBSCN = 81 /* .lib section in a.out corrupted */
|
|
|
|
_ELIBMAX = 82 /* Attempting to link in too many libs */
|
|
|
|
_ELIBEXEC = 83 /* Attempting to exec a shared library */
|
|
|
|
_EILSEQ = 84
|
|
|
|
_EUSERS = 87
|
|
|
|
_ENOTSOCK = 88 /* Socket operation on non-socket */
|
|
|
|
_EDESTADDRREQ = 89 /* Destination address required */
|
|
|
|
_EMSGSIZE = 90 /* Message too long */
|
|
|
|
_EPROTOTYPE = 91 /* Protocol wrong type for socket */
|
|
|
|
_ENOPROTOOPT = 92 /* Protocol not available */
|
|
|
|
_EPROTONOSUPPORT = 93 /* Unknown protocol */
|
|
|
|
_ESOCKTNOSUPPORT = 94 /* Socket type not supported */
|
|
|
|
_EOPNOTSUPP = 95 /* Operation not supported on transport endpoint */
|
|
|
|
_EPFNOSUPPORT = 96 /* Protocol family not supported */
|
|
|
|
_EAFNOSUPPORT = 97 /* Address family not supported by protocol family */
|
|
|
|
_EADDRINUSE = 98 /* Address already in use */
|
|
|
|
_EADDRNOTAVAIL = 99 /* Address not available */
|
|
|
|
_ENETDOWN = 100 /* Network interface is not configured */
|
|
|
|
_ENETUNREACH = 101 /* Network is unreachable */
|
|
|
|
_ENETRESET = 102
|
|
|
|
_ECONNABORTED = 103 /* Connection aborted */
|
|
|
|
_ECONNRESET = 104 /* Connection reset by peer */
|
|
|
|
_ENOBUFS = 105 /* No buffer space available */
|
|
|
|
_EISCONN = 106 /* Socket is already connected */
|
|
|
|
_ENOTCONN = 107 /* Socket is not connected */
|
|
|
|
_ESHUTDOWN = 108 /* Can't send after socket shutdown */
|
|
|
|
_ETOOMANYREFS = 109
|
|
|
|
_ETIMEDOUT = 110 /* Connection timed out */
|
|
|
|
_ECONNREFUSED = 111 /* Connection refused */
|
|
|
|
_EHOSTDOWN = 112 /* Host is down */
|
|
|
|
_EHOSTUNREACH = 113 /* Host is unreachable */
|
|
|
|
_EALREADY = 114 /* Socket already connected */
|
|
|
|
_EINPROGRESS = 115 /* Connection already in progress */
|
|
|
|
_ESTALE = 116
|
|
|
|
_ENOTSUP = _EOPNOTSUPP /* Not supported */
|
|
|
|
_ENOMEDIUM = 123 /* No medium (in tape drive) */
|
|
|
|
_ECANCELED = 125 /* Operation canceled. */
|
|
|
|
_ELBIN = 2048 /* Inode is remote (not really error) */
|
|
|
|
_EFTYPE = 2049 /* Inappropriate file type or format */
|
|
|
|
_ENMFILE = 2050 /* No more files */
|
|
|
|
_EPROCLIM = 2051
|
|
|
|
_ENOSHARE = 2052 /* No such host or network path */
|
|
|
|
_ECASECLASH = 2053 /* Filename exists with different case */
|
|
|
|
_EWOULDBLOCK = _EAGAIN /* Operation would block */
|
|
|
|
|
|
|
|
// native_client/src/trusted/service_runtime/include/bits/mman.h.
|
|
|
|
// NOTE: DO NOT USE native_client/src/shared/imc/nacl_imc_c.h.
|
|
|
|
// Those MAP_*values are different from these.
|
|
|
|
_PROT_NONE = 0x0
|
|
|
|
_PROT_READ = 0x1
|
|
|
|
_PROT_WRITE = 0x2
|
|
|
|
_PROT_EXEC = 0x4
|
|
|
|
|
|
|
|
_MAP_SHARED = 0x1
|
|
|
|
_MAP_PRIVATE = 0x2
|
|
|
|
_MAP_FIXED = 0x10
|
|
|
|
_MAP_ANON = 0x20
|
|
|
|
|
|
|
|
_MADV_FREE = 0
|
|
|
|
_SIGFPE = 8
|
|
|
|
_FPE_INTDIV = 0
|
|
|
|
)
|
|
|
|
|
|
|
|
type siginfo struct{}
|