include: Add definitions for IWSDUdpAddress, IWSDTransportAddress.

Signed-off-by: Owen Rudge <orudge@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Owen Rudge 2017-05-30 23:06:06 +01:00 committed by Alexandre Julliard
parent 9c9180f606
commit bcbe4ae756
1 changed files with 52 additions and 0 deletions

View File

@ -22,8 +22,21 @@ cpp_quote("#define WSDAPI_ADDRESSFAMILY_IPV4 1")
cpp_quote("#define WSDAPI_ADDRESSFAMILY_IPV6 2")
interface IWSDAddress;
interface IWSDUdpAddress;
interface IWSDMessageParameters;
cpp_quote("HRESULT WINAPI WSDCreateUdpAddress(IWSDUdpAddress **ppAddress);")
#ifndef SOCKADDR_STORAGE
cpp_quote("#if 1")
cpp_quote("#ifndef __CSADDR_DEFINED__")
cpp_quote("typedef struct SOCKADDR_STORAGE SOCKADDR_STORAGE;")
cpp_quote("#endif")
cpp_quote("#else")
typedef void SOCKADDR_STORAGE;
cpp_quote("#endif")
#endif
[
uuid(b9574c6c-12a6-4f74-93a1-3318ff605759),
object,
@ -35,6 +48,45 @@ interface IWSDAddress : IUnknown
HRESULT Deserialize([in] LPCWSTR pszBuffer);
}
[
uuid(70d23498-4ee6-4340-a3df-d845d2235467),
object,
local
]
interface IWSDTransportAddress : IWSDAddress
{
HRESULT GetPort([out] WORD *pwPort);
HRESULT SetPort([in] WORD wPort);
HRESULT GetTransportAddress([out] LPCWSTR *ppszAddress);
HRESULT GetTransportAddressEx([in] BOOL fSafe, [out] LPCWSTR *ppszAddress);
HRESULT SetTransportAddress([in] LPCWSTR pszAddress);
}
typedef enum _WSDUdpMessageType
{
ONE_WAY,
TWO_WAY
} WSDUdpMessageType;
[
uuid(74d6124a-a441-4f78-a1eb-97a8d1996893),
object,
local
]
interface IWSDUdpAddress : IWSDTransportAddress
{
HRESULT SetSockaddr([in] const SOCKADDR_STORAGE *pSockAddr);
HRESULT GetSockaddr([out] SOCKADDR_STORAGE *pSockAddr);
HRESULT SetExclusive(BOOL fExclusive);
HRESULT GetExclusive();
HRESULT SetMessageType([in] WSDUdpMessageType messageType);
HRESULT GetMessageType([out] WSDUdpMessageType* pMessageType);
HRESULT SetTTL([in] DWORD dwTTL);
HRESULT GetTTL([out] DWORD *pdwTTL);
HRESULT SetAlias([in] const GUID* pAlias);
HRESULT GetAlias([out] GUID *pAlias);
}
[
uuid(1fafe8a2-e6fc-4b80-b6cf-b7d45c416d7c),
object