Installation guide

6: Programming Considerations
DC 900-1564A 93
6.5 Error Conditions
6.5.1 iICPStatus Field Codes
The iICPStatus field serves two purposes. When the client application writes a com-
mand, this field identifies the client’s memory organization as Big Endian (0x0000) or
Little Endian (0x4000). When the client application reads a response, this field contains
either
DLI_ICP_CMD_STATUS_OK (zero) or a negative error code.
If the client application uses the DLI application program interface, the DLI automati-
cally fills in the correct memory organization indicator when the client application
writes a command to the SLC protocol service. If the client application uses any other
means to access the SLC protocol service on the ICP, the application must fill this field
in correctly.
Table 6–6 describes each negative error code that the SLC protocol service can report in
the
iICPStatus field. The client application should always use the symbolic name when
referencing a specific SLC error within program code, because the assigned values
defined within the
slc_errs.h file are subject to change.
Table 6–6: Error Codes Reported in the
iICPStatus Field
Error Code (iICPStatus field) Description
SLC_ERR_ACCESS_CONFLICT
Another DLI_ICP_CMD_ATTACH command has reserved the same
access mode on the same SLC network connection, or the speci-
fied ICP link is currently used as channel 2–7 on another SLC
network connection.
SLC_ERR_ACCESS_CONTROL_FORBIDDEN
The requested command is not permitted under
SLC_CONTROL_MODE access.
SLC_ERR_ACCESS_READER_FORBIDDEN
The requested command is not permitted under
SLC_READER_MODE access.
SLC_ERR_ACCESS_TRACE_FORBIDDEN
The requested command is not permitted under SLC_TRACE_MODE
access.
SLC_ERR_ACI_EXTENSION
The command contains an extended Additional Characteristics
Indicator that exceeds MAX_ACI_EXTENSION characters.