This structure can do either of the following:
The precise structure is service-dependent since it contains a control message whose size is determined by the service. In general, the structure takes the form shown below.
typedef struct tagReceiveInfo {
WORD wFlags;
WORD wStatus;
WORD wTransID;
DWORD dwDataSize;
LPVOID pData;
WORD _reserved;
RTHANDLE hForwPort;
GENADDR LocalAddress;
GENADDR RemoteAddress;
WORD wControlMsgLength;
BYTE byControlMessage[1];
} RECEIVEINFO, *LPRECEIVEINFO;);
wFlags
| Data type | Defines the data transmission type: CONTIGUOUS_BUFFER DATA_CHAIN DATA_LIST |
| Receive type | Identifies the received message type: NORMAL_MESSAGE STATUS_MESSAGE REQUEST_MESSAGE RESPONSE_MESSAGE It also determines the correct interpretation of the status and other receive fields. |
wStatus
wTransID
0 (zero) |
A new transactionless message has been received. |
| Non-zero | A request or response message, or a status message indicating an erroneous asynchronous transmission has been received. |
dwDataSize
pData
hForwPort
LocalAddress
RemoteAddress
wControlMsgLength
byControlMessage
GENADDR structure