USE_NTDLL=1\r
\r
SOURCES=\\r
- winverbs.rc \\r
- wv_main.cpp \\r
- wv_cq.cpp \\r
+ winverbs.rc \\r
+ wv_main.cpp \\r
+ wv_cq.cpp \\r
wv_device.cpp \\r
- wv_ep.cpp \\r
+ wv_ep.cpp \\r
wv_listen.cpp \\r
- wv_pd.cpp \\r
+ wv_pd.cpp \\r
wv_provider.cpp \\r
- wv_qp.cpp \\r
+ wv_qp.cpp \\r
wv_srq.cpp\r
\r
INCLUDES=..\..\..\inc;..\..\..\inc\user;\r
\r
STDMETHODIMP CWVCompletionQueue::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVCompletionQueue methods\r
STDMETHODIMP Resize(SIZE_T* pEntries);\r
\r
STDMETHODIMP CIWVDevice::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
//{\r
// *((UINT64*)pAttributes->FwVersion) = pCaAttr->fw_ver; //TODO: check this: 64 byte array?\r
// pAttributes->NodeGuid = pCaAttr->ca_guid;\r
-// pAttributes->SystemImageGuid = pCaAttr->system_image_guid;\r
+// pAttributes->SystemImageGuid = pCaAttr->system_image_guid;\r
// pAttributes->VendorId = pCaAttr->vend_id;\r
// pAttributes->VendorPartId = pCaAttr->dev_id;\r
// pAttributes->HwVersion = pCaAttr->revision;\r
//\r
// SetDeviceCap(&pAttributes->CapabilityFlags, pCaAttr);\r
-// pAttributes->AtomicCapability = (WV_ATOMIC_CAPABILITIES) pCaAttr->atomicity;\r
+// pAttributes->AtomicCapability = (WV_ATOMIC_CAPABILITIES) pCaAttr->atomicity;\r
// SetDevicePages(&pAttributes->PageSizeCapabilityFlags, pCaAttr);\r
//\r
// pAttributes->MaxMrSize = pCaAttr->init_region_size;\r
-// pAttributes->MaxQp = pCaAttr->max_qps;\r
+// pAttributes->MaxQp = pCaAttr->max_qps;\r
// pAttributes->MaxQpWr = pCaAttr->max_wrs;\r
-// pAttributes->MaxSge = pCaAttr->max_sges;\r
-// pAttributes->MaxCq = pCaAttr->max_cqs;\r
+// pAttributes->MaxSge = pCaAttr->max_sges;\r
+// pAttributes->MaxCq = pCaAttr->max_cqs;\r
// pAttributes->MaxCqEntries = pCaAttr->max_cqes;\r
-// pAttributes->MaxMr = pCaAttr->init_regions;\r
-// pAttributes->MaxPd = pCaAttr->max_pds;\r
+// pAttributes->MaxMr = pCaAttr->init_regions;\r
+// pAttributes->MaxPd = pCaAttr->max_pds;\r
// pAttributes->MaxQpResponderResources = pCaAttr->max_qp_resp_res;\r
-// pAttributes->MaxResponderResources = pCaAttr->max_resp_res;\r
-// pAttributes->MaxQpInitiatorDepth = pCaAttr->max_qp_init_depth;\r
-// pAttributes->MaxMw = pCaAttr->init_windows;\r
+// pAttributes->MaxResponderResources = pCaAttr->max_resp_res;\r
+// pAttributes->MaxQpInitiatorDepth = pCaAttr->max_qp_init_depth;\r
+// pAttributes->MaxMw = pCaAttr->init_windows;\r
// pAttributes->MaxMulticast = pCaAttr->max_mcast_grps;\r
// pAttributes->MaxQpAttach = pCaAttr->max_qps_per_mcast_grp;\r
// pAttributes->MaxMulticastQp = pCaAttr->max_mcast_qps;\r
-// pAttributes->MaxAh = pCaAttr->max_addr_handles;\r
-// pAttributes->MaxFmr = pCaAttr->max_fmr;\r
+// pAttributes->MaxAh = pCaAttr->max_addr_handles;\r
+// pAttributes->MaxFmr = pCaAttr->max_fmr;\r
// pAttributes->MaxMapPerFmr = pCaAttr->max_map_per_fmr;\r
-// pAttributes->MaxSrq = pCaAttr->max_srq;\r
+// pAttributes->MaxSrq = pCaAttr->max_srq;\r
// pAttributes->MaxSrqWr = pCaAttr->max_srq_wrs;\r
// pAttributes->MaxSrqSge = pCaAttr->max_srq_sges;\r
// pAttributes->MaxPkeys = pCaAttr->max_partitions;\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVDevice methods\r
STDMETHODIMP Query(WV_DEVICE_ATTRIBUTES* pAttributes);\r
\r
STDMETHODIMP CWVEndpoint::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
\r
STDMETHODIMP CWVConnectEndpoint::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
\r
STDMETHODIMP CWVDatagramEndpoint::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVEndpoint methods\r
STDMETHODIMP BindAddress(const struct sockaddr* pAddress);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVEndpoint methods\r
STDMETHODIMP BindAddress(const struct sockaddr* pAddress);\r
\r
// IWVConnectEndpoint methods\r
STDMETHODIMP Connect(IWVConnectQueuePair* pQp, WV_CONNECT_PARAM* pParam,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP Accept(IWVConnectQueuePair* pQp, WV_CONNECT_PARAM* pParam,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP Disconnect(OVERLAPPED* pOverlapped);\r
STDMETHODIMP NotifyDisconnect(OVERLAPPED* pOverlapped);\r
STDMETHODIMP Query(WV_CONNECT_ATTRIBUTES* pAttributes);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVEndpoint methods\r
STDMETHODIMP BindAddress(const struct sockaddr* pAddress);\r
\r
// IWVDatagramEndpoint methods\r
STDMETHODIMP Lookup(const VOID* pPrivateData, SIZE_T PrivateDataLength,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP Accept(WV_DATAGRAM_PARAM* pParam, OVERLAPPED* pOverlapped);\r
STDMETHODIMP JoinMulticast(const struct sockaddr* pAddress,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP LeaveMulticast(const struct sockaddr* pAddress,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP Query(WV_DATAGRAM_ATTRIBUTES* pAttributes);\r
};\r
\r
EXPORTS\r
DllCanUnloadNow PRIVATE\r
DllGetClassObject PRIVATE\r
- WvGetObject PRIVATE\r
+ WvGetObject PRIVATE\r
\r
STDMETHODIMP CWVListen::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVListen methods\r
STDMETHODIMP GetRequest(IWVEndpoint* pEndpoint, OVERLAPPED* pOverlapped);\r
//{\r
// switch (status)\r
// {\r
-// case IB_SUCCESS: return WV_SUCCESS;\r
+// case IB_SUCCESS: return WV_SUCCESS;\r
// case IB_INSUFFICIENT_RESOURCES: return WV_INSUFFICIENT_RESOURCES;\r
// case IB_INSUFFICIENT_MEMORY: return WV_NO_MEMORY;\r
-// case IB_INVALID_PARAMETER: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_SETTING: return WV_INVALID_PARAMETER;\r
-// case IB_NOT_FOUND: return WV_INVALID_ADDRESS;\r
-// case IB_TIMEOUT: return WV_TIMEOUT;\r
-// case IB_CANCELED: return WV_CANCELLED;\r
-// case IB_INTERRUPTED: return WV_CANCELLED;\r
-// case IB_INVALID_PERMISSION: return WV_ACCESS_VIOLATION;\r
-// case IB_UNSUPPORTED: return WV_NOT_SUPPORTED;\r
-// case IB_OVERFLOW: return WV_BUFFER_OVERFLOW;\r
+// case IB_INVALID_PARAMETER: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_SETTING: return WV_INVALID_PARAMETER;\r
+// case IB_NOT_FOUND: return WV_INVALID_ADDRESS;\r
+// case IB_TIMEOUT: return WV_TIMEOUT;\r
+// case IB_CANCELED: return WV_CANCELLED;\r
+// case IB_INTERRUPTED: return WV_CANCELLED;\r
+// case IB_INVALID_PERMISSION: return WV_ACCESS_VIOLATION;\r
+// case IB_UNSUPPORTED: return WV_NOT_SUPPORTED;\r
+// case IB_OVERFLOW: return WV_BUFFER_OVERFLOW;\r
// case IB_MAX_MCAST_QPS_REACHED: return WV_INSUFFICIENT_RESOURCES;\r
-// case IB_INVALID_QP_STATE: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_APM_STATE: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_PORT_STATE: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_STATE: return WV_INVALID_PARAMETER;\r
-// case IB_RESOURCE_BUSY: return WV_DEVICE_BUSY;\r
-// case IB_INVALID_PKEY: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_LKEY: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_RKEY: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_MAX_WRS: return WV_INSUFFICIENT_RESOURCES;\r
-// case IB_INVALID_MAX_SGE: return WV_INSUFFICIENT_RESOURCES;\r
-// case IB_INVALID_CQ_SIZE: return WV_INSUFFICIENT_RESOURCES;\r
-// case IB_INVALID_SRQ_SIZE: return WV_INSUFFICIENT_RESOURCES;\r
+// case IB_INVALID_QP_STATE: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_APM_STATE: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_PORT_STATE: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_STATE: return WV_INVALID_PARAMETER;\r
+// case IB_RESOURCE_BUSY: return WV_DEVICE_BUSY;\r
+// case IB_INVALID_PKEY: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_LKEY: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_RKEY: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_MAX_WRS: return WV_INSUFFICIENT_RESOURCES;\r
+// case IB_INVALID_MAX_SGE: return WV_INSUFFICIENT_RESOURCES;\r
+// case IB_INVALID_CQ_SIZE: return WV_INSUFFICIENT_RESOURCES;\r
+// case IB_INVALID_SRQ_SIZE: return WV_INSUFFICIENT_RESOURCES;\r
// case IB_INVALID_SERVICE_TYPE: return WV_NOT_SUPPORTED;\r
-// case IB_INVALID_GID: return WV_INVALID_ADDRESS;\r
-// case IB_INVALID_LID: return WV_INVALID_ADDRESS;\r
-// case IB_INVALID_GUID: return WV_INVALID_ADDRESS;\r
-// case IB_INVALID_CA_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_AV_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_CQ_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_QP_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_SRQ_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_PD_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_MR_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_FMR_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_MW_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_GID: return WV_INVALID_ADDRESS;\r
+// case IB_INVALID_LID: return WV_INVALID_ADDRESS;\r
+// case IB_INVALID_GUID: return WV_INVALID_ADDRESS;\r
+// case IB_INVALID_CA_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_AV_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_CQ_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_QP_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_SRQ_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_PD_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_MR_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_FMR_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_MW_HANDLE: return WV_INVALID_HANDLE;\r
// case IB_INVALID_MCAST_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_CALLBACK: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_AL_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_INVALID_HANDLE: return WV_INVALID_HANDLE;\r
-// case IB_ERROR: return WV_UNKNOWN_ERROR;\r
-// case IB_REMOTE_ERROR: return WV_REMOTE_OP_ERROR;\r
+// case IB_INVALID_CALLBACK: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_AL_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_INVALID_HANDLE: return WV_INVALID_HANDLE;\r
+// case IB_ERROR: return WV_UNKNOWN_ERROR;\r
+// case IB_REMOTE_ERROR: return WV_REMOTE_OP_ERROR;\r
// case IB_VERBS_PROCESSING_DONE: return WV_SUCCESS;\r
-// case IB_INVALID_WR_TYPE: return WV_INVALID_PARAMETER;\r
-// case IB_QP_IN_TIMEWAIT: return WV_INVALID_PARAMETER;\r
-// case IB_EE_IN_TIMEWAIT: return WV_INVALID_PARAMETER;\r
-// case IB_INVALID_PORT: return WV_INVALID_ADDRESS;\r
-// case IB_NOT_DONE: return WV_PENDING;\r
-// case IB_INVALID_INDEX: return WV_INVALID_PARAMETER;\r
-// case IB_NO_MATCH: return WV_INVALID_PARAMETER;\r
-// case IB_PENDING: return WV_PENDING;\r
-// default: return WV_UNKNOWN_ERROR;\r
+// case IB_INVALID_WR_TYPE: return WV_INVALID_PARAMETER;\r
+// case IB_QP_IN_TIMEWAIT: return WV_INVALID_PARAMETER;\r
+// case IB_EE_IN_TIMEWAIT: return WV_INVALID_PARAMETER;\r
+// case IB_INVALID_PORT: return WV_INVALID_ADDRESS;\r
+// case IB_NOT_DONE: return WV_PENDING;\r
+// case IB_INVALID_INDEX: return WV_INVALID_PARAMETER;\r
+// case IB_NO_MATCH: return WV_INVALID_PARAMETER;\r
+// case IB_PENDING: return WV_PENDING;\r
+// default: return WV_UNKNOWN_ERROR;\r
// }\r
//}\r
\r
STDMETHODIMP CWVProtectionDomain::\r
CreateSharedReceiveQueue(SIZE_T MaxWr, SIZE_T MaxSge,\r
- SIZE_T SrqLimit, IWVSharedReceiveQueue** ppSrq)\r
+ SIZE_T SrqLimit, IWVSharedReceiveQueue** ppSrq)\r
{\r
UNREFERENCED_PARAMETER(MaxWr);\r
UNREFERENCED_PARAMETER(MaxSge);\r
\r
STDMETHODIMP CWVProtectionDomain::\r
RegisterMemory(const VOID* pBuffer, SIZE_T BufferLength, DWORD AccessFlags,\r
- OVERLAPPED* pOverlapped, UINT32* pLkey, UINT32* pRkey)\r
+ OVERLAPPED* pOverlapped, UINT32* pLkey, UINT32* pRkey)\r
{\r
UNREFERENCED_PARAMETER(pBuffer);\r
UNREFERENCED_PARAMETER(BufferLength);\r
STDMETHODIMP_(ULONG) Release();\r
\r
// IWVProtectionDomain methods\r
- STDMETHODIMP CreateSharedReceiveQueue(SIZE_T MaxWr, SIZE_T MaxSge,\r
- SIZE_T SrqLimit, IWVSharedReceiveQueue** ppSrq);\r
+ STDMETHODIMP CreateSharedReceiveQueue(SIZE_T MaxWr, SIZE_T MaxSge, SIZE_T SrqLimit,\r
+ IWVSharedReceiveQueue** ppSrq);\r
STDMETHODIMP CreateQueuePair(WV_QP_CREATE* pAttributes, IWVQueuePair** ppQp);\r
STDMETHODIMP RegisterMemory(const VOID* pBuffer, SIZE_T BufferLength,\r
- DWORD AccessFlags, OVERLAPPED* pOverlapped,\r
- UINT32* pLkey, UINT32* pRkey);\r
+ DWORD AccessFlags, OVERLAPPED* pOverlapped,\r
+ UINT32* pLkey, UINT32* pRkey);\r
STDMETHODIMP DeregisterMemory(UINT32 Lkey, OVERLAPPED* pOverlapped);\r
STDMETHODIMP AllocateMemoryWindow(IWVMemoryWindow** ppMw);\r
STDMETHODIMP CreateAddressHandle(WV_ADDRESS_VECTOR* pAddress,\r
- IWVAddressHandle** ppAh);\r
+ IWVAddressHandle** ppAh);\r
};\r
\r
class CWVMemoryWindow : IWVMemoryWindow\r
// IWVProvider methods\r
STDMETHODIMP QueryDeviceList(UINT64* pGuidList, SIZE_T* pBufferSize);\r
STDMETHODIMP QueryDevice(UINT64 Guid, WV_DEVICE_ATTRIBUTES* pAttributes);\r
- STDMETHODIMP QueryAddressList(WV_ADDRESS_LIST* pAddressList,\r
- SIZE_T* pBufferSize);\r
+ STDMETHODIMP QueryAddressList(WV_ADDRESS_LIST* pAddressList, SIZE_T* pBufferSize);\r
\r
STDMETHODIMP OpenDevice(UINT64 Guid, IWVDevice** ppDevice);\r
\r
STDMETHODIMP CreateConnectEndpoint(IWVConnectEndpoint** ppConnectEndpoint);\r
STDMETHODIMP CreateDatagramEndpoint(IWVDatagramEndpoint** ppDatagramEndpoint);\r
STDMETHODIMP CreateListen(const struct sockaddr* pAddress,\r
- SIZE_T backlog, IWVListen** ppListen);\r
+ SIZE_T backlog, IWVListen** ppListen);\r
\r
CWVProvider() {m_nRef = 0;}\r
private:\r
\r
STDMETHODIMP CWVQueuePair::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
Send(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT32 ImmediateData)\r
+ DWORD Flags, UINT32 ImmediateData)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pSgl);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
Read(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT64 Address, UINT32 Rkey)\r
+ DWORD Flags, UINT64 Address, UINT32 Rkey)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pSgl);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
Write(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT32 ImmediateData, UINT64 Address, UINT32 Rkey)\r
+ DWORD Flags, UINT32 ImmediateData, UINT64 Address, UINT32 Rkey)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pSgl);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
CompareExchange(UINT64 WrId, const WV_SGE* pSge, DWORD Flags,\r
- UINT64 Compare, UINT64 Exchange, UINT64 Address, UINT32 Rkey)\r
+ UINT64 Compare, UINT64 Exchange, UINT64 Address, UINT32 Rkey)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pSge);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
FetchAdd(UINT64 WrId, const WV_SGE* pSge, DWORD Flags,\r
- UINT64 Value, UINT64 Address, UINT32 Rkey)\r
+ UINT64 Value, UINT64 Address, UINT32 Rkey)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pSge);\r
\r
STDMETHODIMP CWVConnectQueuePair::\r
BindMemoryWindow(IWVMemoryWindow* pMw, UINT64 WrId,\r
- UINT32 Lkey, DWORD AccessFlags, DWORD SendFlags,\r
- const VOID* pBuffer, SIZE_T BufferLength, UINT32 *pRkey)\r
+ UINT32 Lkey, DWORD AccessFlags, DWORD SendFlags,\r
+ const VOID* pBuffer, SIZE_T BufferLength, UINT32 *pRkey)\r
{\r
UNREFERENCED_PARAMETER(pMw);\r
UNREFERENCED_PARAMETER(WrId);\r
\r
STDMETHODIMP CWVDatagramQueuePair::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
\r
STDMETHODIMP CWVDatagramQueuePair::\r
Send(UINT64 WrId, IWVAddressHandle* pAddressHandle,\r
- WV_SGE* pSge, DWORD Flags, UINT32 DestinationQpn,\r
- UINT32 DestinationQkey, UINT16 PkeyIndex)\r
+ WV_SGE* pSge, DWORD Flags, UINT32 DestinationQpn,\r
+ UINT32 DestinationQkey, UINT16 PkeyIndex)\r
{\r
UNREFERENCED_PARAMETER(WrId);\r
UNREFERENCED_PARAMETER(pAddressHandle);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVQueuePair methods\r
STDMETHODIMP Query(WV_QP_ATTRIBUTES* pAttributes);\r
STDMETHODIMP Modify(WV_QP_ATTRIBUTES* pAttributes, DWORD Options,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP PostReceive(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge);\r
};\r
\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVQueuePair methods\r
STDMETHODIMP Query(WV_QP_ATTRIBUTES* pAttributes);\r
STDMETHODIMP Modify(WV_QP_ATTRIBUTES* pAttributes, DWORD Options,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP PostReceive(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge);\r
\r
// IWVConnectQueuePair methods\r
STDMETHODIMP Send(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT32 ImmediateData);\r
+ DWORD Flags, UINT32 ImmediateData);\r
STDMETHODIMP Read(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT64 Address, UINT32 Rkey);\r
+ DWORD Flags, UINT64 Address, UINT32 Rkey);\r
STDMETHODIMP Write(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge,\r
- DWORD Flags, UINT32 ImmediateData, UINT64 Address, UINT32 Rkey);\r
+ DWORD Flags, UINT32 ImmediateData, UINT64 Address,\r
+ UINT32 Rkey);\r
STDMETHODIMP CompareExchange(UINT64 WrId, const WV_SGE* pSge, DWORD Flags,\r
- UINT64 Compare, UINT64 Exchange, UINT64 Address, UINT32 Rkey);\r
+ UINT64 Compare, UINT64 Exchange, UINT64 Address,\r
+ UINT32 Rkey);\r
STDMETHODIMP FetchAdd(UINT64 WrId, const WV_SGE* pSge, DWORD Flags,\r
- UINT64 Value, UINT64 Address, UINT32 Rkey);\r
+ UINT64 Value, UINT64 Address, UINT32 Rkey);\r
STDMETHODIMP BindMemoryWindow(IWVMemoryWindow* pMw, UINT64 WrId,\r
- UINT32 Lkey, DWORD AccessFlags, DWORD SendFlags,\r
- const VOID* pBuffer, SIZE_T BufferLength, UINT32 *pRkey);\r
+ UINT32 Lkey, DWORD AccessFlags, DWORD SendFlags,\r
+ const VOID* pBuffer, SIZE_T BufferLength,\r
+ UINT32 *pRkey);\r
};\r
\r
class CWVDatagramQueuePair : IWVDatagramQueuePair\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVQueuePair methods\r
STDMETHODIMP Query(WV_QP_ATTRIBUTES* pAttributes);\r
STDMETHODIMP Modify(WV_QP_ATTRIBUTES* pAttributes, DWORD Options,\r
- OVERLAPPED* pOverlapped);\r
+ OVERLAPPED* pOverlapped);\r
STDMETHODIMP PostReceive(UINT64 WrId, const WV_SGE* pSgl, SIZE_T nSge);\r
\r
// IWVDatagramQueuePair Methods\r
STDMETHODIMP Send(UINT64 WrId, IWVAddressHandle* pAddressHandle,\r
- WV_SGE* pSge, DWORD Flags, UINT32 DestinationQpn,\r
- UINT32 DestinationQkey, UINT16 PkeyIndex);\r
+ WV_SGE* pSge, DWORD Flags, UINT32 DestinationQpn,\r
+ UINT32 DestinationQkey, UINT16 PkeyIndex);\r
STDMETHODIMP SendMessage(WV_SEND_DATAGRAM* pSend);\r
STDMETHODIMP AttachMulticast(WV_GID *pGid, UINT16 Lid);\r
STDMETHODIMP DetachMulticast(WV_GID *pGid, UINT16 Lid);\r
\r
STDMETHODIMP CWVSharedReceiveQueue::\r
GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait)\r
{\r
UNREFERENCED_PARAMETER(pOverlapped);\r
UNREFERENCED_PARAMETER(pNumberOfBytesTransferred);\r
// IWVOverlapped methods\r
STDMETHODIMP CancelOverlappedRequests();\r
STDMETHODIMP GetOverlappedResult(OVERLAPPED *pOverlapped,\r
- SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
+ SIZE_T *pNumberOfBytesTransferred, BOOL bWait);\r
\r
// IWVSharedReceiveQueue methods\r
STDMETHODIMP Query(SIZE_T* pMaxWr, SIZE_T* pMaxSge, SIZE_T* pSrqLimit);\r
} WV_GID;\r
\r
// Device/port capability flags\r
-#define WV_DEVICE_RESIZE_MAX_WR 0x00000001\r
-#define WV_DEVICE_BAD_PKEY_COUNTER 0x00000002\r
-#define WV_DEVICE_BAD_QKEY_COUNTER 0x00000004\r
-// reserved 0x00000008\r
-#define WV_DEVICE_PATH_MIGRATION 0x00000010\r
+#define WV_DEVICE_RESIZE_MAX_WR 0x00000001\r
+#define WV_DEVICE_BAD_PKEY_COUNTER 0x00000002\r
+#define WV_DEVICE_BAD_QKEY_COUNTER 0x00000004\r
+// reserved 0x00000008\r
+#define WV_DEVICE_PATH_MIGRATION 0x00000010\r
#define WV_DEVICE_CHANGE_PHYSICAL_PORT 0x00000020\r
-#define WV_DEVICE_AH_PORT_CHECKING 0x00000040\r
-#define WV_DEVICE_QP_STATE_MODIFIER 0x00000080\r
-#define WV_DEVICE_SHUTDOWN_PORT 0x00000100\r
-#define WV_DEVICE_INIT_TYPE 0x00000200\r
-#define WV_DEVICE_PORT_ACTIVE_EVENT 0x00000400\r
-#define WV_DEVICE_SYSTEM_IMAGE_GUID 0x00000800\r
+#define WV_DEVICE_AH_PORT_CHECKING 0x00000040\r
+#define WV_DEVICE_QP_STATE_MODIFIER 0x00000080\r
+#define WV_DEVICE_SHUTDOWN_PORT 0x00000100\r
+#define WV_DEVICE_INIT_TYPE 0x00000200\r
+#define WV_DEVICE_PORT_ACTIVE_EVENT 0x00000400\r
+#define WV_DEVICE_SYSTEM_IMAGE_GUID 0x00000800\r
#define WV_DEVICE_RC_RNR_NAK_GENERATION 0x00001000\r
-#define WV_DEVICE_SRQ_RESIZE 0x00002000\r
-#define WV_DEVICE_BATCH_NOTIFY_CQ 0x00004000\r
+#define WV_DEVICE_SRQ_RESIZE 0x00002000\r
+#define WV_DEVICE_BATCH_NOTIFY_CQ 0x00004000\r
\r
typedef enum _WV_ATOMIC_CAPABILITIES\r
{\r
\r
typedef struct _WV_DEVICE_ATTRIBUTES\r
{\r
- UINT8 FwVersion[64];\r
- UINT64 NodeGuid;\r
- UINT64 SystemImageGuid;\r
- UINT32 VendorId;\r
- UINT32 VendorPartId;\r
- UINT32 HwVersion;\r
- DWORD CapabilityFlags;\r
+ UINT8 FwVersion[64];\r
+ UINT64 NodeGuid;\r
+ UINT64 SystemImageGuid;\r
+ UINT32 VendorId;\r
+ UINT32 VendorPartId;\r
+ UINT32 HwVersion;\r
+ DWORD CapabilityFlags;\r
WV_ATOMIC_CAPABILITIES AtomicCapability;\r
- DWORD PageSizeCapabilityFlags;\r
- SIZE_T MaxMrSize;\r
- SIZE_T MaxQp;\r
- SIZE_T MaxQpWr;\r
- SIZE_T MaxSge;\r
- SIZE_T MaxCq;\r
- SIZE_T MaxCqEntries;\r
- SIZE_T MaxMr;\r
- SIZE_T MaxPd;\r
- SIZE_T MaxQpResponderResources;\r
- SIZE_T MaxResponderResources;\r
- SIZE_T MaxQpInitiatorDepth;\r
- SIZE_T MaxMw;\r
- SIZE_T MaxMulticast;\r
- SIZE_T MaxQpAttach;\r
- SIZE_T MaxMulticastQp;\r
- SIZE_T MaxAh;\r
- SIZE_T MaxFmr;\r
- SIZE_T MaxMapPerFmr;\r
- SIZE_T MaxSrq;\r
- SIZE_T MaxSrqWr;\r
- SIZE_T MaxSrqSge;\r
- SIZE_T MaxPkeys;\r
- UINT8 LocalAckDelay;\r
- UINT8 PhysPortCount;\r
+ DWORD PageSizeCapabilityFlags;\r
+ SIZE_T MaxMrSize;\r
+ SIZE_T MaxQp;\r
+ SIZE_T MaxQpWr;\r
+ SIZE_T MaxSge;\r
+ SIZE_T MaxCq;\r
+ SIZE_T MaxCqEntries;\r
+ SIZE_T MaxMr;\r
+ SIZE_T MaxPd;\r
+ SIZE_T MaxQpResponderResources;\r
+ SIZE_T MaxResponderResources;\r
+ SIZE_T MaxQpInitiatorDepth;\r
+ SIZE_T MaxMw;\r
+ SIZE_T MaxMulticast;\r
+ SIZE_T MaxQpAttach;\r
+ SIZE_T MaxMulticastQp;\r
+ SIZE_T MaxAh;\r
+ SIZE_T MaxFmr;\r
+ SIZE_T MaxMapPerFmr;\r
+ SIZE_T MaxSrq;\r
+ SIZE_T MaxSrqWr;\r
+ SIZE_T MaxSrqSge;\r
+ SIZE_T MaxPkeys;\r
+ UINT8 LocalAckDelay;\r
+ UINT8 PhysPortCount;\r
\r
} WV_DEVICE_ATTRIBUTES;\r
\r
typedef struct _WV_PORT_ATTRIBUTES\r
{\r
DWORD PortCabilityFlags;\r
- WV_PORT_STATE State;\r
+ WV_PORT_STATE State;\r
UINT32 MaxMtu;\r
UINT32 ActiveMtu;\r
UINT32 GidTableLength;\r
\r
typedef struct _WV_ADDRESS\r
{\r
- SOCKET_ADDRESS Address;\r
+ SOCKET_ADDRESS Address;\r
UINT64 DeviceGuid;\r
UINT16 Pkey;\r
UINT8 PortNumber;\r
typedef struct _WV_EVENT\r
{\r
HRESULT Status;\r
- WV_EVENT_TYPE Type;\r
+ WV_EVENT_TYPE Type;\r
UINT8 PortNumber;\r
\r
} WV_EVENT;\r
\r
typedef enum _WV_CQ_NOTIFY_TYPE\r
{\r
- WvCqSolicited = 1,\r
+ WvCqSolicited = 1,\r
WvCqNextCompletion\r
\r
} WV_CQ_NOTIFY_TYPE;\r
\r
// Completion flags\r
#define WV_WC_IMMEDIATE 0x00000001\r
-// reserved 0x00000002\r
+// reserved 0x00000002\r
#define WV_WC_GRH_VALID 0x00000004\r
\r
typedef struct _WV_COMPLETION\r
// Receive completion data\r
DWORD Flags;\r
UINT32 ImmediateData; // Network byte order\r
- UINT32 SourceQpn; // Network byte order\r
+ UINT32 SourceQpn; // Network byte order\r
UINT16 PkeyIndex;\r
- UINT16 SLid; // Network byte order\r
+ UINT16 SLid; // Network byte order\r
UINT8 SL;\r
UINT8 DLidPathBits;\r
\r
} WV_COMPLETION;\r
\r
// Access flags\r
-#define WV_ACCESS_REMOTE_READ 0x00000001\r
-#define WV_ACCESS_REMOTE_WRITE 0x0000000A\r
-#define WV_ACCESS_REMOTE_ATOMIC 0x00000004\r
-#define WV_ACCESS_LOCAL_WRITE 0x00000008\r
-#define WV_ACCESS_MW_BIND 0x00000010\r
+#define WV_ACCESS_REMOTE_READ 0x00000001\r
+#define WV_ACCESS_REMOTE_WRITE 0x0000000A\r
+#define WV_ACCESS_REMOTE_ATOMIC 0x00000004\r
+#define WV_ACCESS_LOCAL_WRITE 0x00000008\r
+#define WV_ACCESS_MW_BIND 0x00000010\r
\r
// Send queue operation flags\r
-#define WV_SEND_IMMEDIATE 0X00000001\r
-#define WV_SEND_FENCE 0X00000002\r
-#define WV_SEND_SIGNALED 0X00000004\r
-#define WV_SEND_SOLICITED 0X00000008\r
-#define WV_SEND_INLINE 0X00000010\r
+#define WV_SEND_IMMEDIATE 0X00000001\r
+#define WV_SEND_FENCE 0X00000002\r
+#define WV_SEND_SIGNALED 0X00000004\r
+#define WV_SEND_SOLICITED 0X00000008\r
+#define WV_SEND_INLINE 0X00000010\r
\r
typedef struct _WV_SGE\r
{\r
\r
typedef struct _WV_SEND_DATAGRAM\r
{\r
- UINT64 WrId;\r
+ UINT64 WrId;\r
interface IWVAddressHandle* pAddressHandle;\r
\r
WV_SGE* pSgl;\r
{\r
WV_GRH Grh;\r
BOOL GrhValid;\r
- UINT16 DLid; // Network byte order\r
+ UINT16 DLid; // Network byte order\r
UINT8 ServiceLevel;\r
UINT8 SourcePathBits;\r
UINT8 StaticRate;\r
\r
typedef enum _WV_QP_STATE\r
{\r
- WvQpStateReset = (1 << 0),\r
- WvQpStateInit = (1 << 1),\r
- WvQpStateRtr = (1 << 2),\r
- WvQpStateRts = (1 << 3),\r
- WvQpStateSqd = (1 << 4),\r
+ WvQpStateReset = (1 << 0),\r
+ WvQpStateInit = (1 << 1),\r
+ WvQpStateRtr = (1 << 2),\r
+ WvQpStateRts = (1 << 3),\r
+ WvQpStateSqd = (1 << 4),\r
WvQpStateSqdDraining = WvQpStateSqd | (1 << 5),\r
- WvQpStateSqdDrained = WvQpStateSqd | (1 << 6),\r
- WvQpStateSqerr = (1 << 7),\r
- WvQpStateError = (1 << 8),\r
- WvQpStateTimeWait = 0xdead0000\r
+ WvQpStateSqdDrained = WvQpStateSqd | (1 << 6),\r
+ WvQpStateSqerr = (1 << 7),\r
+ WvQpStateError = (1 << 8),\r
+ WvQpStateTimeWait = 0xdead0000\r
\r
} WV_QP_STATE;\r
\r
} WV_QP_CREATE;\r
\r
// QP attribute mask\r
-#define WV_QP_ATTR_STATE 0x00000001\r
-#define WV_QP_ATTR_CURRENT_STATE 0x00000002\r
+#define WV_QP_ATTR_STATE 0x00000001\r
+#define WV_QP_ATTR_CURRENT_STATE 0x00000002\r
#define WV_QP_ATTR_ENABLE_SQD_ASYNC_NOTIFY 0x00000004\r
-#define WV_QP_ATTR_ACCESS_FLAGS 0x00000008\r
-#define WV_QP_ATTR_PKEY_INDEX 0x00000010\r
-#define WV_QP_ATTR_PORT 0x00000020\r
-#define WV_QP_ATTR_QKEY 0x00000040\r
-#define WV_QP_ATTR_AV 0x00000080\r
-#define WV_QP_ATTR_PATH_MTU 0x00000100\r
-#define WV_QP_ATTR_TIMEOUT 0x00000200\r
-#define WV_QP_ATTR_RETRY_COUNT 0x00000400\r
-#define WV_QP_ATTR_RNR_RETRY 0x00000800\r
-#define WV_QP_ATTR_RQ_PSN 0x00001000\r
-#define WV_QP_ATTR_INITIATOR_DEPTH 0x00002000\r
-#define WV_QP_ATTR_ALTERNATE_AV 0x00004000\r
-#define WV_QP_ATTR_MIN_RNR_TIMER 0x00008000\r
-#define WV_QP_ATTR_SQ_PSN 0x00010000\r
+#define WV_QP_ATTR_ACCESS_FLAGS 0x00000008\r
+#define WV_QP_ATTR_PKEY_INDEX 0x00000010\r
+#define WV_QP_ATTR_PORT 0x00000020\r
+#define WV_QP_ATTR_QKEY 0x00000040\r
+#define WV_QP_ATTR_AV 0x00000080\r
+#define WV_QP_ATTR_PATH_MTU 0x00000100\r
+#define WV_QP_ATTR_TIMEOUT 0x00000200\r
+#define WV_QP_ATTR_RETRY_COUNT 0x00000400\r
+#define WV_QP_ATTR_RNR_RETRY 0x00000800\r
+#define WV_QP_ATTR_RQ_PSN 0x00001000\r
+#define WV_QP_ATTR_INITIATOR_DEPTH 0x00002000\r
+#define WV_QP_ATTR_ALTERNATE_AV 0x00004000\r
+#define WV_QP_ATTR_MIN_RNR_TIMER 0x00008000\r
+#define WV_QP_ATTR_SQ_PSN 0x00010000\r
#define WV_QP_ATTR_RESPONDER_RESOURCES 0x00020000\r
-#define WV_QP_ATTR_PATH_MIG_STATE 0x00040000\r
-#define WV_QP_ATTR_CAPABILITIES 0x00080000\r
-#define WV_QP_ATTR_DESTINATION_QPN 0x00100000\r
+#define WV_QP_ATTR_PATH_MIG_STATE 0x00040000\r
+#define WV_QP_ATTR_CAPABILITIES 0x00080000\r
+#define WV_QP_ATTR_DESTINATION_QPN 0x00100000\r
\r
typedef struct _WV_QP_ATTRIBUTES\r
{\r
- interface IWVProtectionDomain* pPd;\r
- interface IWVCompletionQueue* pSendCq;\r
- interface IWVCompletionQueue* pReceiveCq;\r
- interface IWVSharedReceiveQueue* pSharedReceiveQueue;\r
-\r
- SIZE_T SendDepth;\r
- SIZE_T SendSge;\r
- SIZE_T ReceiveDepth;\r
- SIZE_T ReceiveSge;\r
- SIZE_T MaxInlineSend;\r
- SIZE_T InitiatorDepth;\r
- SIZE_T ResponderResources;\r
-\r
- WV_QP_TYPE QpType;\r
- WV_QP_STATE CurrentQpState;\r
- WV_QP_STATE QpState;\r
+ interface IWVProtectionDomain* pPd;\r
+ interface IWVCompletionQueue* pSendCq;\r
+ interface IWVCompletionQueue* pReceiveCq;\r
+ interface IWVSharedReceiveQueue* pSharedReceiveQueue;\r
+\r
+ SIZE_T SendDepth;\r
+ SIZE_T SendSge;\r
+ SIZE_T ReceiveDepth;\r
+ SIZE_T ReceiveSge;\r
+ SIZE_T MaxInlineSend;\r
+ SIZE_T InitiatorDepth;\r
+ SIZE_T ResponderResources;\r
+\r
+ WV_QP_TYPE QpType;\r
+ WV_QP_STATE CurrentQpState;\r
+ WV_QP_STATE QpState;\r
WV_APM_STATE ApmState;\r
- UINT32 Qpn; // Network byte order\r
- UINT32 DestinationQpn; // Network byte order\r
- UINT32 Qkey; // Network byte order\r
- UINT32 SendPsn; // Network byte order\r
- UINT32 ReceivePsn; // Network byte order\r
+ UINT32 Qpn; // Network byte order\r
+ UINT32 DestinationQpn; // Network byte order\r
+ UINT32 Qkey; // Network byte order\r
+ UINT32 SendPsn; // Network byte order\r
+ UINT32 ReceivePsn; // Network byte order\r
\r
WV_ADDRESS_VECTOR PrimaryAddressVector;\r
WV_ADDRESS_VECTOR AlternateAddressVector;\r
- DWORD AccessFlags;\r
- BOOL SignalSends;\r
- UINT16 PkeyIndex;\r
+ DWORD AccessFlags;\r
+ BOOL SignalSends;\r
+ UINT16 PkeyIndex;\r
\r
- UINT8 PathMtu;\r
- UINT8 LocalAckTimeout;\r
- UINT8 SequenceErrorRetryCount;\r
- UINT8 RnrRetryCount;\r
+ UINT8 PathMtu;\r
+ UINT8 LocalAckTimeout;\r
+ UINT8 SequenceErrorRetryCount;\r
+ UINT8 RnrRetryCount;\r
\r
} WV_QP_ATTRIBUTES;\r
\r
-#define WV_CM_UDP_QKEY 0x01234567\r
+#define WV_CM_UDP_QKEY 0x01234567\r
\r
#pragma warning(push)\r
#pragma warning(disable: 4200) \r
typedef struct _WV_CONNECT_PARAM\r
{\r
- SIZE_T DataLength;\r
- SIZE_T ResponderResources;\r
- SIZE_T InitiatorDepth;\r
- UINT8 RetryCount; // Ignored when accepting\r
- UINT8 RnrRetryCount;\r
- UINT8 Reserved[2];\r
- UINT8 Data[];\r
+ SIZE_T DataLength;\r
+ SIZE_T ResponderResources;\r
+ SIZE_T InitiatorDepth;\r
+ UINT8 RetryCount; // Ignored when accepting\r
+ UINT8 RnrRetryCount;\r
+ UINT8 Reserved[2];\r
+ UINT8 Data[];\r
\r
} WV_CONNECT_PARAM;\r
\r
typedef struct _WV_DATAGRAM_PARAM\r
{\r
- SIZE_T DataLength;\r
+ SIZE_T DataLength;\r
WV_ADDRESS_VECTOR AddressVector;\r
- UINT32 Qpn;\r
- UINT32 Qkey;\r
- UINT8 Data[];\r
+ UINT32 Qpn;\r
+ UINT32 Qkey;\r
+ UINT8 Data[];\r
\r
} WV_DATAGRAM_PARAM;\r
#pragma warning(pop)\r
\r
typedef struct _WV_CONNECT_ATTRIBUTES\r
{\r
- WV_ADDRESS LocalAddress;\r
+ WV_ADDRESS LocalAddress;\r
SOCKET_ADDRESS PeerAddress;\r
WV_CONNECT_PARAM Param;\r
\r
\r
typedef struct _WV_DATAGRAM_ATTRIBUTES\r
{\r
- WV_ADDRESS LocalAddress;\r
+ WV_ADDRESS LocalAddress;\r
SOCKET_ADDRESS PeerAddress; // Specify when querying\r
WV_DATAGRAM_PARAM Param;\r
\r
#define INTERFACE IWVOverlapped\r
// {64687592-aa67-4b55-bc4b-e189bdd2fc4f}\r
DEFINE_GUID(IID_IWVOverlapped, 0x64687592, 0xaa67, 0x4b55,\r
- 0xbc, 0x4b, 0xe1, 0x89, 0xbd, 0xd2, 0xfc, 0x4f);\r
+ 0xbc, 0x4b, 0xe1, 0x89, 0xbd, 0xd2, 0xfc, 0x4f);\r
\r
DECLARE_INTERFACE_(IWVOverlapped, IUnknown)\r
{\r
#define INTERFACE IWVCompletionQueue\r
// {a5f6a8de-18a6-4086-aa93-7b66607a290a}\r
DEFINE_GUID(IID_IWVCompletionQueue, 0xa5f6a8de, 0x18a6, 0x4086,\r
- 0xaa, 0x93, 0x7b, 0x66, 0x60, 0x7a, 0x29, 0x0a);\r
+ 0xaa, 0x93, 0x7b, 0x66, 0x60, 0x7a, 0x29, 0x0a);\r
\r
DECLARE_INTERFACE_(IWVCompletionQueue, IWVOverlapped)\r
{\r
#define INTERFACE IWVMemoryWindow\r
// {e8ae206f-b31f-4709-8dc9-6e87625f93fc}\r
DEFINE_GUID(IID_IWVMemoryWindow, 0xe8ae206f, 0xb31f, 0x4709,\r
- 0x8d, 0xc9, 0x6e, 0x87, 0x62, 0x5f, 0x93, 0xfc);\r
+ 0x8d, 0xc9, 0x6e, 0x87, 0x62, 0x5f, 0x93, 0xfc);\r
\r
DECLARE_INTERFACE_(IWVMemoryWindow, IUnknown)\r
{\r
#define INTERFACE IWVAddressHandle\r
// {95903fde-fdac-4007-92b7-e01286cd36e8}\r
DEFINE_GUID(IID_IWVAddressHandle, 0x95903fde, 0xfdac, 0x4007,\r
- 0x92, 0xb7, 0xe0, 0x12, 0x86, 0xcd, 0x36, 0xe8);\r
+ 0x92, 0xb7, 0xe0, 0x12, 0x86, 0xcd, 0x36, 0xe8);\r
\r
DECLARE_INTERFACE_(IWVAddressHandle, IUnknown)\r
{\r
#define INTERFACE IWVSharedReceiveQueue\r
// {b2bf30e4-8c2e-4659-ac7a-4c5e0d2c7114}\r
DEFINE_GUID(IID_IWVSharedReceiveQueue, 0xb2bf30e4, 0x8c2e, 0x4659,\r
- 0xac, 0x7a, 0x4c, 0x5e, 0x0d, 0x2c, 0x71, 0x14);\r
+ 0xac, 0x7a, 0x4c, 0x5e, 0x0d, 0x2c, 0x71, 0x14);\r
\r
DECLARE_INTERFACE_(IWVSharedReceiveQueue, IWVOverlapped)\r
{\r
#define INTERFACE IWVQueuePair\r
// {a847c13c-e617-489c-b0ab-2da73eb0adfd}\r
DEFINE_GUID(IID_IWVQueuePair, 0xa847c13c, 0xe617, 0x489c,\r
- 0xb0, 0xab, 0x2d, 0xa7, 0x3e, 0xb0, 0xad, 0xfd);\r
+ 0xb0, 0xab, 0x2d, 0xa7, 0x3e, 0xb0, 0xad, 0xfd);\r
\r
DECLARE_INTERFACE_(IWVQueuePair, IWVOverlapped)\r
{\r
#define INTERFACE IWVConnectQueuePair\r
// {A791309C-4244-4194-AD63-7D372CADE5E0}\r
DEFINE_GUID(IID_IWVConnectQueuePair, 0xa791309c, 0x4244, 0x4194,\r
- 0xad, 0x63, 0x7d, 0x37, 0x2c, 0xad, 0xe5, 0xe0);\r
+ 0xad, 0x63, 0x7d, 0x37, 0x2c, 0xad, 0xe5, 0xe0);\r
\r
DECLARE_INTERFACE_(IWVConnectQueuePair, IWVQueuePair)\r
{\r
#define INTERFACE IWVDatagramQueuePair\r
// {3BA2F15E-D961-4df8-8FC2-6043A6D67826}\r
DEFINE_GUID(IID_IWVDatagramQueuePair, 0x3ba2f15e, 0xd961, 0x4df8,\r
- 0x8f, 0xc2, 0x60, 0x43, 0xa6, 0xd6, 0x78, 0x26);\r
+ 0x8f, 0xc2, 0x60, 0x43, 0xa6, 0xd6, 0x78, 0x26);\r
\r
DECLARE_INTERFACE_(IWVDatagramQueuePair, IWVQueuePair)\r
{\r
#define INTERFACE IWVProtectionDomain\r
// {a5633a12-dffc-4060-927d-9a600d7efb63}\r
DEFINE_GUID(IID_IWVProtectionDomain, 0xa5633a12, 0xdffc, 0x4060,\r
- 0x92, 0x7d, 0x9a, 0x60, 0x0d, 0x7e, 0xfb, 0x63);\r
+ 0x92, 0x7d, 0x9a, 0x60, 0x0d, 0x7e, 0xfb, 0x63);\r
\r
DECLARE_INTERFACE_(IWVProtectionDomain, IUnknown)\r
{\r
#define INTERFACE IWVEndpoint\r
// {eb2fbd8e-b9b6-4b24-9a5e-94c26ae265f0}\r
DEFINE_GUID(IID_IWVEndpoint, 0xeb2fbd8e, 0xb9b6, 0x4b24,\r
- 0x9a, 0x5e, 0x94, 0xc2, 0x6a, 0xe2, 0x65, 0xf0);\r
+ 0x9a, 0x5e, 0x94, 0xc2, 0x6a, 0xe2, 0x65, 0xf0);\r
\r
DECLARE_INTERFACE_(IWVEndpoint, IWVOverlapped)\r
{\r
#define INTERFACE IWVConnectEndpoint\r
// {ac670274-1934-4759-a39c-eee01a8130b3}\r
DEFINE_GUID(IID_IWVConnectEndpoint, 0xac670274, 0x1934, 0x4759,\r
- 0xa3, 0x9c, 0xee, 0xe0, 0x1a, 0x81, 0x30, 0xb3);\r
+ 0xa3, 0x9c, 0xee, 0xe0, 0x1a, 0x81, 0x30, 0xb3);\r
\r
DECLARE_INTERFACE_(IWVConnectEndpoint, IWVEndpoint)\r
{\r
#define INTERFACE IWVDatagramEndpoint\r
// {1d879de6-f2af-4a8a-8893-52e0ab868130}\r
DEFINE_GUID(IID_IWVDatagramEndpoint, 0x1d879de6, 0xf2af, 0x4a8a,\r
- 0x88, 0x93, 0x52, 0xe0, 0xab, 0x86, 0x81, 0x30);\r
+ 0x88, 0x93, 0x52, 0xe0, 0xab, 0x86, 0x81, 0x30);\r
\r
DECLARE_INTERFACE_(IWVDatagramEndpoint, IWVEndpoint)\r
{\r
#define INTERFACE IWVListen\r
// {5b839fd4-7410-441f-a2d9-5d75b1d8599b}\r
DEFINE_GUID(IID_IWVListen, 0x5b839fd4, 0x7410, 0x441f,\r
- 0xa2, 0xd9, 0x5d, 0x75, 0xb1, 0xd8, 0x59, 0x9b);\r
+ 0xa2, 0xd9, 0x5d, 0x75, 0xb1, 0xd8, 0x59, 0x9b);\r
\r
DECLARE_INTERFACE_(IWVListen, IWVOverlapped)\r
{\r
#define INTERFACE IWVDevice\r
// {244af78c-b1ac-40e4-9896-271d58d591b8}\r
DEFINE_GUID(IID_IWVDevice, 0x244af78c, 0xb1ac, 0x40e4,\r
- 0x98, 0x96, 0x27, 0x1d, 0x58, 0xd5, 0x91, 0xb8);\r
+ 0x98, 0x96, 0x27, 0x1d, 0x58, 0xd5, 0x91, 0xb8);\r
\r
DECLARE_INTERFACE_(IWVDevice, IWVOverlapped)\r
{\r
#define INTERFACE IWVProvider\r
// {6901010c-17af-4894-a1dc-794d3611f262}\r
DEFINE_GUID(IID_IWVProvider, 0x6901010c, 0x17af, 0x4894,\r
- 0xa1, 0xdc, 0x79, 0x4d, 0x36, 0x11, 0xf2, 0x62);\r
+ 0xa1, 0xdc, 0x79, 0x4d, 0x36, 0x11, 0xf2, 0x62);\r
\r
DECLARE_INTERFACE_(IWVProvider, IUnknown)\r
{\r
//\r
// Values map to NTSTATUS and NDSTATUS where possible\r
//\r
-#define WV_SUCCESS ((HRESULT)0x00000000L)\r
-#define WV_TIMEOUT ((HRESULT)0x00000102L)\r
-#define WV_PENDING ((HRESULT)0x00000103L)\r
-#define WV_BUFFER_OVERFLOW ((HRESULT)0x80000005L)\r
-#define WV_DEVICE_BUSY ((HRESULT)0x80000011L)\r
-#define WV_NO_MORE_ENTRIES ((HRESULT)0x8000001AL)\r
-#define WV_UNSUCCESSFUL ((HRESULT)0xC0000001L)\r
-#define WV_ACCESS_VIOLATION ((HRESULT)0xC0000005L)\r
-#define WV_INVALID_HANDLE ((HRESULT)0xC0000008L)\r
-#define WV_INVALID_PARAMETER ((HRESULT)0xC000000DL)\r
-#define WV_NO_MEMORY ((HRESULT)0xC0000017L)\r
-#define WV_INVALID_PARAMETER_MIX ((HRESULT)0xC0000030L)\r
-#define WV_DATA_OVERRUN ((HRESULT)0xC000003CL)\r
-#define WV_INSUFFICIENT_RESOURCES ((HRESULT)0xC000009AL)\r
-#define WV_NOT_INITIALIZED ((HRESULT)0xC00000A3L)\r
-#define WV_NOT_SUPPORTED ((HRESULT)0xC00000BBL)\r
-#define WV_INTERNAL_ERROR ((HRESULT)0xC00000E5L)\r
-#define WV_INVALID_PARAMETER_1 ((HRESULT)0xC00000EFL)\r
-#define WV_INVALID_PARAMETER_2 ((HRESULT)0xC00000F0L)\r
-#define WV_INVALID_PARAMETER_3 ((HRESULT)0xC00000F1L)\r
-#define WV_INVALID_PARAMETER_4 ((HRESULT)0xC00000F2L)\r
-#define WV_INVALID_PARAMETER_5 ((HRESULT)0xC00000F3L)\r
-#define WV_INVALID_PARAMETER_6 ((HRESULT)0xC00000F4L)\r
-#define WV_INVALID_PARAMETER_7 ((HRESULT)0xC00000F5L)\r
-#define WV_INVALID_PARAMETER_8 ((HRESULT)0xC00000F6L)\r
-#define WV_INVALID_PARAMETER_9 ((HRESULT)0xC00000F7L)\r
-#define WV_INVALID_PARAMETER_10 ((HRESULT)0xC00000F8L)\r
-#define WV_CANCELLED ((HRESULT)0xC0000120L)\r
-#define WV_REMOTE_ERROR ((HRESULT)0xC000013DL)\r
-#define WV_INVALID_ADDRESS ((HRESULT)0xC0000141L)\r
-#define WV_ADDRESS_ALREADY_EXISTS ((HRESULT)0xC000020AL)\r
-#define WV_CONNECTION_REFUSED ((HRESULT)0xC0000236L)\r
-#define WV_CONNECTION_INVALID ((HRESULT)0xC000023AL)\r
-#define WV_CONNECTION_ACTIVE ((HRESULT)0xC000023BL)\r
-#define WV_HOST_UNREACHABLE ((HRESULT)0xC000023DL)\r
-#define WV_CONNECTION_ABORTED ((HRESULT)0xC0000241L)\r
-#define WV_DEVICE_REMOVED ((HRESULT)0xC00002B6L)\r
-#define WV_LOCAL_LENGTH ((HRESULT)0xC0380001L)\r
-#define WV_INVALIDATION_ERROR ((HRESULT)0xC0380002L)\r
-#define WV_LOCAL_OP_ERROR ((HRESULT)0xC0380003L)\r
-#define WV_LOCAL_PROTECTION_ERROR ((HRESULT)0xC0380004L)\r
-#define WV_WR_FLUSHED_ERROR ((HRESULT)0xC0380005L)\r
-#define WV_BIND_WINDOW_ERROR ((HRESULT)0xC0380006L)\r
-#define WV_REMOTE_ACCESS_ERROR ((HRESULT)0xC0380007L)\r
-#define WV_REMOTE_OP_ERROR ((HRESULT)0xC0380008L)\r
-#define WV_RNR_RETRY_ERROR ((HRESULT)0xC0380009L)\r
-#define WV_TIMEOUT_RETRY_ERROR ((HRESULT)0xC038000AL)\r
+#define WV_SUCCESS ((HRESULT)0x00000000L)\r
+#define WV_TIMEOUT ((HRESULT)0x00000102L)\r
+#define WV_PENDING ((HRESULT)0x00000103L)\r
+#define WV_BUFFER_OVERFLOW ((HRESULT)0x80000005L)\r
+#define WV_DEVICE_BUSY ((HRESULT)0x80000011L)\r
+#define WV_NO_MORE_ENTRIES ((HRESULT)0x8000001AL)\r
+#define WV_UNSUCCESSFUL ((HRESULT)0xC0000001L)\r
+#define WV_ACCESS_VIOLATION ((HRESULT)0xC0000005L)\r
+#define WV_INVALID_HANDLE ((HRESULT)0xC0000008L)\r
+#define WV_INVALID_PARAMETER ((HRESULT)0xC000000DL)\r
+#define WV_NO_MEMORY ((HRESULT)0xC0000017L)\r
+#define WV_INVALID_PARAMETER_MIX ((HRESULT)0xC0000030L)\r
+#define WV_DATA_OVERRUN ((HRESULT)0xC000003CL)\r
+#define WV_INSUFFICIENT_RESOURCES ((HRESULT)0xC000009AL)\r
+#define WV_NOT_INITIALIZED ((HRESULT)0xC00000A3L)\r
+#define WV_NOT_SUPPORTED ((HRESULT)0xC00000BBL)\r
+#define WV_INTERNAL_ERROR ((HRESULT)0xC00000E5L)\r
+#define WV_INVALID_PARAMETER_1 ((HRESULT)0xC00000EFL)\r
+#define WV_INVALID_PARAMETER_2 ((HRESULT)0xC00000F0L)\r
+#define WV_INVALID_PARAMETER_3 ((HRESULT)0xC00000F1L)\r
+#define WV_INVALID_PARAMETER_4 ((HRESULT)0xC00000F2L)\r
+#define WV_INVALID_PARAMETER_5 ((HRESULT)0xC00000F3L)\r
+#define WV_INVALID_PARAMETER_6 ((HRESULT)0xC00000F4L)\r
+#define WV_INVALID_PARAMETER_7 ((HRESULT)0xC00000F5L)\r
+#define WV_INVALID_PARAMETER_8 ((HRESULT)0xC00000F6L)\r
+#define WV_INVALID_PARAMETER_9 ((HRESULT)0xC00000F7L)\r
+#define WV_INVALID_PARAMETER_10 ((HRESULT)0xC00000F8L)\r
+#define WV_CANCELLED ((HRESULT)0xC0000120L)\r
+#define WV_REMOTE_ERROR ((HRESULT)0xC000013DL)\r
+#define WV_INVALID_ADDRESS ((HRESULT)0xC0000141L)\r
+#define WV_ADDRESS_ALREADY_EXISTS ((HRESULT)0xC000020AL)\r
+#define WV_CONNECTION_REFUSED ((HRESULT)0xC0000236L)\r
+#define WV_CONNECTION_INVALID ((HRESULT)0xC000023AL)\r
+#define WV_CONNECTION_ACTIVE ((HRESULT)0xC000023BL)\r
+#define WV_HOST_UNREACHABLE ((HRESULT)0xC000023DL)\r
+#define WV_CONNECTION_ABORTED ((HRESULT)0xC0000241L)\r
+#define WV_DEVICE_REMOVED ((HRESULT)0xC00002B6L)\r
+#define WV_LOCAL_LENGTH ((HRESULT)0xC0380001L)\r
+#define WV_INVALIDATION_ERROR ((HRESULT)0xC0380002L)\r
+#define WV_LOCAL_OP_ERROR ((HRESULT)0xC0380003L)\r
+#define WV_LOCAL_PROTECTION_ERROR ((HRESULT)0xC0380004L)\r
+#define WV_WR_FLUSHED_ERROR ((HRESULT)0xC0380005L)\r
+#define WV_BIND_WINDOW_ERROR ((HRESULT)0xC0380006L)\r
+#define WV_REMOTE_ACCESS_ERROR ((HRESULT)0xC0380007L)\r
+#define WV_REMOTE_OP_ERROR ((HRESULT)0xC0380008L)\r
+#define WV_RNR_RETRY_ERROR ((HRESULT)0xC0380009L)\r
+#define WV_TIMEOUT_RETRY_ERROR ((HRESULT)0xC038000AL)\r
#define WV_REMOTE_INVALID_REQUEST_ERROR ((HRESULT)0xC038000BL)\r
-#define WV_BAD_RESPONSE_ERROR ((HRESULT)0xC038000CL)\r
-#define WV_LOCAL_ACCESS_ERROR ((HRESULT)0xC038000DL)\r
-#define WV_UNKNOWN_ERROR ((HRESULT)0xC038000EL)\r
+#define WV_BAD_RESPONSE_ERROR ((HRESULT)0xC038000CL)\r
+#define WV_LOCAL_ACCESS_ERROR ((HRESULT)0xC038000DL)\r
+#define WV_UNKNOWN_ERROR ((HRESULT)0xC038000EL)\r
\r
#endif // _WVSTATUS_H_\r