#include <sys/types.h>
#include <errno.h>
Go to the source code of this file.
Error Classes | |
| Base values for all error classes. | |
| #define | actvErrorClass 0x80002000 |
| #define | almErrorClass 0x80000900 |
| #define | amErrorClass 0x80003D00 |
| #define | appErrorClass 0x80008000 |
| #define | appMgrErrorClass 0x80004000 |
| #define | attnErrorClass 0x80002E00 |
| #define | azmErrorClass 0x80003C00 |
| #define | bltErrorClass 0x80002300 |
| #define | blthErrorClass 0x80003100 |
| #define | bndErrorClass 0x80004A00 |
| #define | catmErrorClass 0x80004700 |
| #define | certErrorClass 0x80004800 |
| #define | cmpErrorClass 0x80000D00 |
| #define | cncErrorClass 0x80001F00 |
| #define | cpmErrorClass 0x80003800 |
| #define | dalErrorClass 0x8000FF00 |
| #define | dirErrorClass 0x80003E00 |
| #define | dispErrorClass 0x80002200 |
| #define | dlkErrorClass 0x80000E00 |
| #define | dmErrorClass 0x80000200 |
| #define | drvrErrorClass 0x80004500 |
| #define | dtErrorClass 0x80005600 |
| #define | dtIntProtClass 0x80005800 |
| #define | em68kErrorClass 0x80003400 |
| #define | emuErrorClass 0x80001C00 |
| #define | errInfoClass 0x80007F00 |
| #define | errorClassMask 0xFFFFFF00 |
| #define | evtErrorClass 0x80000700 |
| #define | exgErrorClass 0x80001500 |
| #define | expErrorClass 0x80002900 |
| #define | fileErrorClass 0x80001600 |
| #define | flpErrorClass 0x80000680 |
| #define | flshErrorClass 0x80001D00 |
| #define | fplErrorClass 0x80000600 |
| #define | ftrErrorClass 0x80000C00 |
| #define | grfErrorClass 0x80001000 |
| #define | grmlErrorClass 0x80003500 |
| #define | halErrorClass 0x80003B00 |
| #define | hsExgErrorClass 0x80004E00 |
| #define | htalErrorClass 0x80001300 |
| #define | HttpErrorClass 0x80004C00 |
| #define | hwrErrorClass 0x80003000 |
| #define | inetErrorClass 0x80001400 |
| #define | intlErrorClass 0x80002C00 |
| #define | iosErrorClass 0x80004200 |
| #define | IrCommErrorClass 0x80003700 |
| #define | IrErrorClass 0x80003600 |
| #define | kalErrorClass 0x80003A00 |
| #define | lmErrorClass 0x80002B00 |
| #define | lz77ErrorClass 0x80002700 |
| #define | mdmErrorClass 0x80001100 |
| #define | mediaErrorClass 0x80004600 |
| #define | memErrorClass 0x80000100 |
| #define | menuErrorClass 0x80002600 |
| #define | mimeErrorClass 0x80005700 |
| #define | mobileErrorClass 0x80006100 |
| #define | netErrorClass 0x80001200 |
| #define | oemErrorClass 0x80007000 |
| #define | omErrorClass 0x80002500 |
| #define | padErrorClass 0x80000F00 |
| #define | pdiErrorClass 0x80002D00 |
| #define | penErrorClass 0x80000B00 |
| #define | perfErrorClass 0x80004400 |
| #define | pinsErrorClass 0x80005000 |
| #define | postalErrorClass 0x80006000 |
| #define | pppErrorClass 0x80004F00 |
| #define | pwrErrorClass 0x80001E00 |
| #define | radioErrorClass 0x80002100 |
| #define | ralErrorClass 0x80004100 |
| #define | regexpErrorClass 0x80005200 |
| #define | rfutErrorClass 0x80001700 |
| #define | rimErrorClass 0x80005500 |
| #define | secErrorClass 0x80001B00 |
| #define | secSvcsErrorClass 0x80004900 |
| #define | serErrorClass 0x80000300 |
| #define | signErrorClass 0x80004300 |
| #define | slkErrorClass 0x80000400 |
| #define | smsErrorClass 0x80002800 |
| #define | sndErrorClass 0x80000800 |
| #define | sslErrorClass 0x80003900 |
| #define | statErrorClass 0x80005100 |
| #define | svcErrorClass 0x80003F00 |
| #define | syncMgrErrorClass 0x80004B00 |
| #define | sysErrorClass 0x80000500 |
| #define | telErrorClass 0x80002F00 |
| #define | timErrorClass 0x80000A00 |
| #define | tlsErrorClass 0x80003300 |
| #define | tsmErrorClass 0x80001900 |
| #define | txtErrorClass 0x80001800 |
| #define | udaErrorClass 0x80003200 |
| #define | uilibErrorClass 0x80005400 |
| #define | vaultErrorClass 0x80006200 |
| #define | vfsErrorClass 0x80002A00 |
| #define | webErrorClass 0x80001A00 |
| #define | winErrorClass 0x80002400 |
| #define | xmlErrorClass 0x80005900 |
Binder Error Codes | |
| Errors that are specific to the Binder infrastructure. | |
| #define | bndErrBadInterface ((status_t)(bndErrorClass | 7)) |
| Requested interface is not implemented. | |
| #define | bndErrBadTransact ((status_t)(bndErrorClass | 5)) |
| Transaction data is corrupt. | |
| #define | bndErrBadType ((status_t)(bndErrorClass | 2)) |
| Given argument has invalid type. | |
| #define | bndErrDead ((status_t)(bndErrorClass | 3)) |
| Target Binder is no longer with us. | |
| #define | bndErrIncStrongFailed ((status_t)(bndErrorClass | 11)) |
| AttemptIncStrong() -- no more strong refs. | |
| #define | bndErrMissingArg ((status_t)(bndErrorClass | 1)) |
| Required argument not supplied. | |
| #define | bndErrOutOfStack ((status_t)(bndErrorClass | 10)) |
| No more recursion for you! | |
| #define | bndErrReadNullValue ((status_t)(bndErrorClass | 11)) |
| Reading NULL value type from SParcel. | |
| #define | bndErrTooManyLoopers ((status_t)(bndErrorClass | 6)) |
| No more asynchronicity for you! | |
| #define | bndErrUnknownMethod ((status_t)(bndErrorClass | 8)) |
| Binder does not implement requested method. | |
| #define | bndErrUnknownProperty ((status_t)(bndErrorClass | 9)) |
| Binder does not implement requested property. | |
| #define | bndErrUnknownTransact ((status_t)(bndErrorClass | 4)) |
| Don't know the given transaction code. | |
Generic Error Codes | |
| You should use one of these error codes if it is applicable to your situation. | |
| #define | ECANCEL 5 |
| #define | errNone 0x00000000 |
| Non-error condition. | |
| #define | sysErrBadAddress ((status_t)(-EBADADDR)) |
| POSIX: The given address is not valid. | |
| #define | sysErrBadData ((status_t)(sysErrorClass | 47)) |
| Input data is corrupt. | |
| #define | sysErrBadDesignEncountered ((status_t)(sysErrorClass | 50)) |
| My bad. Will be fixed in the next version. Really. | |
| #define | sysErrBadIndex ((status_t)(sysErrorClass | 41)) |
| Out-of-range index supplied to function. | |
| #define | sysErrBadType ((status_t)(sysErrorClass | 42)) |
| Bad argument type supplied to function. | |
| #define | sysErrBrokenPipe ((status_t)(-EPIPE)) |
| POSIX: The IO pipe you are using is no longer working. | |
| #define | sysErrBufTooSmall ((status_t)(sysErrorClass | 13)) |
| #define | sysErrBusy ((status_t)(-EBUSY)) |
| POSIX: The target object is currently in use by someone else. | |
| #define | sysErrCanceled ((status_t)(-ECANCEL)) |
| POSIX: The operation was cancelled by another entity such as the user. | |
| #define | sysErrCPUArchitecture ((status_t)(sysErrorClass | 40)) |
| Loader: Program needs different architecture of the CPU to run. | |
| #define | sysErrDataTruncated ((status_t)(sysErrorClass | 48)) |
| Not all of the data got through. | |
| #define | sysErrDontDoThat ((status_t)(-EACCES)) |
| POSIX: That's not a good idea. | |
| #define | sysErrDynamicLinkerError ((status_t)(sysErrorClass | 38)) |
| Loader: Error occured during dynamic linking. | |
| #define | sysErrEndOfData ((status_t)(sysErrorClass | 54)) |
| Reached the end of data, no more data available. | |
| #define | sysErrEntryExists ((status_t)(-EEXIST)) |
| POSIX: Attempted to create an entry that already exists. | |
| #define | sysErrEntryNotFound ((status_t)(-ENOENT)) |
| POSIX: There is no entry with the requested name. | |
| #define | sysErrInternalError ((status_t)(sysErrorClass | 37)) |
| Loader: System encountered unexpected internal error. | |
| #define | sysErrInterrupted ((status_t)(-EINTR)) |
| POSIX: Your operation was rudely interrupted by something else in the system. | |
| #define | sysErrInvalidSignature ((status_t)(sysErrorClass | 36)) |
| Loader: Module has no valid digital signuture. | |
| #define | sysErrIO ((status_t)(sysErrorClass | 49)) |
| General IO error. | |
| #define | sysErrLibNotFound ((status_t)(sysErrorClass | 10)) |
| #define | sysErrMismatchedValues ((status_t)(sysErrorClass | 43)) |
| Conflicting values supplied to the function. | |
| #define | sysErrModuleFound68KCode ((status_t)(sysErrorClass | 33)) |
| Loader: ARM module not found, but 68K code resource was. | |
| #define | sysErrModuleIncompatible ((status_t)(sysErrorClass | 32)) |
| #define | sysErrModuleInvalid ((status_t)(sysErrorClass | 31)) |
| #define | sysErrModuleNotFound sysErrLibNotFound |
| #define | sysErrModuleRelocationError ((status_t)(sysErrorClass | 34)) |
| Loader: Failed to apply relocation while loading a module. | |
| #define | sysErrNameInUse ((status_t)(sysErrorClass | 45)) |
| The requested name already exists. Also see sysErrEntryExists. | |
| #define | sysErrNameNotFound ((status_t)(sysErrorClass | 44)) |
| The requested name does not exist. Also see sysErrEntryNotFound. | |
| #define | sysErrNameTooLong ((status_t)(-E2BIG)) |
| POSIX: A name string is longer than supported by the target. | |
| #define | sysErrNoFreeLibSlots ((status_t)(sysErrorClass | 9)) |
| #define | sysErrNoFreeRAM ((status_t)(sysErrorClass | 4)) |
| Not of enough RAM to perform needed allocation. | |
| #define | sysErrNoFreeResource ((status_t)(sysErrorClass | 3)) |
| The requested resource could not be allocated. | |
| #define | sysErrNoGlobalStructure ((status_t)(sysErrorClass | 35)) |
| Loader: Module has no global structure. | |
| #define | sysErrNoInit ((status_t)(sysErrorClass | 46)) |
| Target not initialized. | |
| #define | sysErrNotAllowed ((status_t)(sysErrorClass | 5)) |
| The requested operation is not allowed. | |
| #define | sysErrNotInitialized ((status_t)(sysErrorClass | 30)) |
| NotifyMgr Phase 2: Manager is not initialized. | |
| #define | sysErrOSVersion ((status_t)(sysErrorClass | 53)) |
| AppMgr: Program needs higher OS version to run. | |
| #define | sysErrOutOfOwnerIDs ((status_t)(sysErrorClass | 8)) |
| #define | sysErrOutOfRange ((status_t)(-ERANGE)) |
| POSIX: The input is not within a valid range. | |
| #define | sysErrParamErr ((status_t)(sysErrorClass | 2)) |
| The input parameters were invalid or corrupt. | |
| #define | sysErrPermissionDenied ((status_t)(-EPERM)) |
| POSIX: You do not have permission to access the given item. | |
| #define | sysErrPrefNotFound ((status_t)(sysErrorClass | 14)) |
| #define | sysErrProcessFaulted ((status_t)(sysErrorClass | 51)) |
| AppMgr: Process has faulted during execution. | |
| #define | sysErrRAMModuleNotAllowed ((status_t)(sysErrorClass | 39)) |
| Loader: RAM-based module cannot be loaded when device is booted into ROM-only mode. | |
| #define | sysErrRomIncompatible ((status_t)(sysErrorClass | 12)) |
| #define | sysErrTimeout ((status_t)(sysErrorClass | 1)) |
| The requested operation took too long to complete. | |
| #define | sysErrUnsupported ((status_t)(-ENOTSUP)) |
| POSIX: The requested operation is not supported. | |
| #define | sysErrWeakRefGone ((status_t)(sysErrorClass | 52)) |
| I was holding a weak reference, and that object is gone now. | |
| #define | sysErrWouldBlock ((status_t)(-EWOULDBLOCK)) |
| POSIX: The IO operation would need to block for some amount of time to complete. | |
| #define | sysNotifyErrBroadcastBusy ((status_t)(sysErrorClass | 19)) |
| NotifyMgr: A broadcast is already in progress - try again later. | |
| #define | sysNotifyErrBroadcastCancelled ((status_t)(sysErrorClass | 20)) |
| NotifyMgr: A handler cancelled the broadcast. | |
| #define | sysNotifyErrDuplicateEntry ((status_t)(sysErrorClass | 17)) |
| NotifyMgr: Identical entry already exists. | |
| #define | sysNotifyErrEntryNotFound ((status_t)(sysErrorClass | 16)) |
| NotifyMgr: Could not find registration entry in the list. | |
| #define | sysNotifyErrNoServer ((status_t)(sysErrorClass | 21)) |
| NotifyMgr: Can't find the notification server. | |
| #define | sysNotifyErrNoStackSpace ((status_t)(sysErrorClass | 29)) |
| NotifyMgr Phase 2: Not enough stack space for a broadcast. | |
| #define | sysNotifyErrQueueEmpty ((status_t)(sysErrorClass | 28)) |
| NotifyMgr Phase 2: Deferred queue is empty. | |
| #define | sysNotifyErrQueueFull ((status_t)(sysErrorClass | 27)) |
| NotifyMgr Phase 2: Deferred queue is full. | |
Error Reporting | |
| Definitions for program error reporting facilities. | |
| #define | ENOTSUP 524 |
| #define | errReportStripContext 0x00000001 |
| #define | errResponseBreak68K 0x00000004 |
| #define | errResponseBreakBoth (errResponseBreakNative + errResponseBreak68K) |
| #define | errResponseBreakNative 0x00000002 |
| #define | errResponseDefaultSet |
| #define | errResponseIgnore 0x00000008 |
| #define | errResponseKillProcess 0x00000010 |
| #define | errResponseShutdown 0x00000040 |
| #define | errResponseSoftReset 0x00000020 |
| #define | errResponseTryHighLevel 0x00000001 |
| #define | EWOULDBLOCK EAGAIN |
Media Error Codes | |
| Errors that are specific to multimedia operations. | |
| #define | mediaErrAlreadyConnected ((status_t)(mediaErrorClass | 4)) |
| #define | mediaErrAlreadyVisited ((status_t)(mediaErrorClass | 2)) |
| #define | mediaErrBufferFlowMismatch ((status_t)(mediaErrorClass | 7)) |
| #define | mediaErrFormatMismatch ((status_t)(mediaErrorClass | 1)) |
| #define | mediaErrNoBufferSource ((status_t)(mediaErrorClass | 6)) |
| #define | mediaErrNotConnected ((status_t)(mediaErrorClass | 5)) |
| #define | mediaErrStreamExhausted ((status_t)(mediaErrorClass | 3)) |
RegExp Error Codes | |
| Errors that are specific to regular expression parsing. | |
| #define | regexpErrCorruptedOpcode ((status_t)(regexpErrorClass | 16)) |
| Poor opcode. | |
| #define | regexpErrCorruptedPointers ((status_t)(regexpErrorClass | 15)) |
| Poor pointer. | |
| #define | regexpErrCorruptedProgram ((status_t)(regexpErrorClass | 13)) |
| Poor program. | |
| #define | regexpErrInternalError ((status_t)(regexpErrorClass | 10)) |
| Uh oh! | |
| #define | regexpErrInvalidBracketRange ((status_t)(regexpErrorClass | 8)) |
| Bad stuff inside []. | |
| #define | regexpErrJunkOnEnd ((status_t)(regexpErrorClass | 4)) |
| Junk isn't good for you. | |
| #define | regexpErrMemoryCorruption ((status_t)(regexpErrorClass | 14)) |
| Poor memory. | |
| #define | regexpErrNestedStarQuestionPlus ((status_t)(regexpErrorClass | 6)) |
| Likewise. | |
| #define | regexpErrQuestionPlusStarFollowsNothing ((status_t)(regexpErrorClass | 11)) |
| That's a mouthful. | |
| #define | regexpErrStarPlusOneOperandEmpty ((status_t)(regexpErrorClass | 5)) |
| As it says. | |
| #define | regexpErrTooBig ((status_t)(regexpErrorClass | 2)) |
| Not that we like hard-coded limits. | |
| #define | regexpErrTooManyParenthesis ((status_t)(regexpErrorClass | 3)) |
| No, really, we don't like hard-coded limits. | |
| #define | regexpErrTrailingBackslash ((status_t)(regexpErrorClass | 12)) |
| This isn't C. | |
| #define | regexpErrUnmatchedBracket ((status_t)(regexpErrorClass | 9)) |
| Such as []]. | |
| #define | regexpErrUnmatchedParenthesis ((status_t)(regexpErrorClass | 1)) |
| Such as ()). | |
Defines | |
| #define | exgErrAppError (exgErrorClass | 9) |
| #define | exgErrAuthRequired (exgErrorClass | 20) |
| #define | exgErrBadData (exgErrorClass | 8) |
| #define | exgErrBadLibrary (exgErrorClass | 17) |
| #define | exgErrBadParam (exgErrorClass | 14) |
| #define | exgErrConnection (exgErrorClass | 23) |
| #define | exgErrDeviceBusy (exgErrorClass | 16) |
| #define | exgErrDeviceFull (exgErrorClass | 11) |
| #define | exgErrDisconnected (exgErrorClass | 12) |
| #define | exgErrInvalidScheme (exgErrorClass | 25) |
| #define | exgErrInvalidURL (exgErrorClass | 24) |
| #define | exgErrLibError (exgErrorClass | 22) |
| #define | exgErrNoHardware (exgErrorClass | 19) |
| #define | exgErrNoKnownTarget (exgErrorClass | 5) |
| #define | exgErrNoReceiver (exgErrorClass | 4) |
| #define | exgErrNotAllowed (exgErrorClass | 7) |
| #define | exgErrNotEnoughPower (exgErrorClass | 18) |
| #define | exgErrNotFound (exgErrorClass | 13) |
| #define | exgErrNotSupported (exgErrorClass | 15) |
| #define | exgErrRedirect (exgErrorClass | 21) |
| #define | exgErrStackInit (exgErrorClass | 2) |
| #define | exgErrTargetMissing (exgErrorClass | 6) |
| #define | exgErrUnknown (exgErrorClass | 10) |
| #define | exgErrUserCancel (exgErrorClass | 3) |
| #define | exgMemError (exgErrorClass | 1) |
| #define | kDALError ((status_t)(dalErrorClass | 0x00FF)) |
| #define | kDALTimeout ((status_t)(sysErrorClass | 1)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Requested interface is not implemented.
|
|
|
Transaction data is corrupt.
|
|
|
Given argument has invalid type.
|
|
|
Target Binder is no longer with us.
|
|
|
AttemptIncStrong() -- no more strong refs.
|
|
|
Required argument not supplied.
|
|
|
|
|
|
No more recursion for you!
|
|
|
Reading NULL value type from SParcel.
|
|
|
No more asynchronicity for you!
|
|
|
Binder does not implement requested method.
|
|
|
Binder does not implement requested property.
|
|
|
Don't know the given transaction code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Non-error condition.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Value: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|