err.h revision 1fe0fc99ff9cde0c9f1f0855fba9c71b1fcccb33
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * InnoTek Portable Runtime - Status Codes.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Copyright (C) 2006 InnoTek Systemberatung GmbH
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * available from http://www.virtualbox.org. This file is free software;
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * you can redistribute it and/or modify it under the terms of the GNU
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * General Public License as published by the Free Software Foundation,
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * in version 2 as it comes in the "COPYING" file of the VirtualBox OSE
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * distribution. VirtualBox OSE is distributed in the hope that it will
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * be useful, but WITHOUT ANY WARRANTY of any kind.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * If you received this file as part of a commercial VirtualBox
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * distribution, then only the terms of your commercial VirtualBox
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * license agreement apply instead of the previous paragraph.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @defgroup grp_rt_err RTErr - Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @ingroup grp_rt
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/* SED-START */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Misc. Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Success. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** General failure - DON'T USE THIS!!!
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_GENERAL_FAILURE) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid parameter.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_INVALID_PARAM) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid magic or cookie.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_INVALID_MAGIC) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid loader handle.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_INVALID_HANDLE) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to lock the address range.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_INVALID_HANDLE) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid memory pointer.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_INVALID_POINTER) */
5eb36887f6970e0033f63fa135f3bb8fbfd6059bvboxsync/** Failed to patch the IDT.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_IDT_FAILED) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Memory allocation failed.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_NO_MEMORY) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Already loaded.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_ALREADY_LOADED) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Permission denied.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_PERMISSION_DENIED) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Version mismatch.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (aka SUPDRV_ERR_VERSION_MISMATCH) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The request function is not implemented. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to allocate temporary memory. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid file mode mask (RTFMODE). */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Incorrect call order. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** There is no TLS (thread local storage) available for storing the current thread. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to set the TLS (thread local storage) entry which points to our thread structure. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Not able to allocate contiguous memory. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** No memory available for page table or page directory. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Already initialized. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The specified thread is dead. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The specified thread is not waitable. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pagetable not present. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Internal error - we're screwed if this happens. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The per process timer is busy. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Address conflict. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) host platform error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid function. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Access denied. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Call interrupted. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Timeout. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Buffer too small to save result. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Buffer too small to save result. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Data size overflow. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Max threads number reached. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Max process number reached. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The recipient process has refused the signal. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A signal is already pending. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The signal being posted is not correct. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The state changed.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * This is a generic error message and needs a context to make sense. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Warning, the state changed.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * This is a generic error message and needs a context to make sense. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Error while parsing UUID string */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The specified process was not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The process specified to a non-block wait had not exitted. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Retry the operation. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Generic parse error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Value out of range. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A numeric convertion encountered a value which was too big for the target. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A numeric convertion encountered a value which was too big for the target. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The number begin converted (string) contained no digits. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The number begin converted (string) contained no digits. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Encountered a '-' during convertion to an unsigned value. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Encountered a '-' during convertion to an unsigned value. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Error while characters translation (unicode and so). */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Encountered unicode code point which is reserved for use as endian indicator (0xffff or 0xfffe). */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Encountered unicode code point in the surrogate range (0xd800 to 0xdfff). */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A string claiming to be UTF-8 is incorrectly encoded. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Ad string claiming to be in UTF-16 is incorrectly encoded. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Encountered a unicode code point which cannot be represented as UTF-16. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Got an out of memory condition trying to allocate a string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Got an out of memory condition trying to allocate a UTF-16 (/UCS-2) string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Get an out of memory condition trying to allocate a code point array. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't free the memory because it's used in mapping. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The timer can't be started because it's already active. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The timer can't be stopped because i's already suspended. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The operation was cancelled by the user. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to initialize a memory object.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Exactly what this means is OS specific. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Out of memory condition when allocating memory with low physical backing. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Out of memory condition when allocating physical memory (without mapping). */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The address (virtual or physical) is too big. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to map a memory object. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) file i/o error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** File/Device open failed. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** File not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Path not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid (malformed) file/path name. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** File/Device already exists. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Too many open files. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Seek error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Seek below file start. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Trying to seek on device. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Reached the end of the file. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Reached the end of the file. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Generic file read error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Generic file write error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Write protect error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Sharing violetion, file is being used by another process. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unable to lock a region of a file. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** File access error, another process has locked a portion of the file. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** File or directory can't be created. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Directory can't be deleted. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't move file to another disk. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The filename or extension is too long. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Media not present in drive. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The type of media was not recognized. Not formatted? */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't unlock - region was not locked. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unrecoverable error: lock was lost. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't delete directory with files. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A directory operation was attempted on a non-directory object. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** A non-directory operation was attempted on a directory object. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Tried to grow a file beyond the limit imposed by the process or the filesystem. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Filesystem I/O Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) disk i/o error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid drive number. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Disk is full. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Disk was changed. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Drive is locked. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The specified disk or diskette cannot be accessed. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Too many symbolic links. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Directory Enumeration Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) search error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** No more files found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** No more search handles available. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** RTDirReadEx() failed to retrieve the extra data which was requested. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Device I/O Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) device i/o error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: Bad unit. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: Not ready. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: Bad command. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: CRC error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: Bad length. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: Sector not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Device i/o: General failure. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Pipe I/O Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) pipe i/o error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Broken pipe. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Bad pipe. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pipe is busy. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** No data in pipe. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pipe is not connected. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** More data available in pipe. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Semaphores Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) semaphore error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Too many semaphores. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Exclusive semaphore is owned by another process. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The semaphore is set and cannot be closed. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The semaphore cannot be set again. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Attempt to release mutex not owned by caller. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The semaphore has been opened too many times. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The maximum posts for the event semaphore has been reached. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The event semaphore has already been posted. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The event semaphore has already been reset. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The semaphore is in use. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The previous ownership of this semaphore has ended. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Failed to open semaphore by name - not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Semaphore destroyed while waiting. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Nested ownership requests are not permitted for this semaphore type. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Deadlock detected. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Ping-Pong listen or speak out of turn error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Generic Network I/O Status Codes
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Unresolved (unknown) network error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The network is busy or is out of resources. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Net host name not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Network path not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** General network printing error. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The machine is not on the network. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Name is not unique on the network. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/* These are BSD networking error codes - numbers correspond, don't mess! */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Operation in progress. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Operation already in progress. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Attempted socket operation with a non-socket handle.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * (This includes closed handles.) */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Destination address required. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Message too long. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Protocol wrong type for socket. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Protocol not available. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Protocol not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Socket type not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Operation not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Protocol family not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define VERR_NET_PROTOCOL_FAMILY_NOT_SUPPORTED (-446)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Address family not supported by protocol family. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define VERR_NET_ADDRESS_FAMILY_NOT_SUPPORTED (-447)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Address already in use. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't assign requested address. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Network is down. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Network is unreachable. */
090c459b9e90ca46e2ce2b8c81533ade3b23f3e9vboxsync/** Network dropped connection on reset. */
090c459b9e90ca46e2ce2b8c81533ade3b23f3e9vboxsync/** Software caused connection abort. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Connection reset by peer. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** No buffer space available. */
090c459b9e90ca46e2ce2b8c81533ade3b23f3e9vboxsync/** Socket is already connected. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Socket is not connected. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Can't send after socket shutdown. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Too many references: can't splice. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Too many references: can't splice. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Connection refused. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/* ELOOP is not net. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/* ENAMETOOLONG is not net. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Host is down. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** No route to host. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name TCP Status Codes
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Stop the TCP server. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** The server was stopped. */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** @name L4 Specific Status Codes
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Invalid offset in an L4 dataspace */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** IPC error */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Item already used */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Source/destination not found */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Receive timeout */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Send timeout */
be9960565d2df0031f0e6c8a4610f5f0ae8c1845vboxsync/** Receive cancelled */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Send cancelled */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Receive aborted */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Send aborted */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Couldn't map pages during receive */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Couldn't map pages during send */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Send pagefault timeout in receive */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Send pagefault timeout in send */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** (One) receive buffer was too small, or too few buffers */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** (One) send buffer was too small, or too few buffers */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Dataspace manager server not found */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Loader Status Codes.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid executable signature. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a ELF image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a PE image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a LX image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a LE image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a NE image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized a MZ image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The iprt loader recognized an a.out image, but doesn't support loading it. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Bad executable. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Symbol (export) not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Module not found. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The loader resolved an external symbol to an address to big for the image format. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The image is too big. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The image base address is to high for this image type. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader encountered delayed imports, a feature which hasn't been implemented yet. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader doesn't have a clue what the security data directory entry is all about. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader doesn't know how to deal with the global pointer data directory entry yet. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader doesn't support the TLS data directory yet. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader doesn't grok the COM descriptor data directory entry. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader encountered an unknown load config directory/header size. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The PE loader encountered a lock prefix table, a feature which hasn't been implemented yet. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader doesn't handle foreign endianness. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF image is 'dynamic', the ELF loader can only deal with 'relocatable' images at present. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF image is 'executable', the ELF loader can only deal with 'relocatable' images at present. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF image was created for an unsupported target machine type. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF version is not supported. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader cannot handle multiple SYMTAB sections. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader encountered a relocation type which is not implemented. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader encountered a bad symbol index. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader encountered an invalid symbol name offset. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define VERR_LDRELF_INVALID_SYMBOL_NAME_OFFSET (-638)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The ELF loader encountered an invalid relocation offset. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define VERR_ELFLDR_INVALID_RELOCATION_OFFSET (-639)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Debug Info Reader Status Codes.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The specified segment:offset address was invalid. Typically an attempt at
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * addressing outside the segment boundrary. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @name Request Packet Status Codes.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid RT request type.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * For the RTReqAlloc() case, the caller just specified an illegal enmType. For
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * all the other occurences it means indicates corruption, broken logic, or stupid
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * interface user. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid RT request state.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * The state of the request packet was not the expected and accepted one(s). Either
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * the interface user screwed up, or we've got corruption/broken logic. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Invalid RT request packet.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * One or more of the RT controlled packet members didn't contain the correct
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * values. Some thing's broken. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The status field has not been updated yet as the request is still
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * pending completion. Someone queried the iStatus field before the request
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * has been fully processed. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** The request has been freed, don't read the status now.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Someone is reading the iStatus field of a freed request packet. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/* SED-END */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @defgroup grp_rt_err_hlp Status Code Helpers
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @ingroup grp_rt_err
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @def RT_SUCCESS
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Check for success. We expect success in normal cases, that is the code path depending on
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * this check is normally taken. To prevent any prediction use RT_SUCCESS_NP instead.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns true if rc indicates success.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns false if rc indicates failure.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The iprt status code to test.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define RT_SUCCESS(rc) ( RT_LIKELY((int)(rc) >= VINF_SUCCESS) )
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @def RT_SUCCESS_NP
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Check for success. Don't predict the result.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns true if rc indicates success.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns false if rc indicates failure.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The iprt status code to test.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define RT_SUCCESS_NP(rc) ( (int)(rc) >= VINF_SUCCESS )
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @def RT_FAILURE
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Check for failure. We don't expect in normal cases, that is the code path depending on
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * this check is normally NOT taken. To prevent any prediction use RT_FAILURE_NP instead.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns true if rc indicates failure.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns false if rc indicates success.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The iprt status code to test.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define RT_FAILURE(rc) ( RT_UNLIKELY(!RT_SUCCESS_NP(rc)) )
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** @def RT_FAILURE_NP
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Check for failure. Don't predict the result.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns true if rc indicates failure.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns false if rc indicates success.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The iprt status code to test.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Converts a Darwin HRESULT error to an iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param iNativeCode errno code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @remark Darwin only.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromDarwinCOM(int32_t iNativeCode);
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Converts a Darwin IOReturn error to an iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param iNativeCode errno code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @remark Darwin only.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromDarwinIO(int iNativeCode);
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Converts a Darwin kern_return_t error to an iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param iNativeCode errno code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @remark Darwin only.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromDarwinKern(int iNativeCode);
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Converts errno to iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param uNativeCode errno code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromErrno(unsigned uNativeCode);
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Converts a L4 errno to a iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param uNativeCode l4 errno.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @remark L4 only.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromL4Errno(unsigned uNativeCode);
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * Converts NT status code to iprt status code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * Needless to say, this is only available on NT and winXX targets.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @returns iprt status code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @param lNativeCode NT status code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @remark Windows only.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsyncRTDECL(int) RTErrConvertFromNtStatus(long lNativeCode);
564cc620447c495b6ff9cbb9274e225692fe38dfvboxsync * Converts OS/2 error code to iprt status code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @returns iprt status code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @param uNativeCode OS/2 error code.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * @remark OS/2 only.
af0a09edb4c1431b606fe207d4138da008f67f13vboxsyncRTDECL(int) RTErrConvertFromOS2(unsigned uNativeCode);
af0a09edb4c1431b606fe207d4138da008f67f13vboxsync * Converts Win32 error code to iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param uNativeCode Win32 error code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @remark Windows only.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsyncRTDECL(int) RTErrConvertFromWin32(unsigned uNativeCode);
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * iprt status code message.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsynctypedef struct RTSTATUSMSG
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Pointer to the short message string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Pointer to the full message string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Pointer to the define string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Status code number. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pointer to iprt status code message. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pointer to const iprt status code message. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Get the message structure corresponding to a given iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns Pointer to read-only message description.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Get the define corresponding to a given iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns Pointer to read-only string with the \#define identifier.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define RTErrGetDefine(rc) (RTErrGet(rc)->pszDefine)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Get the short description corresponding to a given iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns Pointer to read-only string with the description.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#define RTErrGetShort(rc) (RTErrGet(rc)->pszMsgShort)
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Get the full description corresponding to a given iprt status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns Pointer to read-only string with the description.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Windows error code message.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsynctypedef struct RTWINERRMSG
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Pointer to the full message string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Pointer to the define string. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync /** Error code number. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pointer to Windows error code message. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync/** Pointer to const Windows error code message. */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * Get the message structure corresponding to a given Windows error code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @returns Pointer to read-only message description.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync * @param rc The status code.
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#endif /* __WIN__ */
30a23dfc653298a09d77d3045cf873b1bd6ddecfvboxsync#endif /* IN_RING3 */