ND_RESULT Structure

Provides the completion status of a request.

Syntax

typedef struct _ND_RESULT {
  HRESULT Status;
  SIZE_T  BytesTransferred;
} ND_RESULT, *PND_RESULT;

Members

  • Status
    Status of the request. See Remarks for the possible status values based on the type of operation.

  • BytesTransferred
    The number of bytes transferred by the request. Applies to Send, SendAndInvalidate, Receive, Read, and Write requests, and is undefined for other requests.

Remarks

The ND_RESULT structure that you pass to the Send, Receive, Read, Write, Bind, and Invalidate requests must remain valid for the duration of the request. (Even if the request returns ND_SUCCESS, you will still get a completion in the completion queue; you must ensure that the ND_RESULT you provided remains valid until the request completes in the completion queue.) The ND_RESULT structure that INDAdapter::CreateMemoryWindow returns is used to indicate when the peer invalidates the memory window.

The following table lists the possible status values.

Status code Description
ND_SUCCESS The operation succeeded.
ND_LOCAL_LENGTH The scatter/gather entries for a Send, Read, or Write request referenced more data than can be sent by the adapter.
ND_BUFFER_OVERFLOW An incoming Send exceeded the buffer space referenced by a receive request.
ND_ACCESS_VIOLATION The scatter/gather entries in a request referenced registered memory that is not valid, or a Bind operation attempted to bind to registered memory that is not valid.
ND_CANCELED The request was canceled (generally due to a previous request failing).
ND_INVALID_REQUEST The request was improperly formatted.
ND_FAILURE The endpoint experienced an error while processing this request.
ND_TIMEOUT The request timed out due to a connection failure or failure of the remote endpoint.
ND_REMOTE_ERROR The request caused an error on the remote endpoint.
ND_INVALIDATION_ERROR An Invalidate request or a SendAndInvalidate request attempted to invalidate a memory window that is not valid.

 

The result is added to the completion queue when the request completes.

Requirements

Product

Microsoft Message Passing Interface (MS-MPI)

Header

Ndspi.h

See Also

INDAdapter::CreateMemoryWindow

INDCompletionQueue::GetResult

INDEndpoint::Bind

INDEndpoint::Invalidate

INDEndpoint::Read

INDEndpoint::Receive

INDEndpoint::Send

INDEndpoint::SendAndInvalidate

INDEndpoint::Write

 

 

Send comments about this topic to Microsoft

Build date: 7/2/2010