When an application using half-duplex flip-flop protocol sends a negative response to an outbound chain (or sends a Status-Acknowledge (ack) to a DATAFMI message with SDI set) that does not refer to a race, the application must assume an error recovery pending state. The sense codes used for race conditions that do not require the transition to error recovery pending state are:
0x080B | Bracket race error |
0x0813 | Bracket bid reject (no RTR forthcoming) |
0x0814 | Bracket bid reject (RTR forthcoming) |
0x081B | Receiver in transmit mode |
The application must therefore examine the sense code on an SDI message to detect such races.
Error recovery pending state differs from receive state only in one respect: The application can convey sense information to the host using Status-Control(LUSTAT)—see LUSTATs. The LUSTAT must not have the CD or EB flags set (the host already has direction, and the bracket must not be terminated prematurely by the application). SNA Server also allows the FMI application to send Status-Control(LUSTAT) in receive state (see LUSTATs).
An application using the half-duplex contention protocol does not have an error recovery pending state, and must enter contention state whenever it sends a negative response.
Note that if the chain is canceled by the host with CD on the CANCEL, the application must assume send state.