109 This->usercontext = pvUserContext;
110 This->msghandler = pfn;
119 const GUID *
const pguidServiceProvider,
const GUID *
const pguidApplication,
125 pSPInfoBuffer, pcbEnumData, pcReturned,
dwFlags);
131 FIXME(
"Application guid %s is currently being ignored\n",
debugstr_guid(pguidApplication));
138 IDirectPlay8Address *
const pDeviceInfo,
void *
const pUserEnumData,
139 const DWORD dwUserEnumDataSize,
const DWORD dwEnumCount,
const DWORD dwRetryInterval,
140 const DWORD dwTimeOut,
void *
const pvUserContext,
DPNHANDLE *
const pAsyncHandle,
145 FIXME(
"(%p):(%p,%p,%p,%p,%lu,%lu,%lu,%lu,%p,%p,%lx)\n",
This, pApplicationDesc, pAddrHost, pDeviceInfo, pUserEnumData,
146 dwUserEnumDataSize, dwEnumCount, dwRetryInterval, dwTimeOut, pvUserContext, pAsyncHandle,
dwFlags);
148 if(!
This->msghandler)
154 if(dwUserEnumDataSize >
This->spcaps.dwMaxEnumPayloadSize)
170 IDirectPlay8Address *
const pDeviceInfo,
const DPN_SECURITY_DESC *
const pdnSecurity,
172 const DWORD dwUserConnectDataSize,
void *
const pvAsyncContext,
176 FIXME(
"(%p):(%p,%p,%lx): Stub\n",
This, pvAsyncContext, phAsyncHandle,
dwFlags);
185 FIXME(
"(%p):(%p,%p,%lx): Stub\n",
This, pvAsyncContext, phAsyncHandle,
dwFlags);
206 const DPN_PLAYER_INFO *
const pdpnPlayerInfo,
void *
const pvAsyncContext,
210 FIXME(
"(%p):(%p,%p,%lx): Semi-stub.\n",
This, pvAsyncContext, phAsyncHandle,
dwFlags);
216 FIXME(
"Async handle currently not supported.\n");
264 IDirectPlay8Address **
const pAddress,
const DWORD dwFlags)
310 TRACE(
"(%p)->(%p,%p,%lx): stub\n", iface, pguidSP, pdpspCaps,
dwFlags);
328 if(!
This->msghandler)
336 *pdpspCaps =
This->spcaps;
351 struct IDirectPlay8LobbiedApplication *
const pIDP8LobbiedApplication,
const DWORD dwFlags)
422 *
obj = &
This->IDirectPlay8LobbyClient_iface;
468 This->msghandler = msghandler;
495 FIXME(
"(%p)->(%p %p %p %lu 0x%08lx)\n",
This, connectioninfo, connectioncontext, application,
timeout,
flags);
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static const IDirectPlay8ClientVtbl DirectPlay8Client_Vtbl
static HRESULT WINAPI lobbyclient_SetConnectionSettings(IDirectPlay8LobbyClient *iface, DPNHANDLE connection, const DPL_CONNECTION_SETTINGS *sessioninfo, DWORD flags)
static HRESULT WINAPI lobbyclient_ReleaseApplication(IDirectPlay8LobbyClient *iface, DPNHANDLE connection, DWORD flags)
static HRESULT WINAPI IDirectPlay8ClientImpl_ReturnBuffer(IDirectPlay8Client *iface, const DPNHANDLE hBufferHandle, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetSPCaps(IDirectPlay8Client *iface, const GUID *const pguidSP, DPN_SP_CAPS *const pdpspCaps, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_CancelAsyncOperation(IDirectPlay8Client *iface, const DPNHANDLE hAsyncHandle, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_QueryInterface(IDirectPlay8Client *iface, REFIID riid, void **ret_iface)
static HRESULT WINAPI IDirectPlay8ClientImpl_EnumServiceProviders(IDirectPlay8Client *iface, const GUID *const pguidServiceProvider, const GUID *const pguidApplication, DPN_SERVICE_PROVIDER_INFO *const pSPInfoBuffer, PDWORD const pcbEnumData, PDWORD const pcReturned, const DWORD dwFlags)
static IDirectPlay8LobbyClientImpl * impl_from_IDirectPlay8LobbyClient(IDirectPlay8LobbyClient *iface)
static ULONG WINAPI lobbyclient_AddRef(IDirectPlay8LobbyClient *iface)
static HRESULT WINAPI IDirectPlay8ClientImpl_Close(IDirectPlay8Client *iface, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_RegisterLobby(IDirectPlay8Client *iface, const DPNHANDLE dpnHandle, struct IDirectPlay8LobbiedApplication *const pIDP8LobbiedApplication, const DWORD dwFlags)
static HRESULT WINAPI lobbyclient_EnumLocalPrograms(IDirectPlay8LobbyClient *iface, GUID *guidapplication, BYTE *enumdata, DWORD *enumDataSize, DWORD *items, DWORD flags)
static HRESULT WINAPI IDirectPlay8ClientImpl_Connect(IDirectPlay8Client *iface, const DPN_APPLICATION_DESC *const pdnAppDesc, IDirectPlay8Address *const pHostAddr, IDirectPlay8Address *const pDeviceInfo, const DPN_SECURITY_DESC *const pdnSecurity, const DPN_SECURITY_CREDENTIALS *const pdnCredentials, const void *const pvUserConnectData, const DWORD dwUserConnectDataSize, void *const pvAsyncContext, DPNHANDLE *const phAsyncHandle, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetSendQueueInfo(IDirectPlay8Client *iface, DWORD *const pdwNumMsgs, DWORD *const pdwNumBytes, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetApplicationDesc(IDirectPlay8Client *iface, DPN_APPLICATION_DESC *const pAppDescBuffer, DWORD *const pcbDataSize, const DWORD dwFlags)
HRESULT DPNET_CreateDirectPlay8Client(IClassFactory *iface, IUnknown *pUnkOuter, REFIID riid, void **ppv)
static ULONG WINAPI lobbyclient_Release(IDirectPlay8LobbyClient *iface)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetCaps(IDirectPlay8Client *iface, DPN_CAPS *const pdpCaps, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_SetCaps(IDirectPlay8Client *iface, const DPN_CAPS *const pdpCaps, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetConnectionInfo(IDirectPlay8Client *iface, DPN_CONNECTION_INFO *const pdpConnectionInfo, const DWORD dwFlags)
static HRESULT WINAPI lobbyclient_GetConnectionSettings(IDirectPlay8LobbyClient *iface, DPNHANDLE connection, DPL_CONNECTION_SETTINGS *sessioninfo, DWORD *infosize, DWORD flags)
static HRESULT WINAPI IDirectPlay8ClientImpl_EnumHosts(IDirectPlay8Client *iface, PDPN_APPLICATION_DESC const pApplicationDesc, IDirectPlay8Address *const pAddrHost, IDirectPlay8Address *const pDeviceInfo, void *const pUserEnumData, const DWORD dwUserEnumDataSize, const DWORD dwEnumCount, const DWORD dwRetryInterval, const DWORD dwTimeOut, void *const pvUserContext, DPNHANDLE *const pAsyncHandle, const DWORD dwFlags)
static IDirectPlay8ClientImpl * impl_from_IDirectPlay8Client(IDirectPlay8Client *iface)
static HRESULT WINAPI lobbyclient_ConnectApplication(IDirectPlay8LobbyClient *iface, DPL_CONNECT_INFO *connectioninfo, void *connectioncontext, DPNHANDLE *application, DWORD timeout, DWORD flags)
static ULONG WINAPI IDirectPlay8ClientImpl_AddRef(IDirectPlay8Client *iface)
static ULONG WINAPI IDirectPlay8ClientImpl_Release(IDirectPlay8Client *iface)
static HRESULT WINAPI lobbyclient_Send(IDirectPlay8LobbyClient *iface, DPNHANDLE connection, BYTE *buffer, DWORD buffersize, DWORD flags)
static const IDirectPlay8LobbyClientVtbl DirectPlay8LobbiedClient_Vtbl
static HRESULT WINAPI IDirectPlay8ClientImpl_Initialize(IDirectPlay8Client *iface, void *const pvUserContext, const PFNDPNMESSAGEHANDLER pfn, const DWORD dwFlags)
static HRESULT WINAPI lobbyclient_Close(IDirectPlay8LobbyClient *iface, DWORD flags)
static HRESULT WINAPI lobbyclient_Initialize(IDirectPlay8LobbyClient *iface, void *context, PFNDPNMESSAGEHANDLER msghandler, DWORD flags)
HRESULT DPNET_CreateDirectPlay8LobbyClient(IClassFactory *iface, IUnknown *outer, REFIID riid, void **obj)
static HRESULT WINAPI IDirectPlay8ClientImpl_SetClientInfo(IDirectPlay8Client *iface, const DPN_PLAYER_INFO *const pdpnPlayerInfo, void *const pvAsyncContext, DPNHANDLE *const phAsyncHandle, const DWORD dwFlags)
static HRESULT WINAPI lobbyclient_QueryInterface(IDirectPlay8LobbyClient *iface, REFIID riid, void **obj)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetServerAddress(IDirectPlay8Client *iface, IDirectPlay8Address **const pAddress, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_Send(IDirectPlay8Client *iface, const DPN_BUFFER_DESC *const prgBufferDesc, const DWORD cBufferDesc, const DWORD dwTimeOut, void *const pvAsyncContext, DPNHANDLE *const phAsyncHandle, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_GetServerInfo(IDirectPlay8Client *iface, DPN_PLAYER_INFO *const pdpnPlayerInfo, DWORD *const pdwSize, const DWORD dwFlags)
static HRESULT WINAPI IDirectPlay8ClientImpl_SetSPCaps(IDirectPlay8Client *iface, const GUID *const pguidSP, const DPN_SP_CAPS *const pdpspCaps, const DWORD dwFlags)
static wchar_t * wcsdup(const wchar_t *str)
HRESULT(WINAPI * PFNDPNMESSAGEHANDLER)(PVOID, DWORD, PVOID)
#define DPNERR_INVALIDPARAM
struct _DPN_SECURITY_CREDENTIALS DPN_SECURITY_CREDENTIALS
struct _DPN_SECURITY_DESC DPN_SECURITY_DESC
#define DPNERR_ENUMQUERYTOOLARGE
#define IDirectPlay8Client_AddRef(p)
#define DPNSUCCESS_PENDING
#define DPNENUMHOSTS_SYNC
#define DPNERR_UNINITIALIZED
void init_dpn_sp_caps(DPN_SP_CAPS *dpnspcaps)
HRESULT enum_services_providers(const GUID *const service, DPN_SERVICE_PROVIDER_INFO *const info_buffer, DWORD *const buf_size, DWORD *const returned)
#define memcpy(s1, s2, n)
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
#define IsEqualGUID(rguid1, rguid2)
PFNDPNMESSAGEHANDLER msghandler
IDirectPlay8LobbyClient IDirectPlay8LobbyClient_iface
#define CONTAINING_RECORD(address, type, field)
#define CLASS_E_NOAGGREGATION