~CNDAdapter();\r
void Delete() {delete this;}\r
static STDMETHODIMP\r
- CreateInstance(CNDProvider *pProvider, UINT64 adapterId, INDAdapter** ppAdapter)\r
+ CreateInstance(CNDProvider *pProvider, UINT64 adapterId, VOID** ppAdapter)\r
{\r
HRESULT hr;\r
CNDAdapter *adapter;\r
}\r
\r
STDMETHODIMP CNDProvider::\r
-OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter)\r
+OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter)\r
{\r
+ if (iid != IID_INDAdapter) {\r
+ return E_NOINTERFACE;\r
+ }\r
+\r
return CNDAdapter::CreateInstance(this, adapterId, ppAdapter);\r
}\r
\r
SIZE_T* pcbAddressList);\r
STDMETHODIMP ResolveAddress(const struct sockaddr* pAddress,\r
SIZE_T cbAddress, UINT64* pAdapterId);\r
- STDMETHODIMP OpenAdapter(UINT64 adapterId, INDAdapter** ppAdapter);\r
+ STDMETHODIMP OpenAdapter(REFIID iid, UINT64 adapterId, VOID** ppAdapter);\r
\r
CNDProvider();\r
~CNDProvider();\r