Error Codes


These identifiers provide a common set of error codes that all packages can agree on.

It doesn't preclude them defining their own error return system, but this is a preferable system to use to help error support be as general as possible.

We try and conform to the ANSI/POSIX error code format, namely starting with the character 'E'

All error codes will be returned as negative values. That means a function does not return ERR_PERM but it returns -ERR_PERM. That means you simply need to check for negative return values to detect errors.
+ Collaboration diagram for Error Codes:


 Additional errors used by networking
 Additional user defined error codes
 CANopen Data link layer errors
 CANopen LSS transfer errors
 CANopen SDO transfer errors
 CANopen application layer errors
 CANopen device profile specific errors
 Common error codes
 Generic communication protocol specific error codes
 IPC/network software -- argument errors
 IPC/network software -- operational errors
 Non-blocking and interrupt i/o