The FwVersion should be UINT64, not a 64-byte array.
The Lookup() method needs the remote address as input.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1@1070
ad392aa1-c5ef-ae45-8dd8-
e69d62a5ef86
return HRESULT_FROM_WIN32(GetLastError());\r
}\r
\r
- RtlCopyMemory(pAttributes->FwVersion, attr.FwVersion, 64);\r
+ pAttributes->FwVersion = attr.FwVersion;\r
pAttributes->NodeGuid = attr.NodeGuid;\r
pAttributes->SystemImageGuid = attr.SystemImageGuid;\r
pAttributes->VendorId = attr.VendorId;\r
}\r
\r
STDMETHODIMP CWVDatagramEndpoint::\r
-Lookup(const VOID* pPrivateData, SIZE_T PrivateDataLength, OVERLAPPED* pOverlapped)\r
+Lookup(const struct sockaddr* pAddress, const VOID* pPrivateData,\r
+ SIZE_T PrivateDataLength, OVERLAPPED* pOverlapped)\r
{\r
+ UNREFERENCED_PARAMETER(pAddress);\r
UNREFERENCED_PARAMETER(pPrivateData);\r
UNREFERENCED_PARAMETER(PrivateDataLength);\r
UNREFERENCED_PARAMETER(pOverlapped);\r
STDMETHODIMP Reject(const VOID* pPrivateData, SIZE_T PrivateDataLength);\r
\r
// IWVDatagramEndpoint methods\r
- STDMETHODIMP Lookup(const VOID* pPrivateData, SIZE_T PrivateDataLength,\r
- OVERLAPPED* pOverlapped);\r
+ STDMETHODIMP Lookup(const struct sockaddr* pAddress, const VOID* pPrivateData,\r
+ SIZE_T PrivateDataLength, OVERLAPPED* pOverlapped);\r
STDMETHODIMP Accept(WV_DATAGRAM_PARAM* pParam, OVERLAPPED* pOverlapped);\r
STDMETHODIMP JoinMulticast(const struct sockaddr* pAddress,\r
OVERLAPPED* pOverlapped);\r
\r
typedef struct _WV_DEVICE_ATTRIBUTES\r
{\r
- UINT8 FwVersion[64];\r
+ UINT64 FwVersion;\r
UINT64 NodeGuid;\r
UINT64 SystemImageGuid;\r
UINT32 VendorId;\r
// IWVDatagramEndpoint methods\r
STDMETHOD(Lookup)(\r
THIS_\r
+ __in const struct sockaddr* pAddress,\r
__in_bcount_opt(PrivateDataLength) const VOID* pPrivateData,\r
__in SIZE_T PrivateDataLength,\r
__in OVERLAPPED* pOverlapped\r