pdcomm_gem_formatted_program_verification_retry_verification
Function
Resends the S7F27 report after a grant whose automatic send failed.
PdcommStatus pdcomm_gem_formatted_program_verification_retry_verification(PdcommTcpEndpoint *endpoint, PdcommGemResult *result, PdcommTcpToken *out_token)Use it with the grant result (kind #PDCOMM_GEM_FAILED, outcome #PDCOMM_GEM_FORMATTED_PROGRAM_VERIFICATION_NEGOTIATION_GRANT_RECEIVED) or any other equipment-side result of the same negotiation. The S7F28 acknowledgement produces a later result with outcome #PDCOMM_GEM_FORMATTED_PROGRAM_VERIFICATION_NEGOTIATION_ACK_RECEIVED.
Parameters
| Name | Description |
|---|---|
endpoint | Communicating GEM equipment endpoint. |
result | Equipment-side result of a granted negotiation. |
out_token | Receives the S7F27 transaction token. It is zeroed first whenever it is not NULL, so it is zero after every failure. |
Returns
#PDCOMM_OK when the report was queued; #PDCOMM_INVALID_ARGUMENT when a pointer is NULL; #PDCOMM_INVALID_STATE when the endpoint is not a communicating GEM equipment, the service is not configured, or result is not a negotiation result; #PDCOMM_STALE_TOKEN when result is not an equipment-side record of this endpoint and session, or the negotiation already finished; #PDCOMM_INVALID_STATE also when the negotiation was not granted or the report was already sent; #PDCOMM_BACKPRESSURE when the endpoint holds a staged TCP event, all 32 GEM request slots are in use, or the send queue is full; other TCP statuses such as #PDCOMM_IO_ERROR; #PDCOMM_POISONED.