diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-03-13 10:49:09 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-03-13 10:49:09 +0100 |
| commit | 2036af94e97f0ac16293556423c144ec9e1b8226 (patch) | |
| tree | 9ba4096035e101f04ce28b2dea90998095983d46 /lib/std | |
| parent | a60292dfb3c09fe08d84f2b737fd25f751afa64d (diff) | |
| download | zig-2036af94e97f0ac16293556423c144ec9e1b8226.tar.gz zig-2036af94e97f0ac16293556423c144ec9e1b8226.zip | |
macos: add kernel return values
Diffstat (limited to 'lib/std')
| -rw-r--r-- | lib/std/c/darwin.zig | 220 |
1 files changed, 220 insertions, 0 deletions
diff --git a/lib/std/c/darwin.zig b/lib/std/c/darwin.zig index c0d2b13dfe..4a461cda97 100644 --- a/lib/std/c/darwin.zig +++ b/lib/std/c/darwin.zig @@ -1771,6 +1771,226 @@ pub const E = enum(u16) { _, }; +/// Kernel return values +pub const KernE = enum(u8) { + SUCCESS = 0, + + /// Specified address is not currently valid + INVALID_ADDRESS = 1, + + /// Specified memory is valid, but does not permit the + /// required forms of access. + PROTECTION_FAILURE = 2, + + /// The address range specified is already in use, or + /// no address range of the size specified could be + /// found. + NO_SPACE = 3, + + /// The function requested was not applicable to this + /// type of argument, or an argument is invalid + INVALID_ARGUMENT = 4, + + /// The function could not be performed. A catch-all. + FAILURE = 5, + + /// A system resource could not be allocated to fulfill + /// this request. This failure may not be permanent. + RESOURCE_SHORTAGE = 6, + + /// The task in question does not hold receive rights + /// for the port argument. + NOT_RECEIVER = 7, + + /// Bogus access restriction. + NO_ACCESS = 8, + + /// During a page fault, the target address refers to a + /// memory object that has been destroyed. This + /// failure is permanent. + MEMORY_FAILURE = 9, + + /// During a page fault, the memory object indicated + /// that the data could not be returned. This failure + /// may be temporary; future attempts to access this + /// same data may succeed, as defined by the memory + /// object. + MEMORY_ERROR = 10, + + /// The receive right is already a member of the portset. + ALREADY_IN_SET = 11, + + /// The receive right is not a member of a port set. + NOT_IN_SET = 12, + + /// The name already denotes a right in the task. + NAME_EXISTS = 13, + + /// The operation was aborted. Ipc code will + /// catch this and reflect it as a message error. + ABORTED = 14, + + /// The name doesn't denote a right in the task. + INVALID_NAME = 15, + + /// Target task isn't an active task. + INVALID_TASK = 16, + + /// The name denotes a right, but not an appropriate right. + INVALID_RIGHT = 17, + + /// A blatant range error. + INVALID_VALUE = 18, + + /// Operation would overflow limit on user-references. + UREFS_OVERFLOW = 19, + + /// The supplied (port) capability is improper. + INVALID_CAPABILITY = 20, + + /// The task already has send or receive rights + /// for the port under another name. + RIGHT_EXISTS = 21, + + /// Target host isn't actually a host. + INVALID_HOST = 22, + + /// An attempt was made to supply "precious" data + /// for memory that is already present in a + /// memory object. + MEMORY_PRESENT = 23, + + /// A page was requested of a memory manager via + /// memory_object_data_request for an object using + /// a MEMORY_OBJECT_COPY_CALL strategy, with the + /// VM_PROT_WANTS_COPY flag being used to specify + /// that the page desired is for a copy of the + /// object, and the memory manager has detected + /// the page was pushed into a copy of the object + /// while the kernel was walking the shadow chain + /// from the copy to the object. This error code + /// is delivered via memory_object_data_error + /// and is handled by the kernel (it forces the + /// kernel to restart the fault). It will not be + /// seen by users. + MEMORY_DATA_MOVED = 24, + + /// A strategic copy was attempted of an object + /// upon which a quicker copy is now possible. + /// The caller should retry the copy using + /// vm_object_copy_quickly. This error code + /// is seen only by the kernel. + MEMORY_RESTART_COPY = 25, + + /// An argument applied to assert processor set privilege + /// was not a processor set control port. + INVALID_PROCESSOR_SET = 26, + + /// The specified scheduling attributes exceed the thread's + /// limits. + POLICY_LIMIT = 27, + + /// The specified scheduling policy is not currently + /// enabled for the processor set. + INVALID_POLICY = 28, + + /// The external memory manager failed to initialize the + /// memory object. + INVALID_OBJECT = 29, + + /// A thread is attempting to wait for an event for which + /// there is already a waiting thread. + ALREADY_WAITING = 30, + + /// An attempt was made to destroy the default processor + /// set. + DEFAULT_SET = 31, + + /// An attempt was made to fetch an exception port that is + /// protected, or to abort a thread while processing a + /// protected exception. + EXCEPTION_PROTECTED = 32, + + /// A ledger was required but not supplied. + INVALID_LEDGER = 33, + + /// The port was not a memory cache control port. + INVALID_MEMORY_CONTROL = 34, + + /// An argument supplied to assert security privilege + /// was not a host security port. + INVALID_SECURITY = 35, + + /// thread_depress_abort was called on a thread which + /// was not currently depressed. + NOT_DEPRESSED = 36, + + /// Object has been terminated and is no longer available + TERMINATED = 37, + + /// Lock set has been destroyed and is no longer available. + LOCK_SET_DESTROYED = 38, + + /// The thread holding the lock terminated before releasing + /// the lock + LOCK_UNSTABLE = 39, + + /// The lock is already owned by another thread + LOCK_OWNED = 40, + + /// The lock is already owned by the calling thread + LOCK_OWNED_SELF = 41, + + /// Semaphore has been destroyed and is no longer available. + SEMAPHORE_DESTROYED = 42, + + /// Return from RPC indicating the target server was + /// terminated before it successfully replied + RPC_SERVER_TERMINATED = 43, + + /// Terminate an orphaned activation. + RPC_TERMINATE_ORPHAN = 44, + + /// Allow an orphaned activation to continue executing. + RPC_CONTINUE_ORPHAN = 45, + + /// Empty thread activation (No thread linked to it) + NOT_SUPPORTED = 46, + + /// Remote node down or inaccessible. + NODE_DOWN = 47, + + /// A signalled thread was not actually waiting. + NOT_WAITING = 48, + + /// Some thread-oriented operation (semaphore_wait) timed out + OPERATION_TIMED_OUT = 49, + + /// During a page fault, indicates that the page was rejected + /// as a result of a signature check. + CODESIGN_ERROR = 50, + + /// The requested property cannot be changed at this time. + POLICY_STATIC = 51, + + /// The provided buffer is of insufficient size for the requested data. + INSUFFICIENT_BUFFER_SIZE = 52, + + /// Denied by security policy + DENIED = 53, + + /// The KC on which the function is operating is missing + MISSING_KC = 54, + + /// The KC on which the function is operating is invalid + INVALID_KC = 55, + + /// A search or query operation did not return a result + NOT_FOUND = 56, + + _, +}; + pub const SIGSTKSZ = 131072; pub const MINSIGSTKSZ = 32768; |
