# CDI service errors

The CDI service error codes are presented in two tables:

- Alphabetically by error code name.

- Numerically by hexadecimal number.

All CDI service functions return either SUCCESS, or an error code indicating that the function failed and the reason for the failure.

All CDI service error codes are Natural Access codes, defined in the ctaerr.h include file. For a complete list of Natural Access error codes, refer to the Natural Access Developer's Reference Manual.

## Errors ordered alphabetically

The following table alphabetically lists the CDI service errors:

Error name | Hex | Decimal | Description
--- | --- | --- | ---
CTAERR_BAD_ARGUMENT | 0x07 | 7 | Problem: A function argument had an invalid value, or a required pointer argument was NULL. Solution: Check all arguments for valid types and ranges.
CTAERR_BOARD_ERROR | 0x03 | 3 | An unexpected error occurred on the board. This function-dependent error is due either to a board overheating or to a temperature sensor malfunction.
CTAERR_FUNCTION_ACTIVE | 0x0F | 15 | An attempt was made to start a function that is already started.
CTAERR_FUNCTION_NOT_ACTIVE | 0x0E | 14 | An attempt was made to stop a function that was not running.
CTAERR_INVALID_CTAHD | 0x05 | 5 | An invalid context handle was passed as an argument to a function, or the context was destroyed by another thread.
CTAERR_INVALID_STATE | 0x0C | 12 | This function is not valid in the current state.
CTAERR_OUT_OF_RESOURCES | 0x08 | 8 | Problem: The CDI service was unable to find a free DTMF detector resource. Solution: Stop an unused DTMF detector (if any) or retry later.

## Errors ordered numerically

The following table numerically lists the CDI service errors:

Hex | Decimal | Error name
--- | --- | ---
0x03 | 3 | CTAERR_BOARD_ERROR
0x05 | 5 | CTAERR_INVALID_CTAHD
0x07 | 7 | CTAERR_BAD_ARGUMENT
0x08 | 8 | CTAERR_OUT_OF_RESOURCES
0x0C | 12 | CTAERR_INVALID_STATE
0x0E | 14 | CTAERR_FUNCTION_NOT_ACTIVE
0x0F | 15 | CTAERR_FUNCTION_ACTIVE