github.com/razvanm/vanadium-go-1.3@v0.0.0-20160721203343-4a65068e5915/src/runtime/os_nacl.h (about) 1 enum { 2 NSIG = 32, 3 SI_USER = 1, 4 5 // native_client/src/trusted/service_runtime/include/sys/errno.h 6 // The errors are mainly copied from Linux. 7 EPERM = 1, /* Operation not permitted */ 8 ENOENT = 2, /* No such file or directory */ 9 ESRCH = 3, /* No such process */ 10 EINTR = 4, /* Interrupted system call */ 11 EIO = 5, /* I/O error */ 12 ENXIO = 6, /* No such device or address */ 13 E2BIG = 7, /* Argument list too long */ 14 ENOEXEC = 8, /* Exec format error */ 15 EBADF = 9, /* Bad file number */ 16 ECHILD = 10, /* No child processes */ 17 EAGAIN = 11, /* Try again */ 18 ENOMEM = 12, /* Out of memory */ 19 EACCES = 13, /* Permission denied */ 20 EFAULT = 14, /* Bad address */ 21 EBUSY = 16, /* Device or resource busy */ 22 EEXIST = 17, /* File exists */ 23 EXDEV = 18, /* Cross-device link */ 24 ENODEV = 19, /* No such device */ 25 ENOTDIR = 20, /* Not a directory */ 26 EISDIR = 21, /* Is a directory */ 27 EINVAL = 22, /* Invalid argument */ 28 ENFILE = 23, /* File table overflow */ 29 EMFILE = 24, /* Too many open files */ 30 ENOTTY = 25, /* Not a typewriter */ 31 EFBIG = 27, /* File too large */ 32 ENOSPC = 28, /* No space left on device */ 33 ESPIPE = 29, /* Illegal seek */ 34 EROFS = 30, /* Read-only file system */ 35 EMLINK = 31, /* Too many links */ 36 EPIPE = 32, /* Broken pipe */ 37 ENAMETOOLONG = 36, /* File name too long */ 38 ENOSYS = 38, /* Function not implemented */ 39 EDQUOT = 122, /* Quota exceeded */ 40 EDOM = 33, /* Math arg out of domain of func */ 41 ERANGE = 34, /* Math result not representable */ 42 EDEADLK = 35, /* Deadlock condition */ 43 ENOLCK = 37, /* No record locks available */ 44 ENOTEMPTY = 39, /* Directory not empty */ 45 ELOOP = 40, /* Too many symbolic links */ 46 ENOMSG = 42, /* No message of desired type */ 47 EIDRM = 43, /* Identifier removed */ 48 ECHRNG = 44, /* Channel number out of range */ 49 EL2NSYNC = 45, /* Level 2 not synchronized */ 50 EL3HLT = 46, /* Level 3 halted */ 51 EL3RST = 47, /* Level 3 reset */ 52 ELNRNG = 48, /* Link number out of range */ 53 EUNATCH = 49, /* Protocol driver not attached */ 54 ENOCSI = 50, /* No CSI structure available */ 55 EL2HLT = 51, /* Level 2 halted */ 56 EBADE = 52, /* Invalid exchange */ 57 EBADR = 53, /* Invalid request descriptor */ 58 EXFULL = 54, /* Exchange full */ 59 ENOANO = 55, /* No anode */ 60 EBADRQC = 56, /* Invalid request code */ 61 EBADSLT = 57, /* Invalid slot */ 62 EDEADLOCK = EDEADLK, /* File locking deadlock error */ 63 EBFONT = 59, /* Bad font file fmt */ 64 ENOSTR = 60, /* Device not a stream */ 65 ENODATA = 61, /* No data (for no delay io) */ 66 ETIME = 62, /* Timer expired */ 67 ENOSR = 63, /* Out of streams resources */ 68 ENONET = 64, /* Machine is not on the network */ 69 ENOPKG = 65, /* Package not installed */ 70 EREMOTE = 66, /* The object is remote */ 71 ENOLINK = 67, /* The link has been severed */ 72 EADV = 68, /* Advertise error */ 73 ESRMNT = 69, /* Srmount error */ 74 ECOMM = 70, /* Communication error on send */ 75 EPROTO = 71, /* Protocol error */ 76 EMULTIHOP = 72, /* Multihop attempted */ 77 EDOTDOT = 73, /* Cross mount point (not really error) */ 78 EBADMSG = 74, /* Trying to read unreadable message */ 79 EOVERFLOW = 75, /* Value too large for defined data type */ 80 ENOTUNIQ = 76, /* Given log. name not unique */ 81 EBADFD = 77, /* f.d. invalid for this operation */ 82 EREMCHG = 78, /* Remote address changed */ 83 ELIBACC = 79, /* Can't access a needed shared lib */ 84 ELIBBAD = 80, /* Accessing a corrupted shared lib */ 85 ELIBSCN = 81, /* .lib section in a.out corrupted */ 86 ELIBMAX = 82, /* Attempting to link in too many libs */ 87 ELIBEXEC = 83, /* Attempting to exec a shared library */ 88 EILSEQ = 84, 89 EUSERS = 87, 90 ENOTSOCK = 88, /* Socket operation on non-socket */ 91 EDESTADDRREQ = 89, /* Destination address required */ 92 EMSGSIZE = 90, /* Message too long */ 93 EPROTOTYPE = 91, /* Protocol wrong type for socket */ 94 ENOPROTOOPT = 92, /* Protocol not available */ 95 EPROTONOSUPPORT = 93, /* Unknown protocol */ 96 ESOCKTNOSUPPORT = 94, /* Socket type not supported */ 97 EOPNOTSUPP = 95, /* Operation not supported on transport endpoint */ 98 EPFNOSUPPORT = 96, /* Protocol family not supported */ 99 EAFNOSUPPORT = 97, /* Address family not supported by protocol family */ 100 EADDRINUSE = 98, /* Address already in use */ 101 EADDRNOTAVAIL = 99, /* Address not available */ 102 ENETDOWN = 100, /* Network interface is not configured */ 103 ENETUNREACH = 101, /* Network is unreachable */ 104 ENETRESET = 102, 105 ECONNABORTED = 103, /* Connection aborted */ 106 ECONNRESET = 104, /* Connection reset by peer */ 107 ENOBUFS = 105, /* No buffer space available */ 108 EISCONN = 106, /* Socket is already connected */ 109 ENOTCONN = 107, /* Socket is not connected */ 110 ESHUTDOWN = 108, /* Can't send after socket shutdown */ 111 ETOOMANYREFS = 109, 112 ETIMEDOUT = 110, /* Connection timed out */ 113 ECONNREFUSED = 111, /* Connection refused */ 114 EHOSTDOWN = 112, /* Host is down */ 115 EHOSTUNREACH = 113, /* Host is unreachable */ 116 EALREADY = 114, /* Socket already connected */ 117 EINPROGRESS = 115, /* Connection already in progress */ 118 ESTALE = 116, 119 ENOTSUP = EOPNOTSUPP, /* Not supported */ 120 ENOMEDIUM = 123, /* No medium (in tape drive) */ 121 ECANCELED = 125, /* Operation canceled. */ 122 ELBIN = 2048, /* Inode is remote (not really error) */ 123 EFTYPE = 2049, /* Inappropriate file type or format */ 124 ENMFILE = 2050, /* No more files */ 125 EPROCLIM = 2051, 126 ENOSHARE = 2052, /* No such host or network path */ 127 ECASECLASH = 2053, /* Filename exists with different case */ 128 EWOULDBLOCK = EAGAIN, /* Operation would block */ 129 130 // native_client/src/trusted/service_runtime/include/bits/mman.h. 131 // NOTE: DO NOT USE native_client/src/shared/imc/nacl_imc_c.h. 132 // Those MAP_*values are different from these. 133 PROT_NONE = 0x0, 134 PROT_READ = 0x1, 135 PROT_WRITE = 0x2, 136 PROT_EXEC = 0x4, 137 138 MAP_SHARED = 0x1, 139 MAP_PRIVATE = 0x2, 140 MAP_FIXED = 0x10, 141 MAP_ANON = 0x20, 142 }; 143 typedef byte* kevent_udata; 144 145 int32 runtime·nacl_exception_stack(byte*, int32); 146 int32 runtime·nacl_exception_handler(void*, void*); 147 int32 runtime·nacl_sem_create(int32); 148 int32 runtime·nacl_sem_wait(int32); 149 int32 runtime·nacl_sem_post(int32); 150 int32 runtime·nacl_mutex_create(int32); 151 int32 runtime·nacl_mutex_lock(int32); 152 int32 runtime·nacl_mutex_trylock(int32); 153 int32 runtime·nacl_mutex_unlock(int32); 154 int32 runtime·nacl_cond_create(int32); 155 int32 runtime·nacl_cond_wait(int32, int32); 156 int32 runtime·nacl_cond_signal(int32); 157 int32 runtime·nacl_cond_broadcast(int32); 158 int32 runtime·nacl_cond_timed_wait_abs(int32, int32, Timespec*); 159 int32 runtime·nacl_thread_create(void*, void*, void*, void*); 160 int32 runtime·nacl_nanosleep(Timespec*, Timespec*); 161 162 void runtime·sigpanic(void);