wsdbase.h 62 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689
  1. /*** Autogenerated by WIDL 7.7 from include/wsdbase.idl - Do not edit ***/
  2. #ifdef _WIN32
  3. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  4. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  5. #endif
  6. #include <rpc.h>
  7. #include <rpcndr.h>
  8. #endif
  9. #ifndef COM_NO_WINDOWS_H
  10. #include <windows.h>
  11. #include <ole2.h>
  12. #endif
  13. #ifndef __wsdbase_h__
  14. #define __wsdbase_h__
  15. /* Forward declarations */
  16. #ifndef __IWSDAddress_FWD_DEFINED__
  17. #define __IWSDAddress_FWD_DEFINED__
  18. typedef interface IWSDAddress IWSDAddress;
  19. #ifdef __cplusplus
  20. interface IWSDAddress;
  21. #endif /* __cplusplus */
  22. #endif
  23. #ifndef __IWSDTransportAddress_FWD_DEFINED__
  24. #define __IWSDTransportAddress_FWD_DEFINED__
  25. typedef interface IWSDTransportAddress IWSDTransportAddress;
  26. #ifdef __cplusplus
  27. interface IWSDTransportAddress;
  28. #endif /* __cplusplus */
  29. #endif
  30. #ifndef __IWSDMessageParameters_FWD_DEFINED__
  31. #define __IWSDMessageParameters_FWD_DEFINED__
  32. typedef interface IWSDMessageParameters IWSDMessageParameters;
  33. #ifdef __cplusplus
  34. interface IWSDMessageParameters;
  35. #endif /* __cplusplus */
  36. #endif
  37. #ifndef __IWSDUdpMessageParameters_FWD_DEFINED__
  38. #define __IWSDUdpMessageParameters_FWD_DEFINED__
  39. typedef interface IWSDUdpMessageParameters IWSDUdpMessageParameters;
  40. #ifdef __cplusplus
  41. interface IWSDUdpMessageParameters;
  42. #endif /* __cplusplus */
  43. #endif
  44. #ifndef __IWSDUdpAddress_FWD_DEFINED__
  45. #define __IWSDUdpAddress_FWD_DEFINED__
  46. typedef interface IWSDUdpAddress IWSDUdpAddress;
  47. #ifdef __cplusplus
  48. interface IWSDUdpAddress;
  49. #endif /* __cplusplus */
  50. #endif
  51. #ifndef __IWSDHttpMessageParameters_FWD_DEFINED__
  52. #define __IWSDHttpMessageParameters_FWD_DEFINED__
  53. typedef interface IWSDHttpMessageParameters IWSDHttpMessageParameters;
  54. #ifdef __cplusplus
  55. interface IWSDHttpMessageParameters;
  56. #endif /* __cplusplus */
  57. #endif
  58. #ifndef __IWSDHttpAddress_FWD_DEFINED__
  59. #define __IWSDHttpAddress_FWD_DEFINED__
  60. typedef interface IWSDHttpAddress IWSDHttpAddress;
  61. #ifdef __cplusplus
  62. interface IWSDHttpAddress;
  63. #endif /* __cplusplus */
  64. #endif
  65. #ifndef __IWSDSSLClientCertificate_FWD_DEFINED__
  66. #define __IWSDSSLClientCertificate_FWD_DEFINED__
  67. typedef interface IWSDSSLClientCertificate IWSDSSLClientCertificate;
  68. #ifdef __cplusplus
  69. interface IWSDSSLClientCertificate;
  70. #endif /* __cplusplus */
  71. #endif
  72. #ifndef __IWSDHttpAuthParameters_FWD_DEFINED__
  73. #define __IWSDHttpAuthParameters_FWD_DEFINED__
  74. typedef interface IWSDHttpAuthParameters IWSDHttpAuthParameters;
  75. #ifdef __cplusplus
  76. interface IWSDHttpAuthParameters;
  77. #endif /* __cplusplus */
  78. #endif
  79. #ifndef __IWSDSignatureProperty_FWD_DEFINED__
  80. #define __IWSDSignatureProperty_FWD_DEFINED__
  81. typedef interface IWSDSignatureProperty IWSDSignatureProperty;
  82. #ifdef __cplusplus
  83. interface IWSDSignatureProperty;
  84. #endif /* __cplusplus */
  85. #endif
  86. /* Headers for imported files */
  87. #include <objidl.h>
  88. #include <wincrypt.h>
  89. #ifdef __cplusplus
  90. extern "C" {
  91. #endif
  92. #include <winapifamily.h>
  93. #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  94. #ifndef __IWSDAddress_FWD_DEFINED__
  95. #define __IWSDAddress_FWD_DEFINED__
  96. typedef interface IWSDAddress IWSDAddress;
  97. #ifdef __cplusplus
  98. interface IWSDAddress;
  99. #endif /* __cplusplus */
  100. #endif
  101. #ifndef __IWSDMessageParameters_FWD_DEFINED__
  102. #define __IWSDMessageParameters_FWD_DEFINED__
  103. typedef interface IWSDMessageParameters IWSDMessageParameters;
  104. #ifdef __cplusplus
  105. interface IWSDMessageParameters;
  106. #endif /* __cplusplus */
  107. #endif
  108. #ifndef __IWSDUdpAddress_FWD_DEFINED__
  109. #define __IWSDUdpAddress_FWD_DEFINED__
  110. typedef interface IWSDUdpAddress IWSDUdpAddress;
  111. #ifdef __cplusplus
  112. interface IWSDUdpAddress;
  113. #endif /* __cplusplus */
  114. #endif
  115. #ifndef __IWSDUdpMessageParameters_FWD_DEFINED__
  116. #define __IWSDUdpMessageParameters_FWD_DEFINED__
  117. typedef interface IWSDUdpMessageParameters IWSDUdpMessageParameters;
  118. #ifdef __cplusplus
  119. interface IWSDUdpMessageParameters;
  120. #endif /* __cplusplus */
  121. #endif
  122. #ifndef __IWSDHttpAddress_FWD_DEFINED__
  123. #define __IWSDHttpAddress_FWD_DEFINED__
  124. typedef interface IWSDHttpAddress IWSDHttpAddress;
  125. #ifdef __cplusplus
  126. interface IWSDHttpAddress;
  127. #endif /* __cplusplus */
  128. #endif
  129. #ifndef __IWSDHttpMessageParameters_FWD_DEFINED__
  130. #define __IWSDHttpMessageParameters_FWD_DEFINED__
  131. typedef interface IWSDHttpMessageParameters IWSDHttpMessageParameters;
  132. #ifdef __cplusplus
  133. interface IWSDHttpMessageParameters;
  134. #endif /* __cplusplus */
  135. #endif
  136. #if WINVER >= 0x601
  137. typedef enum __WIDL_wsdbase_generated_name_00000013 {
  138. WSD_CONFIG_MAX_INBOUND_MESSAGE_SIZE = 1,
  139. WSD_CONFIG_MAX_OUTBOUND_MESSAGE_SIZE = 2,
  140. WSD_SECURITY_SSL_CERT_FOR_CLIENT_AUTH = 3,
  141. WSD_SECURITY_SSL_SERVER_CERT_VALIDATION = 4,
  142. WSD_SECURITY_SSL_CLIENT_CERT_VALIDATION = 5,
  143. WSD_SECURITY_SSL_NEGOTIATE_CLIENT_CERT = 6,
  144. WSD_SECURITY_COMPACTSIG_SIGNING_CERT = 7,
  145. WSD_SECURITY_COMPACTSIG_VALIDATION = 8,
  146. WSD_CONFIG_HOSTING_ADDRESSES = 9,
  147. WSD_CONFIG_DEVICE_ADDRESSES = 10,
  148. WSD_SECURITY_REQUIRE_HTTP_CLIENT_AUTH = 11,
  149. WSD_SECURITY_REQUIRE_CLIENT_CERT_OR_HTTP_CLIENT_AUTH = 12,
  150. WSD_SECURITY_USE_HTTP_CLIENT_AUTH = 13
  151. } WSD_CONFIG_PARAM_TYPE;
  152. typedef struct _WSD_CONFIG_PARAM {
  153. WSD_CONFIG_PARAM_TYPE configParamType;
  154. PVOID pConfigData;
  155. DWORD dwConfigDataSize;
  156. } WSD_CONFIG_PARAM;
  157. typedef struct _WSD_CONFIG_PARAM *PWSD_CONFIG_PARAM;
  158. typedef struct _WSD_SECURITY_CERT_VALIDATION_V1 {
  159. PCCERT_CONTEXT *certMatchArray;
  160. DWORD dwCertMatchArrayCount;
  161. HCERTSTORE hCertMatchStore;
  162. HCERTSTORE hCertIssuerStore;
  163. DWORD dwCertCheckOptions;
  164. } WSD_SECURITY_CERT_VALIDATION_V1;
  165. #if _WIN32_WINNT >= 0x602
  166. typedef struct _WSD_SECURITY_CERT_VALIDATION {
  167. PCCERT_CONTEXT *certMatchArray;
  168. DWORD dwCertMatchArrayCount;
  169. HCERTSTORE hCertMatchStore;
  170. HCERTSTORE hCertIssuerStore;
  171. DWORD dwCertCheckOptions;
  172. LPCWSTR pszCNGHashAlgId;
  173. BYTE *pbCertHash;
  174. DWORD dwCertHashSize;
  175. } WSD_SECURITY_CERT_VALIDATION;
  176. #else
  177. typedef WSD_SECURITY_CERT_VALIDATION_V1 WSD_SECURITY_CERT_VALIDATION;
  178. #endif
  179. typedef WSD_SECURITY_CERT_VALIDATION *PWSD_SECURITY_CERT_VALIDATION;
  180. typedef struct _WSD_SECURITY_SIGNATURE_VALIDATION {
  181. PCCERT_CONTEXT *signingCertArray;
  182. DWORD dwSigningCertArrayCount;
  183. HCERTSTORE hSigningCertStore;
  184. DWORD dwFlags;
  185. } WSD_SECURITY_SIGNATURE_VALIDATION;
  186. typedef struct _WSD_SECURITY_SIGNATURE_VALIDATION *PWSD_SECURITY_SIGNATURE_VALIDATION;
  187. typedef DWORD WSD_SECURITY_HTTP_AUTH_SCHEMES;
  188. typedef DWORD *PWSD_SECURITY_HTTP_AUTH_SCHEMES;
  189. #define WSDAPI_SSL_CERT_APPLY_DEFAULT_CHECKS 0x0
  190. #define WSDAPI_SSL_CERT_IGNORE_REVOCATION 0x1
  191. #define WSDAPI_SSL_CERT_IGNORE_EXPIRY 0x2
  192. #define WSDAPI_SSL_CERT_IGNORE_WRONG_USAGE 0x4
  193. #define WSDAPI_SSL_CERT_IGNORE_UNKNOWN_CA 0x8
  194. #define WSDAPI_SSL_CERT_IGNORE_INVALID_CN 0x10
  195. #define WSDAPI_COMPACTSIG_ACCEPT_ALL_MESSAGES 0x1
  196. #define WSD_SECURITY_HTTP_AUTH_SCHEME_NEGOTIATE 0x1
  197. #define WSD_SECURITY_HTTP_AUTH_SCHEME_NTLM 0x2
  198. typedef struct _WSD_CONFIG_ADDRESSES {
  199. IWSDAddress **addresses;
  200. DWORD dwAddressCount;
  201. } WSD_CONFIG_ADDRESSES;
  202. typedef struct _WSD_CONFIG_ADDRESSES *PWSD_CONFIG_ADDRESSES;
  203. #endif
  204. #define WSDAPI_ADDRESSFAMILY_IPV4 1
  205. #define WSDAPI_ADDRESSFAMILY_IPV6 2
  206. /*****************************************************************************
  207. * IWSDAddress interface
  208. */
  209. #ifndef __IWSDAddress_INTERFACE_DEFINED__
  210. #define __IWSDAddress_INTERFACE_DEFINED__
  211. DEFINE_GUID(IID_IWSDAddress, 0xb9574c6c, 0x12a6, 0x4f74, 0x93,0xa1, 0x33,0x18,0xff,0x60,0x57,0x59);
  212. #if defined(__cplusplus) && !defined(CINTERFACE)
  213. MIDL_INTERFACE("b9574c6c-12a6-4f74-93a1-3318ff605759")
  214. IWSDAddress : public IUnknown
  215. {
  216. virtual HRESULT STDMETHODCALLTYPE Serialize(
  217. LPWSTR pszBuffer,
  218. DWORD cchLength,
  219. WINBOOL fSafe) = 0;
  220. virtual HRESULT STDMETHODCALLTYPE Deserialize(
  221. LPCWSTR pszBuffer) = 0;
  222. };
  223. #ifdef __CRT_UUID_DECL
  224. __CRT_UUID_DECL(IWSDAddress, 0xb9574c6c, 0x12a6, 0x4f74, 0x93,0xa1, 0x33,0x18,0xff,0x60,0x57,0x59)
  225. #endif
  226. #else
  227. typedef struct IWSDAddressVtbl {
  228. BEGIN_INTERFACE
  229. /*** IUnknown methods ***/
  230. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  231. IWSDAddress *This,
  232. REFIID riid,
  233. void **ppvObject);
  234. ULONG (STDMETHODCALLTYPE *AddRef)(
  235. IWSDAddress *This);
  236. ULONG (STDMETHODCALLTYPE *Release)(
  237. IWSDAddress *This);
  238. /*** IWSDAddress methods ***/
  239. HRESULT (STDMETHODCALLTYPE *Serialize)(
  240. IWSDAddress *This,
  241. LPWSTR pszBuffer,
  242. DWORD cchLength,
  243. WINBOOL fSafe);
  244. HRESULT (STDMETHODCALLTYPE *Deserialize)(
  245. IWSDAddress *This,
  246. LPCWSTR pszBuffer);
  247. END_INTERFACE
  248. } IWSDAddressVtbl;
  249. interface IWSDAddress {
  250. CONST_VTBL IWSDAddressVtbl* lpVtbl;
  251. };
  252. #ifdef COBJMACROS
  253. #ifndef WIDL_C_INLINE_WRAPPERS
  254. /*** IUnknown methods ***/
  255. #define IWSDAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  256. #define IWSDAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
  257. #define IWSDAddress_Release(This) (This)->lpVtbl->Release(This)
  258. /*** IWSDAddress methods ***/
  259. #define IWSDAddress_Serialize(This,pszBuffer,cchLength,fSafe) (This)->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe)
  260. #define IWSDAddress_Deserialize(This,pszBuffer) (This)->lpVtbl->Deserialize(This,pszBuffer)
  261. #else
  262. /*** IUnknown methods ***/
  263. static FORCEINLINE HRESULT IWSDAddress_QueryInterface(IWSDAddress* This,REFIID riid,void **ppvObject) {
  264. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  265. }
  266. static FORCEINLINE ULONG IWSDAddress_AddRef(IWSDAddress* This) {
  267. return This->lpVtbl->AddRef(This);
  268. }
  269. static FORCEINLINE ULONG IWSDAddress_Release(IWSDAddress* This) {
  270. return This->lpVtbl->Release(This);
  271. }
  272. /*** IWSDAddress methods ***/
  273. static FORCEINLINE HRESULT IWSDAddress_Serialize(IWSDAddress* This,LPWSTR pszBuffer,DWORD cchLength,WINBOOL fSafe) {
  274. return This->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe);
  275. }
  276. static FORCEINLINE HRESULT IWSDAddress_Deserialize(IWSDAddress* This,LPCWSTR pszBuffer) {
  277. return This->lpVtbl->Deserialize(This,pszBuffer);
  278. }
  279. #endif
  280. #endif
  281. #endif
  282. #endif /* __IWSDAddress_INTERFACE_DEFINED__ */
  283. /*****************************************************************************
  284. * IWSDTransportAddress interface
  285. */
  286. #ifndef __IWSDTransportAddress_INTERFACE_DEFINED__
  287. #define __IWSDTransportAddress_INTERFACE_DEFINED__
  288. DEFINE_GUID(IID_IWSDTransportAddress, 0x70d23498, 0x4ee6, 0x4340, 0xa3,0xdf, 0xd8,0x45,0xd2,0x23,0x54,0x67);
  289. #if defined(__cplusplus) && !defined(CINTERFACE)
  290. MIDL_INTERFACE("70d23498-4ee6-4340-a3df-d845d2235467")
  291. IWSDTransportAddress : public IWSDAddress
  292. {
  293. virtual HRESULT STDMETHODCALLTYPE GetPort(
  294. WORD *pwPort) = 0;
  295. virtual HRESULT STDMETHODCALLTYPE SetPort(
  296. WORD wPort) = 0;
  297. virtual HRESULT STDMETHODCALLTYPE GetTransportAddress(
  298. LPCWSTR *ppszAddress) = 0;
  299. virtual HRESULT STDMETHODCALLTYPE GetTransportAddressEx(
  300. WINBOOL fSafe,
  301. LPCWSTR *ppszAddress) = 0;
  302. virtual HRESULT STDMETHODCALLTYPE SetTransportAddress(
  303. LPCWSTR pszAddress) = 0;
  304. };
  305. #ifdef __CRT_UUID_DECL
  306. __CRT_UUID_DECL(IWSDTransportAddress, 0x70d23498, 0x4ee6, 0x4340, 0xa3,0xdf, 0xd8,0x45,0xd2,0x23,0x54,0x67)
  307. #endif
  308. #else
  309. typedef struct IWSDTransportAddressVtbl {
  310. BEGIN_INTERFACE
  311. /*** IUnknown methods ***/
  312. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  313. IWSDTransportAddress *This,
  314. REFIID riid,
  315. void **ppvObject);
  316. ULONG (STDMETHODCALLTYPE *AddRef)(
  317. IWSDTransportAddress *This);
  318. ULONG (STDMETHODCALLTYPE *Release)(
  319. IWSDTransportAddress *This);
  320. /*** IWSDAddress methods ***/
  321. HRESULT (STDMETHODCALLTYPE *Serialize)(
  322. IWSDTransportAddress *This,
  323. LPWSTR pszBuffer,
  324. DWORD cchLength,
  325. WINBOOL fSafe);
  326. HRESULT (STDMETHODCALLTYPE *Deserialize)(
  327. IWSDTransportAddress *This,
  328. LPCWSTR pszBuffer);
  329. /*** IWSDTransportAddress methods ***/
  330. HRESULT (STDMETHODCALLTYPE *GetPort)(
  331. IWSDTransportAddress *This,
  332. WORD *pwPort);
  333. HRESULT (STDMETHODCALLTYPE *SetPort)(
  334. IWSDTransportAddress *This,
  335. WORD wPort);
  336. HRESULT (STDMETHODCALLTYPE *GetTransportAddress)(
  337. IWSDTransportAddress *This,
  338. LPCWSTR *ppszAddress);
  339. HRESULT (STDMETHODCALLTYPE *GetTransportAddressEx)(
  340. IWSDTransportAddress *This,
  341. WINBOOL fSafe,
  342. LPCWSTR *ppszAddress);
  343. HRESULT (STDMETHODCALLTYPE *SetTransportAddress)(
  344. IWSDTransportAddress *This,
  345. LPCWSTR pszAddress);
  346. END_INTERFACE
  347. } IWSDTransportAddressVtbl;
  348. interface IWSDTransportAddress {
  349. CONST_VTBL IWSDTransportAddressVtbl* lpVtbl;
  350. };
  351. #ifdef COBJMACROS
  352. #ifndef WIDL_C_INLINE_WRAPPERS
  353. /*** IUnknown methods ***/
  354. #define IWSDTransportAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  355. #define IWSDTransportAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
  356. #define IWSDTransportAddress_Release(This) (This)->lpVtbl->Release(This)
  357. /*** IWSDAddress methods ***/
  358. #define IWSDTransportAddress_Serialize(This,pszBuffer,cchLength,fSafe) (This)->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe)
  359. #define IWSDTransportAddress_Deserialize(This,pszBuffer) (This)->lpVtbl->Deserialize(This,pszBuffer)
  360. /*** IWSDTransportAddress methods ***/
  361. #define IWSDTransportAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
  362. #define IWSDTransportAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
  363. #define IWSDTransportAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
  364. #define IWSDTransportAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
  365. #define IWSDTransportAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
  366. #else
  367. /*** IUnknown methods ***/
  368. static FORCEINLINE HRESULT IWSDTransportAddress_QueryInterface(IWSDTransportAddress* This,REFIID riid,void **ppvObject) {
  369. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  370. }
  371. static FORCEINLINE ULONG IWSDTransportAddress_AddRef(IWSDTransportAddress* This) {
  372. return This->lpVtbl->AddRef(This);
  373. }
  374. static FORCEINLINE ULONG IWSDTransportAddress_Release(IWSDTransportAddress* This) {
  375. return This->lpVtbl->Release(This);
  376. }
  377. /*** IWSDAddress methods ***/
  378. static FORCEINLINE HRESULT IWSDTransportAddress_Serialize(IWSDTransportAddress* This,LPWSTR pszBuffer,DWORD cchLength,WINBOOL fSafe) {
  379. return This->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe);
  380. }
  381. static FORCEINLINE HRESULT IWSDTransportAddress_Deserialize(IWSDTransportAddress* This,LPCWSTR pszBuffer) {
  382. return This->lpVtbl->Deserialize(This,pszBuffer);
  383. }
  384. /*** IWSDTransportAddress methods ***/
  385. static FORCEINLINE HRESULT IWSDTransportAddress_GetPort(IWSDTransportAddress* This,WORD *pwPort) {
  386. return This->lpVtbl->GetPort(This,pwPort);
  387. }
  388. static FORCEINLINE HRESULT IWSDTransportAddress_SetPort(IWSDTransportAddress* This,WORD wPort) {
  389. return This->lpVtbl->SetPort(This,wPort);
  390. }
  391. static FORCEINLINE HRESULT IWSDTransportAddress_GetTransportAddress(IWSDTransportAddress* This,LPCWSTR *ppszAddress) {
  392. return This->lpVtbl->GetTransportAddress(This,ppszAddress);
  393. }
  394. static FORCEINLINE HRESULT IWSDTransportAddress_GetTransportAddressEx(IWSDTransportAddress* This,WINBOOL fSafe,LPCWSTR *ppszAddress) {
  395. return This->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress);
  396. }
  397. static FORCEINLINE HRESULT IWSDTransportAddress_SetTransportAddress(IWSDTransportAddress* This,LPCWSTR pszAddress) {
  398. return This->lpVtbl->SetTransportAddress(This,pszAddress);
  399. }
  400. #endif
  401. #endif
  402. #endif
  403. #endif /* __IWSDTransportAddress_INTERFACE_DEFINED__ */
  404. /*****************************************************************************
  405. * IWSDMessageParameters interface
  406. */
  407. #ifndef __IWSDMessageParameters_INTERFACE_DEFINED__
  408. #define __IWSDMessageParameters_INTERFACE_DEFINED__
  409. DEFINE_GUID(IID_IWSDMessageParameters, 0x1fafe8a2, 0xe6fc, 0x4b80, 0xb6,0xcf, 0xb7,0xd4,0x5c,0x41,0x6d,0x7c);
  410. #if defined(__cplusplus) && !defined(CINTERFACE)
  411. MIDL_INTERFACE("1fafe8a2-e6fc-4b80-b6cf-b7d45c416d7c")
  412. IWSDMessageParameters : public IUnknown
  413. {
  414. virtual HRESULT STDMETHODCALLTYPE GetLocalAddress(
  415. IWSDAddress **ppAddress) = 0;
  416. virtual HRESULT STDMETHODCALLTYPE SetLocalAddress(
  417. IWSDAddress *pAddress) = 0;
  418. virtual HRESULT STDMETHODCALLTYPE GetRemoteAddress(
  419. IWSDAddress **ppAddress) = 0;
  420. virtual HRESULT STDMETHODCALLTYPE SetRemoteAddress(
  421. IWSDAddress *pAddress) = 0;
  422. virtual HRESULT STDMETHODCALLTYPE GetLowerParameters(
  423. IWSDMessageParameters **ppTxParams) = 0;
  424. };
  425. #ifdef __CRT_UUID_DECL
  426. __CRT_UUID_DECL(IWSDMessageParameters, 0x1fafe8a2, 0xe6fc, 0x4b80, 0xb6,0xcf, 0xb7,0xd4,0x5c,0x41,0x6d,0x7c)
  427. #endif
  428. #else
  429. typedef struct IWSDMessageParametersVtbl {
  430. BEGIN_INTERFACE
  431. /*** IUnknown methods ***/
  432. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  433. IWSDMessageParameters *This,
  434. REFIID riid,
  435. void **ppvObject);
  436. ULONG (STDMETHODCALLTYPE *AddRef)(
  437. IWSDMessageParameters *This);
  438. ULONG (STDMETHODCALLTYPE *Release)(
  439. IWSDMessageParameters *This);
  440. /*** IWSDMessageParameters methods ***/
  441. HRESULT (STDMETHODCALLTYPE *GetLocalAddress)(
  442. IWSDMessageParameters *This,
  443. IWSDAddress **ppAddress);
  444. HRESULT (STDMETHODCALLTYPE *SetLocalAddress)(
  445. IWSDMessageParameters *This,
  446. IWSDAddress *pAddress);
  447. HRESULT (STDMETHODCALLTYPE *GetRemoteAddress)(
  448. IWSDMessageParameters *This,
  449. IWSDAddress **ppAddress);
  450. HRESULT (STDMETHODCALLTYPE *SetRemoteAddress)(
  451. IWSDMessageParameters *This,
  452. IWSDAddress *pAddress);
  453. HRESULT (STDMETHODCALLTYPE *GetLowerParameters)(
  454. IWSDMessageParameters *This,
  455. IWSDMessageParameters **ppTxParams);
  456. END_INTERFACE
  457. } IWSDMessageParametersVtbl;
  458. interface IWSDMessageParameters {
  459. CONST_VTBL IWSDMessageParametersVtbl* lpVtbl;
  460. };
  461. #ifdef COBJMACROS
  462. #ifndef WIDL_C_INLINE_WRAPPERS
  463. /*** IUnknown methods ***/
  464. #define IWSDMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  465. #define IWSDMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
  466. #define IWSDMessageParameters_Release(This) (This)->lpVtbl->Release(This)
  467. /*** IWSDMessageParameters methods ***/
  468. #define IWSDMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
  469. #define IWSDMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
  470. #define IWSDMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
  471. #define IWSDMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
  472. #define IWSDMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
  473. #else
  474. /*** IUnknown methods ***/
  475. static FORCEINLINE HRESULT IWSDMessageParameters_QueryInterface(IWSDMessageParameters* This,REFIID riid,void **ppvObject) {
  476. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  477. }
  478. static FORCEINLINE ULONG IWSDMessageParameters_AddRef(IWSDMessageParameters* This) {
  479. return This->lpVtbl->AddRef(This);
  480. }
  481. static FORCEINLINE ULONG IWSDMessageParameters_Release(IWSDMessageParameters* This) {
  482. return This->lpVtbl->Release(This);
  483. }
  484. /*** IWSDMessageParameters methods ***/
  485. static FORCEINLINE HRESULT IWSDMessageParameters_GetLocalAddress(IWSDMessageParameters* This,IWSDAddress **ppAddress) {
  486. return This->lpVtbl->GetLocalAddress(This,ppAddress);
  487. }
  488. static FORCEINLINE HRESULT IWSDMessageParameters_SetLocalAddress(IWSDMessageParameters* This,IWSDAddress *pAddress) {
  489. return This->lpVtbl->SetLocalAddress(This,pAddress);
  490. }
  491. static FORCEINLINE HRESULT IWSDMessageParameters_GetRemoteAddress(IWSDMessageParameters* This,IWSDAddress **ppAddress) {
  492. return This->lpVtbl->GetRemoteAddress(This,ppAddress);
  493. }
  494. static FORCEINLINE HRESULT IWSDMessageParameters_SetRemoteAddress(IWSDMessageParameters* This,IWSDAddress *pAddress) {
  495. return This->lpVtbl->SetRemoteAddress(This,pAddress);
  496. }
  497. static FORCEINLINE HRESULT IWSDMessageParameters_GetLowerParameters(IWSDMessageParameters* This,IWSDMessageParameters **ppTxParams) {
  498. return This->lpVtbl->GetLowerParameters(This,ppTxParams);
  499. }
  500. #endif
  501. #endif
  502. #endif
  503. #endif /* __IWSDMessageParameters_INTERFACE_DEFINED__ */
  504. HRESULT WINAPI
  505. WSDCreateUdpMessageParameters(
  506. IWSDUdpMessageParameters** ppTxParams);
  507. typedef struct _WSDUdpRetransmitParams {
  508. ULONG ulSendDelay;
  509. ULONG ulRepeat;
  510. ULONG ulRepeatMinDelay;
  511. ULONG ulRepeatMaxDelay;
  512. ULONG ulRepeatUpperDelay;
  513. } WSDUdpRetransmitParams;
  514. /*****************************************************************************
  515. * IWSDUdpMessageParameters interface
  516. */
  517. #ifndef __IWSDUdpMessageParameters_INTERFACE_DEFINED__
  518. #define __IWSDUdpMessageParameters_INTERFACE_DEFINED__
  519. DEFINE_GUID(IID_IWSDUdpMessageParameters, 0x9934149f, 0x8f0c, 0x447b, 0xaa,0x0b, 0x73,0x12,0x4b,0x0c,0xa7,0xf0);
  520. #if defined(__cplusplus) && !defined(CINTERFACE)
  521. MIDL_INTERFACE("9934149f-8f0c-447b-aa0b-73124b0ca7f0")
  522. IWSDUdpMessageParameters : public IWSDMessageParameters
  523. {
  524. virtual HRESULT STDMETHODCALLTYPE SetRetransmitParams(
  525. const WSDUdpRetransmitParams *pParams) = 0;
  526. virtual HRESULT STDMETHODCALLTYPE GetRetransmitParams(
  527. WSDUdpRetransmitParams *pParams) = 0;
  528. };
  529. #ifdef __CRT_UUID_DECL
  530. __CRT_UUID_DECL(IWSDUdpMessageParameters, 0x9934149f, 0x8f0c, 0x447b, 0xaa,0x0b, 0x73,0x12,0x4b,0x0c,0xa7,0xf0)
  531. #endif
  532. #else
  533. typedef struct IWSDUdpMessageParametersVtbl {
  534. BEGIN_INTERFACE
  535. /*** IUnknown methods ***/
  536. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  537. IWSDUdpMessageParameters *This,
  538. REFIID riid,
  539. void **ppvObject);
  540. ULONG (STDMETHODCALLTYPE *AddRef)(
  541. IWSDUdpMessageParameters *This);
  542. ULONG (STDMETHODCALLTYPE *Release)(
  543. IWSDUdpMessageParameters *This);
  544. /*** IWSDMessageParameters methods ***/
  545. HRESULT (STDMETHODCALLTYPE *GetLocalAddress)(
  546. IWSDUdpMessageParameters *This,
  547. IWSDAddress **ppAddress);
  548. HRESULT (STDMETHODCALLTYPE *SetLocalAddress)(
  549. IWSDUdpMessageParameters *This,
  550. IWSDAddress *pAddress);
  551. HRESULT (STDMETHODCALLTYPE *GetRemoteAddress)(
  552. IWSDUdpMessageParameters *This,
  553. IWSDAddress **ppAddress);
  554. HRESULT (STDMETHODCALLTYPE *SetRemoteAddress)(
  555. IWSDUdpMessageParameters *This,
  556. IWSDAddress *pAddress);
  557. HRESULT (STDMETHODCALLTYPE *GetLowerParameters)(
  558. IWSDUdpMessageParameters *This,
  559. IWSDMessageParameters **ppTxParams);
  560. /*** IWSDUdpMessageParameters methods ***/
  561. HRESULT (STDMETHODCALLTYPE *SetRetransmitParams)(
  562. IWSDUdpMessageParameters *This,
  563. const WSDUdpRetransmitParams *pParams);
  564. HRESULT (STDMETHODCALLTYPE *GetRetransmitParams)(
  565. IWSDUdpMessageParameters *This,
  566. WSDUdpRetransmitParams *pParams);
  567. END_INTERFACE
  568. } IWSDUdpMessageParametersVtbl;
  569. interface IWSDUdpMessageParameters {
  570. CONST_VTBL IWSDUdpMessageParametersVtbl* lpVtbl;
  571. };
  572. #ifdef COBJMACROS
  573. #ifndef WIDL_C_INLINE_WRAPPERS
  574. /*** IUnknown methods ***/
  575. #define IWSDUdpMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  576. #define IWSDUdpMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
  577. #define IWSDUdpMessageParameters_Release(This) (This)->lpVtbl->Release(This)
  578. /*** IWSDMessageParameters methods ***/
  579. #define IWSDUdpMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
  580. #define IWSDUdpMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
  581. #define IWSDUdpMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
  582. #define IWSDUdpMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
  583. #define IWSDUdpMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
  584. /*** IWSDUdpMessageParameters methods ***/
  585. #define IWSDUdpMessageParameters_SetRetransmitParams(This,pParams) (This)->lpVtbl->SetRetransmitParams(This,pParams)
  586. #define IWSDUdpMessageParameters_GetRetransmitParams(This,pParams) (This)->lpVtbl->GetRetransmitParams(This,pParams)
  587. #else
  588. /*** IUnknown methods ***/
  589. static FORCEINLINE HRESULT IWSDUdpMessageParameters_QueryInterface(IWSDUdpMessageParameters* This,REFIID riid,void **ppvObject) {
  590. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  591. }
  592. static FORCEINLINE ULONG IWSDUdpMessageParameters_AddRef(IWSDUdpMessageParameters* This) {
  593. return This->lpVtbl->AddRef(This);
  594. }
  595. static FORCEINLINE ULONG IWSDUdpMessageParameters_Release(IWSDUdpMessageParameters* This) {
  596. return This->lpVtbl->Release(This);
  597. }
  598. /*** IWSDMessageParameters methods ***/
  599. static FORCEINLINE HRESULT IWSDUdpMessageParameters_GetLocalAddress(IWSDUdpMessageParameters* This,IWSDAddress **ppAddress) {
  600. return This->lpVtbl->GetLocalAddress(This,ppAddress);
  601. }
  602. static FORCEINLINE HRESULT IWSDUdpMessageParameters_SetLocalAddress(IWSDUdpMessageParameters* This,IWSDAddress *pAddress) {
  603. return This->lpVtbl->SetLocalAddress(This,pAddress);
  604. }
  605. static FORCEINLINE HRESULT IWSDUdpMessageParameters_GetRemoteAddress(IWSDUdpMessageParameters* This,IWSDAddress **ppAddress) {
  606. return This->lpVtbl->GetRemoteAddress(This,ppAddress);
  607. }
  608. static FORCEINLINE HRESULT IWSDUdpMessageParameters_SetRemoteAddress(IWSDUdpMessageParameters* This,IWSDAddress *pAddress) {
  609. return This->lpVtbl->SetRemoteAddress(This,pAddress);
  610. }
  611. static FORCEINLINE HRESULT IWSDUdpMessageParameters_GetLowerParameters(IWSDUdpMessageParameters* This,IWSDMessageParameters **ppTxParams) {
  612. return This->lpVtbl->GetLowerParameters(This,ppTxParams);
  613. }
  614. /*** IWSDUdpMessageParameters methods ***/
  615. static FORCEINLINE HRESULT IWSDUdpMessageParameters_SetRetransmitParams(IWSDUdpMessageParameters* This,const WSDUdpRetransmitParams *pParams) {
  616. return This->lpVtbl->SetRetransmitParams(This,pParams);
  617. }
  618. static FORCEINLINE HRESULT IWSDUdpMessageParameters_GetRetransmitParams(IWSDUdpMessageParameters* This,WSDUdpRetransmitParams *pParams) {
  619. return This->lpVtbl->GetRetransmitParams(This,pParams);
  620. }
  621. #endif
  622. #endif
  623. #endif
  624. #endif /* __IWSDUdpMessageParameters_INTERFACE_DEFINED__ */
  625. HRESULT WINAPI
  626. WSDCreateUdpAddress(
  627. IWSDUdpAddress** ppAddress);
  628. #if 1
  629. #ifndef __CSADDR_DEFINED__
  630. struct SOCKADDR_STORAGE;
  631. #endif
  632. #else
  633. typedef void SOCKADDR_STORAGE;
  634. #endif
  635. typedef enum _WSDUdpMessageType {
  636. ONE_WAY = 0,
  637. TWO_WAY = 1
  638. } WSDUdpMessageType;
  639. /*****************************************************************************
  640. * IWSDUdpAddress interface
  641. */
  642. #ifndef __IWSDUdpAddress_INTERFACE_DEFINED__
  643. #define __IWSDUdpAddress_INTERFACE_DEFINED__
  644. DEFINE_GUID(IID_IWSDUdpAddress, 0x74d6124a, 0xa441, 0x4f78, 0xa1,0xeb, 0x97,0xa8,0xd1,0x99,0x68,0x93);
  645. #if defined(__cplusplus) && !defined(CINTERFACE)
  646. MIDL_INTERFACE("74d6124a-a441-4f78-a1eb-97a8d1996893")
  647. IWSDUdpAddress : public IWSDTransportAddress
  648. {
  649. virtual HRESULT STDMETHODCALLTYPE SetSockaddr(
  650. const SOCKADDR_STORAGE *pSockAddr) = 0;
  651. virtual HRESULT STDMETHODCALLTYPE GetSockaddr(
  652. SOCKADDR_STORAGE *pSockAddr) = 0;
  653. virtual HRESULT STDMETHODCALLTYPE SetExclusive(
  654. WINBOOL fExclusive) = 0;
  655. virtual HRESULT STDMETHODCALLTYPE GetExclusive(
  656. ) = 0;
  657. virtual HRESULT STDMETHODCALLTYPE SetMessageType(
  658. WSDUdpMessageType messageType) = 0;
  659. virtual HRESULT STDMETHODCALLTYPE GetMessageType(
  660. WSDUdpMessageType *pMessageType) = 0;
  661. virtual HRESULT STDMETHODCALLTYPE SetTTL(
  662. DWORD dwTTL) = 0;
  663. virtual HRESULT STDMETHODCALLTYPE GetTTL(
  664. DWORD *pdwTTL) = 0;
  665. virtual HRESULT STDMETHODCALLTYPE SetAlias(
  666. const GUID *pAlias) = 0;
  667. virtual HRESULT STDMETHODCALLTYPE GetAlias(
  668. GUID *pAlias) = 0;
  669. };
  670. #ifdef __CRT_UUID_DECL
  671. __CRT_UUID_DECL(IWSDUdpAddress, 0x74d6124a, 0xa441, 0x4f78, 0xa1,0xeb, 0x97,0xa8,0xd1,0x99,0x68,0x93)
  672. #endif
  673. #else
  674. typedef struct IWSDUdpAddressVtbl {
  675. BEGIN_INTERFACE
  676. /*** IUnknown methods ***/
  677. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  678. IWSDUdpAddress *This,
  679. REFIID riid,
  680. void **ppvObject);
  681. ULONG (STDMETHODCALLTYPE *AddRef)(
  682. IWSDUdpAddress *This);
  683. ULONG (STDMETHODCALLTYPE *Release)(
  684. IWSDUdpAddress *This);
  685. /*** IWSDAddress methods ***/
  686. HRESULT (STDMETHODCALLTYPE *Serialize)(
  687. IWSDUdpAddress *This,
  688. LPWSTR pszBuffer,
  689. DWORD cchLength,
  690. WINBOOL fSafe);
  691. HRESULT (STDMETHODCALLTYPE *Deserialize)(
  692. IWSDUdpAddress *This,
  693. LPCWSTR pszBuffer);
  694. /*** IWSDTransportAddress methods ***/
  695. HRESULT (STDMETHODCALLTYPE *GetPort)(
  696. IWSDUdpAddress *This,
  697. WORD *pwPort);
  698. HRESULT (STDMETHODCALLTYPE *SetPort)(
  699. IWSDUdpAddress *This,
  700. WORD wPort);
  701. HRESULT (STDMETHODCALLTYPE *GetTransportAddress)(
  702. IWSDUdpAddress *This,
  703. LPCWSTR *ppszAddress);
  704. HRESULT (STDMETHODCALLTYPE *GetTransportAddressEx)(
  705. IWSDUdpAddress *This,
  706. WINBOOL fSafe,
  707. LPCWSTR *ppszAddress);
  708. HRESULT (STDMETHODCALLTYPE *SetTransportAddress)(
  709. IWSDUdpAddress *This,
  710. LPCWSTR pszAddress);
  711. /*** IWSDUdpAddress methods ***/
  712. HRESULT (STDMETHODCALLTYPE *SetSockaddr)(
  713. IWSDUdpAddress *This,
  714. const SOCKADDR_STORAGE *pSockAddr);
  715. HRESULT (STDMETHODCALLTYPE *GetSockaddr)(
  716. IWSDUdpAddress *This,
  717. SOCKADDR_STORAGE *pSockAddr);
  718. HRESULT (STDMETHODCALLTYPE *SetExclusive)(
  719. IWSDUdpAddress *This,
  720. WINBOOL fExclusive);
  721. HRESULT (STDMETHODCALLTYPE *GetExclusive)(
  722. IWSDUdpAddress *This);
  723. HRESULT (STDMETHODCALLTYPE *SetMessageType)(
  724. IWSDUdpAddress *This,
  725. WSDUdpMessageType messageType);
  726. HRESULT (STDMETHODCALLTYPE *GetMessageType)(
  727. IWSDUdpAddress *This,
  728. WSDUdpMessageType *pMessageType);
  729. HRESULT (STDMETHODCALLTYPE *SetTTL)(
  730. IWSDUdpAddress *This,
  731. DWORD dwTTL);
  732. HRESULT (STDMETHODCALLTYPE *GetTTL)(
  733. IWSDUdpAddress *This,
  734. DWORD *pdwTTL);
  735. HRESULT (STDMETHODCALLTYPE *SetAlias)(
  736. IWSDUdpAddress *This,
  737. const GUID *pAlias);
  738. HRESULT (STDMETHODCALLTYPE *GetAlias)(
  739. IWSDUdpAddress *This,
  740. GUID *pAlias);
  741. END_INTERFACE
  742. } IWSDUdpAddressVtbl;
  743. interface IWSDUdpAddress {
  744. CONST_VTBL IWSDUdpAddressVtbl* lpVtbl;
  745. };
  746. #ifdef COBJMACROS
  747. #ifndef WIDL_C_INLINE_WRAPPERS
  748. /*** IUnknown methods ***/
  749. #define IWSDUdpAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  750. #define IWSDUdpAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
  751. #define IWSDUdpAddress_Release(This) (This)->lpVtbl->Release(This)
  752. /*** IWSDAddress methods ***/
  753. #define IWSDUdpAddress_Serialize(This,pszBuffer,cchLength,fSafe) (This)->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe)
  754. #define IWSDUdpAddress_Deserialize(This,pszBuffer) (This)->lpVtbl->Deserialize(This,pszBuffer)
  755. /*** IWSDTransportAddress methods ***/
  756. #define IWSDUdpAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
  757. #define IWSDUdpAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
  758. #define IWSDUdpAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
  759. #define IWSDUdpAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
  760. #define IWSDUdpAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
  761. /*** IWSDUdpAddress methods ***/
  762. #define IWSDUdpAddress_SetSockaddr(This,pSockAddr) (This)->lpVtbl->SetSockaddr(This,pSockAddr)
  763. #define IWSDUdpAddress_GetSockaddr(This,pSockAddr) (This)->lpVtbl->GetSockaddr(This,pSockAddr)
  764. #define IWSDUdpAddress_SetExclusive(This,fExclusive) (This)->lpVtbl->SetExclusive(This,fExclusive)
  765. #define IWSDUdpAddress_GetExclusive(This) (This)->lpVtbl->GetExclusive(This)
  766. #define IWSDUdpAddress_SetMessageType(This,messageType) (This)->lpVtbl->SetMessageType(This,messageType)
  767. #define IWSDUdpAddress_GetMessageType(This,pMessageType) (This)->lpVtbl->GetMessageType(This,pMessageType)
  768. #define IWSDUdpAddress_SetTTL(This,dwTTL) (This)->lpVtbl->SetTTL(This,dwTTL)
  769. #define IWSDUdpAddress_GetTTL(This,pdwTTL) (This)->lpVtbl->GetTTL(This,pdwTTL)
  770. #define IWSDUdpAddress_SetAlias(This,pAlias) (This)->lpVtbl->SetAlias(This,pAlias)
  771. #define IWSDUdpAddress_GetAlias(This,pAlias) (This)->lpVtbl->GetAlias(This,pAlias)
  772. #else
  773. /*** IUnknown methods ***/
  774. static FORCEINLINE HRESULT IWSDUdpAddress_QueryInterface(IWSDUdpAddress* This,REFIID riid,void **ppvObject) {
  775. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  776. }
  777. static FORCEINLINE ULONG IWSDUdpAddress_AddRef(IWSDUdpAddress* This) {
  778. return This->lpVtbl->AddRef(This);
  779. }
  780. static FORCEINLINE ULONG IWSDUdpAddress_Release(IWSDUdpAddress* This) {
  781. return This->lpVtbl->Release(This);
  782. }
  783. /*** IWSDAddress methods ***/
  784. static FORCEINLINE HRESULT IWSDUdpAddress_Serialize(IWSDUdpAddress* This,LPWSTR pszBuffer,DWORD cchLength,WINBOOL fSafe) {
  785. return This->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe);
  786. }
  787. static FORCEINLINE HRESULT IWSDUdpAddress_Deserialize(IWSDUdpAddress* This,LPCWSTR pszBuffer) {
  788. return This->lpVtbl->Deserialize(This,pszBuffer);
  789. }
  790. /*** IWSDTransportAddress methods ***/
  791. static FORCEINLINE HRESULT IWSDUdpAddress_GetPort(IWSDUdpAddress* This,WORD *pwPort) {
  792. return This->lpVtbl->GetPort(This,pwPort);
  793. }
  794. static FORCEINLINE HRESULT IWSDUdpAddress_SetPort(IWSDUdpAddress* This,WORD wPort) {
  795. return This->lpVtbl->SetPort(This,wPort);
  796. }
  797. static FORCEINLINE HRESULT IWSDUdpAddress_GetTransportAddress(IWSDUdpAddress* This,LPCWSTR *ppszAddress) {
  798. return This->lpVtbl->GetTransportAddress(This,ppszAddress);
  799. }
  800. static FORCEINLINE HRESULT IWSDUdpAddress_GetTransportAddressEx(IWSDUdpAddress* This,WINBOOL fSafe,LPCWSTR *ppszAddress) {
  801. return This->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress);
  802. }
  803. static FORCEINLINE HRESULT IWSDUdpAddress_SetTransportAddress(IWSDUdpAddress* This,LPCWSTR pszAddress) {
  804. return This->lpVtbl->SetTransportAddress(This,pszAddress);
  805. }
  806. /*** IWSDUdpAddress methods ***/
  807. static FORCEINLINE HRESULT IWSDUdpAddress_SetSockaddr(IWSDUdpAddress* This,const SOCKADDR_STORAGE *pSockAddr) {
  808. return This->lpVtbl->SetSockaddr(This,pSockAddr);
  809. }
  810. static FORCEINLINE HRESULT IWSDUdpAddress_GetSockaddr(IWSDUdpAddress* This,SOCKADDR_STORAGE *pSockAddr) {
  811. return This->lpVtbl->GetSockaddr(This,pSockAddr);
  812. }
  813. static FORCEINLINE HRESULT IWSDUdpAddress_SetExclusive(IWSDUdpAddress* This,WINBOOL fExclusive) {
  814. return This->lpVtbl->SetExclusive(This,fExclusive);
  815. }
  816. static FORCEINLINE HRESULT IWSDUdpAddress_GetExclusive(IWSDUdpAddress* This) {
  817. return This->lpVtbl->GetExclusive(This);
  818. }
  819. static FORCEINLINE HRESULT IWSDUdpAddress_SetMessageType(IWSDUdpAddress* This,WSDUdpMessageType messageType) {
  820. return This->lpVtbl->SetMessageType(This,messageType);
  821. }
  822. static FORCEINLINE HRESULT IWSDUdpAddress_GetMessageType(IWSDUdpAddress* This,WSDUdpMessageType *pMessageType) {
  823. return This->lpVtbl->GetMessageType(This,pMessageType);
  824. }
  825. static FORCEINLINE HRESULT IWSDUdpAddress_SetTTL(IWSDUdpAddress* This,DWORD dwTTL) {
  826. return This->lpVtbl->SetTTL(This,dwTTL);
  827. }
  828. static FORCEINLINE HRESULT IWSDUdpAddress_GetTTL(IWSDUdpAddress* This,DWORD *pdwTTL) {
  829. return This->lpVtbl->GetTTL(This,pdwTTL);
  830. }
  831. static FORCEINLINE HRESULT IWSDUdpAddress_SetAlias(IWSDUdpAddress* This,const GUID *pAlias) {
  832. return This->lpVtbl->SetAlias(This,pAlias);
  833. }
  834. static FORCEINLINE HRESULT IWSDUdpAddress_GetAlias(IWSDUdpAddress* This,GUID *pAlias) {
  835. return This->lpVtbl->GetAlias(This,pAlias);
  836. }
  837. #endif
  838. #endif
  839. #endif
  840. #endif /* __IWSDUdpAddress_INTERFACE_DEFINED__ */
  841. /*****************************************************************************
  842. * IWSDHttpMessageParameters interface
  843. */
  844. #ifndef __IWSDHttpMessageParameters_INTERFACE_DEFINED__
  845. #define __IWSDHttpMessageParameters_INTERFACE_DEFINED__
  846. DEFINE_GUID(IID_IWSDHttpMessageParameters, 0x540bd122, 0x5c83, 0x4dec, 0xb3,0x96, 0xea,0x62,0xa2,0x69,0x7f,0xdf);
  847. #if defined(__cplusplus) && !defined(CINTERFACE)
  848. MIDL_INTERFACE("540bd122-5c83-4dec-b396-ea62a2697fdf")
  849. IWSDHttpMessageParameters : public IWSDMessageParameters
  850. {
  851. virtual HRESULT STDMETHODCALLTYPE SetInboundHttpHeaders(
  852. LPCWSTR pszHeaders) = 0;
  853. virtual HRESULT STDMETHODCALLTYPE GetInboundHttpHeaders(
  854. LPCWSTR *ppszHeaders) = 0;
  855. virtual HRESULT STDMETHODCALLTYPE SetOutboundHttpHeaders(
  856. LPCWSTR pszHeaders) = 0;
  857. virtual HRESULT STDMETHODCALLTYPE GetOutboundHttpHeaders(
  858. LPCWSTR *ppszHeaders) = 0;
  859. virtual HRESULT STDMETHODCALLTYPE SetID(
  860. LPCWSTR pszId) = 0;
  861. virtual HRESULT STDMETHODCALLTYPE GetID(
  862. LPCWSTR *ppszId) = 0;
  863. virtual HRESULT STDMETHODCALLTYPE SetContext(
  864. IUnknown *pContext) = 0;
  865. virtual HRESULT STDMETHODCALLTYPE GetContext(
  866. IUnknown **ppContext) = 0;
  867. virtual HRESULT STDMETHODCALLTYPE Clear(
  868. ) = 0;
  869. };
  870. #ifdef __CRT_UUID_DECL
  871. __CRT_UUID_DECL(IWSDHttpMessageParameters, 0x540bd122, 0x5c83, 0x4dec, 0xb3,0x96, 0xea,0x62,0xa2,0x69,0x7f,0xdf)
  872. #endif
  873. #else
  874. typedef struct IWSDHttpMessageParametersVtbl {
  875. BEGIN_INTERFACE
  876. /*** IUnknown methods ***/
  877. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  878. IWSDHttpMessageParameters *This,
  879. REFIID riid,
  880. void **ppvObject);
  881. ULONG (STDMETHODCALLTYPE *AddRef)(
  882. IWSDHttpMessageParameters *This);
  883. ULONG (STDMETHODCALLTYPE *Release)(
  884. IWSDHttpMessageParameters *This);
  885. /*** IWSDMessageParameters methods ***/
  886. HRESULT (STDMETHODCALLTYPE *GetLocalAddress)(
  887. IWSDHttpMessageParameters *This,
  888. IWSDAddress **ppAddress);
  889. HRESULT (STDMETHODCALLTYPE *SetLocalAddress)(
  890. IWSDHttpMessageParameters *This,
  891. IWSDAddress *pAddress);
  892. HRESULT (STDMETHODCALLTYPE *GetRemoteAddress)(
  893. IWSDHttpMessageParameters *This,
  894. IWSDAddress **ppAddress);
  895. HRESULT (STDMETHODCALLTYPE *SetRemoteAddress)(
  896. IWSDHttpMessageParameters *This,
  897. IWSDAddress *pAddress);
  898. HRESULT (STDMETHODCALLTYPE *GetLowerParameters)(
  899. IWSDHttpMessageParameters *This,
  900. IWSDMessageParameters **ppTxParams);
  901. /*** IWSDHttpMessageParameters methods ***/
  902. HRESULT (STDMETHODCALLTYPE *SetInboundHttpHeaders)(
  903. IWSDHttpMessageParameters *This,
  904. LPCWSTR pszHeaders);
  905. HRESULT (STDMETHODCALLTYPE *GetInboundHttpHeaders)(
  906. IWSDHttpMessageParameters *This,
  907. LPCWSTR *ppszHeaders);
  908. HRESULT (STDMETHODCALLTYPE *SetOutboundHttpHeaders)(
  909. IWSDHttpMessageParameters *This,
  910. LPCWSTR pszHeaders);
  911. HRESULT (STDMETHODCALLTYPE *GetOutboundHttpHeaders)(
  912. IWSDHttpMessageParameters *This,
  913. LPCWSTR *ppszHeaders);
  914. HRESULT (STDMETHODCALLTYPE *SetID)(
  915. IWSDHttpMessageParameters *This,
  916. LPCWSTR pszId);
  917. HRESULT (STDMETHODCALLTYPE *GetID)(
  918. IWSDHttpMessageParameters *This,
  919. LPCWSTR *ppszId);
  920. HRESULT (STDMETHODCALLTYPE *SetContext)(
  921. IWSDHttpMessageParameters *This,
  922. IUnknown *pContext);
  923. HRESULT (STDMETHODCALLTYPE *GetContext)(
  924. IWSDHttpMessageParameters *This,
  925. IUnknown **ppContext);
  926. HRESULT (STDMETHODCALLTYPE *Clear)(
  927. IWSDHttpMessageParameters *This);
  928. END_INTERFACE
  929. } IWSDHttpMessageParametersVtbl;
  930. interface IWSDHttpMessageParameters {
  931. CONST_VTBL IWSDHttpMessageParametersVtbl* lpVtbl;
  932. };
  933. #ifdef COBJMACROS
  934. #ifndef WIDL_C_INLINE_WRAPPERS
  935. /*** IUnknown methods ***/
  936. #define IWSDHttpMessageParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  937. #define IWSDHttpMessageParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
  938. #define IWSDHttpMessageParameters_Release(This) (This)->lpVtbl->Release(This)
  939. /*** IWSDMessageParameters methods ***/
  940. #define IWSDHttpMessageParameters_GetLocalAddress(This,ppAddress) (This)->lpVtbl->GetLocalAddress(This,ppAddress)
  941. #define IWSDHttpMessageParameters_SetLocalAddress(This,pAddress) (This)->lpVtbl->SetLocalAddress(This,pAddress)
  942. #define IWSDHttpMessageParameters_GetRemoteAddress(This,ppAddress) (This)->lpVtbl->GetRemoteAddress(This,ppAddress)
  943. #define IWSDHttpMessageParameters_SetRemoteAddress(This,pAddress) (This)->lpVtbl->SetRemoteAddress(This,pAddress)
  944. #define IWSDHttpMessageParameters_GetLowerParameters(This,ppTxParams) (This)->lpVtbl->GetLowerParameters(This,ppTxParams)
  945. /*** IWSDHttpMessageParameters methods ***/
  946. #define IWSDHttpMessageParameters_SetInboundHttpHeaders(This,pszHeaders) (This)->lpVtbl->SetInboundHttpHeaders(This,pszHeaders)
  947. #define IWSDHttpMessageParameters_GetInboundHttpHeaders(This,ppszHeaders) (This)->lpVtbl->GetInboundHttpHeaders(This,ppszHeaders)
  948. #define IWSDHttpMessageParameters_SetOutboundHttpHeaders(This,pszHeaders) (This)->lpVtbl->SetOutboundHttpHeaders(This,pszHeaders)
  949. #define IWSDHttpMessageParameters_GetOutboundHttpHeaders(This,ppszHeaders) (This)->lpVtbl->GetOutboundHttpHeaders(This,ppszHeaders)
  950. #define IWSDHttpMessageParameters_SetID(This,pszId) (This)->lpVtbl->SetID(This,pszId)
  951. #define IWSDHttpMessageParameters_GetID(This,ppszId) (This)->lpVtbl->GetID(This,ppszId)
  952. #define IWSDHttpMessageParameters_SetContext(This,pContext) (This)->lpVtbl->SetContext(This,pContext)
  953. #define IWSDHttpMessageParameters_GetContext(This,ppContext) (This)->lpVtbl->GetContext(This,ppContext)
  954. #define IWSDHttpMessageParameters_Clear(This) (This)->lpVtbl->Clear(This)
  955. #else
  956. /*** IUnknown methods ***/
  957. static FORCEINLINE HRESULT IWSDHttpMessageParameters_QueryInterface(IWSDHttpMessageParameters* This,REFIID riid,void **ppvObject) {
  958. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  959. }
  960. static FORCEINLINE ULONG IWSDHttpMessageParameters_AddRef(IWSDHttpMessageParameters* This) {
  961. return This->lpVtbl->AddRef(This);
  962. }
  963. static FORCEINLINE ULONG IWSDHttpMessageParameters_Release(IWSDHttpMessageParameters* This) {
  964. return This->lpVtbl->Release(This);
  965. }
  966. /*** IWSDMessageParameters methods ***/
  967. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetLocalAddress(IWSDHttpMessageParameters* This,IWSDAddress **ppAddress) {
  968. return This->lpVtbl->GetLocalAddress(This,ppAddress);
  969. }
  970. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetLocalAddress(IWSDHttpMessageParameters* This,IWSDAddress *pAddress) {
  971. return This->lpVtbl->SetLocalAddress(This,pAddress);
  972. }
  973. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetRemoteAddress(IWSDHttpMessageParameters* This,IWSDAddress **ppAddress) {
  974. return This->lpVtbl->GetRemoteAddress(This,ppAddress);
  975. }
  976. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetRemoteAddress(IWSDHttpMessageParameters* This,IWSDAddress *pAddress) {
  977. return This->lpVtbl->SetRemoteAddress(This,pAddress);
  978. }
  979. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetLowerParameters(IWSDHttpMessageParameters* This,IWSDMessageParameters **ppTxParams) {
  980. return This->lpVtbl->GetLowerParameters(This,ppTxParams);
  981. }
  982. /*** IWSDHttpMessageParameters methods ***/
  983. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetInboundHttpHeaders(IWSDHttpMessageParameters* This,LPCWSTR pszHeaders) {
  984. return This->lpVtbl->SetInboundHttpHeaders(This,pszHeaders);
  985. }
  986. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetInboundHttpHeaders(IWSDHttpMessageParameters* This,LPCWSTR *ppszHeaders) {
  987. return This->lpVtbl->GetInboundHttpHeaders(This,ppszHeaders);
  988. }
  989. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetOutboundHttpHeaders(IWSDHttpMessageParameters* This,LPCWSTR pszHeaders) {
  990. return This->lpVtbl->SetOutboundHttpHeaders(This,pszHeaders);
  991. }
  992. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetOutboundHttpHeaders(IWSDHttpMessageParameters* This,LPCWSTR *ppszHeaders) {
  993. return This->lpVtbl->GetOutboundHttpHeaders(This,ppszHeaders);
  994. }
  995. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetID(IWSDHttpMessageParameters* This,LPCWSTR pszId) {
  996. return This->lpVtbl->SetID(This,pszId);
  997. }
  998. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetID(IWSDHttpMessageParameters* This,LPCWSTR *ppszId) {
  999. return This->lpVtbl->GetID(This,ppszId);
  1000. }
  1001. static FORCEINLINE HRESULT IWSDHttpMessageParameters_SetContext(IWSDHttpMessageParameters* This,IUnknown *pContext) {
  1002. return This->lpVtbl->SetContext(This,pContext);
  1003. }
  1004. static FORCEINLINE HRESULT IWSDHttpMessageParameters_GetContext(IWSDHttpMessageParameters* This,IUnknown **ppContext) {
  1005. return This->lpVtbl->GetContext(This,ppContext);
  1006. }
  1007. static FORCEINLINE HRESULT IWSDHttpMessageParameters_Clear(IWSDHttpMessageParameters* This) {
  1008. return This->lpVtbl->Clear(This);
  1009. }
  1010. #endif
  1011. #endif
  1012. #endif
  1013. #endif /* __IWSDHttpMessageParameters_INTERFACE_DEFINED__ */
  1014. /*****************************************************************************
  1015. * IWSDHttpAddress interface
  1016. */
  1017. #ifndef __IWSDHttpAddress_INTERFACE_DEFINED__
  1018. #define __IWSDHttpAddress_INTERFACE_DEFINED__
  1019. DEFINE_GUID(IID_IWSDHttpAddress, 0xd09ac7bd, 0x2a3e, 0x4b85, 0x86,0x05, 0x27,0x37,0xff,0x3e,0x4e,0xa0);
  1020. #if defined(__cplusplus) && !defined(CINTERFACE)
  1021. MIDL_INTERFACE("d09ac7bd-2a3e-4b85-8605-2737ff3e4ea0")
  1022. IWSDHttpAddress : public IWSDTransportAddress
  1023. {
  1024. virtual HRESULT STDMETHODCALLTYPE GetSecure(
  1025. ) = 0;
  1026. virtual HRESULT STDMETHODCALLTYPE SetSecure(
  1027. WINBOOL fSecure) = 0;
  1028. virtual HRESULT STDMETHODCALLTYPE GetPath(
  1029. LPCWSTR *ppszPath) = 0;
  1030. virtual HRESULT STDMETHODCALLTYPE SetPath(
  1031. LPCWSTR pszPath) = 0;
  1032. };
  1033. #ifdef __CRT_UUID_DECL
  1034. __CRT_UUID_DECL(IWSDHttpAddress, 0xd09ac7bd, 0x2a3e, 0x4b85, 0x86,0x05, 0x27,0x37,0xff,0x3e,0x4e,0xa0)
  1035. #endif
  1036. #else
  1037. typedef struct IWSDHttpAddressVtbl {
  1038. BEGIN_INTERFACE
  1039. /*** IUnknown methods ***/
  1040. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  1041. IWSDHttpAddress *This,
  1042. REFIID riid,
  1043. void **ppvObject);
  1044. ULONG (STDMETHODCALLTYPE *AddRef)(
  1045. IWSDHttpAddress *This);
  1046. ULONG (STDMETHODCALLTYPE *Release)(
  1047. IWSDHttpAddress *This);
  1048. /*** IWSDAddress methods ***/
  1049. HRESULT (STDMETHODCALLTYPE *Serialize)(
  1050. IWSDHttpAddress *This,
  1051. LPWSTR pszBuffer,
  1052. DWORD cchLength,
  1053. WINBOOL fSafe);
  1054. HRESULT (STDMETHODCALLTYPE *Deserialize)(
  1055. IWSDHttpAddress *This,
  1056. LPCWSTR pszBuffer);
  1057. /*** IWSDTransportAddress methods ***/
  1058. HRESULT (STDMETHODCALLTYPE *GetPort)(
  1059. IWSDHttpAddress *This,
  1060. WORD *pwPort);
  1061. HRESULT (STDMETHODCALLTYPE *SetPort)(
  1062. IWSDHttpAddress *This,
  1063. WORD wPort);
  1064. HRESULT (STDMETHODCALLTYPE *GetTransportAddress)(
  1065. IWSDHttpAddress *This,
  1066. LPCWSTR *ppszAddress);
  1067. HRESULT (STDMETHODCALLTYPE *GetTransportAddressEx)(
  1068. IWSDHttpAddress *This,
  1069. WINBOOL fSafe,
  1070. LPCWSTR *ppszAddress);
  1071. HRESULT (STDMETHODCALLTYPE *SetTransportAddress)(
  1072. IWSDHttpAddress *This,
  1073. LPCWSTR pszAddress);
  1074. /*** IWSDHttpAddress methods ***/
  1075. HRESULT (STDMETHODCALLTYPE *GetSecure)(
  1076. IWSDHttpAddress *This);
  1077. HRESULT (STDMETHODCALLTYPE *SetSecure)(
  1078. IWSDHttpAddress *This,
  1079. WINBOOL fSecure);
  1080. HRESULT (STDMETHODCALLTYPE *GetPath)(
  1081. IWSDHttpAddress *This,
  1082. LPCWSTR *ppszPath);
  1083. HRESULT (STDMETHODCALLTYPE *SetPath)(
  1084. IWSDHttpAddress *This,
  1085. LPCWSTR pszPath);
  1086. END_INTERFACE
  1087. } IWSDHttpAddressVtbl;
  1088. interface IWSDHttpAddress {
  1089. CONST_VTBL IWSDHttpAddressVtbl* lpVtbl;
  1090. };
  1091. #ifdef COBJMACROS
  1092. #ifndef WIDL_C_INLINE_WRAPPERS
  1093. /*** IUnknown methods ***/
  1094. #define IWSDHttpAddress_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  1095. #define IWSDHttpAddress_AddRef(This) (This)->lpVtbl->AddRef(This)
  1096. #define IWSDHttpAddress_Release(This) (This)->lpVtbl->Release(This)
  1097. /*** IWSDAddress methods ***/
  1098. #define IWSDHttpAddress_Serialize(This,pszBuffer,cchLength,fSafe) (This)->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe)
  1099. #define IWSDHttpAddress_Deserialize(This,pszBuffer) (This)->lpVtbl->Deserialize(This,pszBuffer)
  1100. /*** IWSDTransportAddress methods ***/
  1101. #define IWSDHttpAddress_GetPort(This,pwPort) (This)->lpVtbl->GetPort(This,pwPort)
  1102. #define IWSDHttpAddress_SetPort(This,wPort) (This)->lpVtbl->SetPort(This,wPort)
  1103. #define IWSDHttpAddress_GetTransportAddress(This,ppszAddress) (This)->lpVtbl->GetTransportAddress(This,ppszAddress)
  1104. #define IWSDHttpAddress_GetTransportAddressEx(This,fSafe,ppszAddress) (This)->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress)
  1105. #define IWSDHttpAddress_SetTransportAddress(This,pszAddress) (This)->lpVtbl->SetTransportAddress(This,pszAddress)
  1106. /*** IWSDHttpAddress methods ***/
  1107. #define IWSDHttpAddress_GetSecure(This) (This)->lpVtbl->GetSecure(This)
  1108. #define IWSDHttpAddress_SetSecure(This,fSecure) (This)->lpVtbl->SetSecure(This,fSecure)
  1109. #define IWSDHttpAddress_GetPath(This,ppszPath) (This)->lpVtbl->GetPath(This,ppszPath)
  1110. #define IWSDHttpAddress_SetPath(This,pszPath) (This)->lpVtbl->SetPath(This,pszPath)
  1111. #else
  1112. /*** IUnknown methods ***/
  1113. static FORCEINLINE HRESULT IWSDHttpAddress_QueryInterface(IWSDHttpAddress* This,REFIID riid,void **ppvObject) {
  1114. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1115. }
  1116. static FORCEINLINE ULONG IWSDHttpAddress_AddRef(IWSDHttpAddress* This) {
  1117. return This->lpVtbl->AddRef(This);
  1118. }
  1119. static FORCEINLINE ULONG IWSDHttpAddress_Release(IWSDHttpAddress* This) {
  1120. return This->lpVtbl->Release(This);
  1121. }
  1122. /*** IWSDAddress methods ***/
  1123. static FORCEINLINE HRESULT IWSDHttpAddress_Serialize(IWSDHttpAddress* This,LPWSTR pszBuffer,DWORD cchLength,WINBOOL fSafe) {
  1124. return This->lpVtbl->Serialize(This,pszBuffer,cchLength,fSafe);
  1125. }
  1126. static FORCEINLINE HRESULT IWSDHttpAddress_Deserialize(IWSDHttpAddress* This,LPCWSTR pszBuffer) {
  1127. return This->lpVtbl->Deserialize(This,pszBuffer);
  1128. }
  1129. /*** IWSDTransportAddress methods ***/
  1130. static FORCEINLINE HRESULT IWSDHttpAddress_GetPort(IWSDHttpAddress* This,WORD *pwPort) {
  1131. return This->lpVtbl->GetPort(This,pwPort);
  1132. }
  1133. static FORCEINLINE HRESULT IWSDHttpAddress_SetPort(IWSDHttpAddress* This,WORD wPort) {
  1134. return This->lpVtbl->SetPort(This,wPort);
  1135. }
  1136. static FORCEINLINE HRESULT IWSDHttpAddress_GetTransportAddress(IWSDHttpAddress* This,LPCWSTR *ppszAddress) {
  1137. return This->lpVtbl->GetTransportAddress(This,ppszAddress);
  1138. }
  1139. static FORCEINLINE HRESULT IWSDHttpAddress_GetTransportAddressEx(IWSDHttpAddress* This,WINBOOL fSafe,LPCWSTR *ppszAddress) {
  1140. return This->lpVtbl->GetTransportAddressEx(This,fSafe,ppszAddress);
  1141. }
  1142. static FORCEINLINE HRESULT IWSDHttpAddress_SetTransportAddress(IWSDHttpAddress* This,LPCWSTR pszAddress) {
  1143. return This->lpVtbl->SetTransportAddress(This,pszAddress);
  1144. }
  1145. /*** IWSDHttpAddress methods ***/
  1146. static FORCEINLINE HRESULT IWSDHttpAddress_GetSecure(IWSDHttpAddress* This) {
  1147. return This->lpVtbl->GetSecure(This);
  1148. }
  1149. static FORCEINLINE HRESULT IWSDHttpAddress_SetSecure(IWSDHttpAddress* This,WINBOOL fSecure) {
  1150. return This->lpVtbl->SetSecure(This,fSecure);
  1151. }
  1152. static FORCEINLINE HRESULT IWSDHttpAddress_GetPath(IWSDHttpAddress* This,LPCWSTR *ppszPath) {
  1153. return This->lpVtbl->GetPath(This,ppszPath);
  1154. }
  1155. static FORCEINLINE HRESULT IWSDHttpAddress_SetPath(IWSDHttpAddress* This,LPCWSTR pszPath) {
  1156. return This->lpVtbl->SetPath(This,pszPath);
  1157. }
  1158. #endif
  1159. #endif
  1160. #endif
  1161. #endif /* __IWSDHttpAddress_INTERFACE_DEFINED__ */
  1162. #if WINVER >= 0x601
  1163. /*****************************************************************************
  1164. * IWSDSSLClientCertificate interface
  1165. */
  1166. #ifndef __IWSDSSLClientCertificate_INTERFACE_DEFINED__
  1167. #define __IWSDSSLClientCertificate_INTERFACE_DEFINED__
  1168. DEFINE_GUID(IID_IWSDSSLClientCertificate, 0xde105e87, 0xa0da, 0x418e, 0x98,0xad, 0x27,0xb9,0xee,0xd8,0x7b,0xdc);
  1169. #if defined(__cplusplus) && !defined(CINTERFACE)
  1170. MIDL_INTERFACE("de105e87-a0da-418e-98ad-27b9eed87bdc")
  1171. IWSDSSLClientCertificate : public IUnknown
  1172. {
  1173. virtual HRESULT STDMETHODCALLTYPE GetClientCertificate(
  1174. PCCERT_CONTEXT *ppCertContext) = 0;
  1175. virtual HRESULT STDMETHODCALLTYPE GetMappedAccessToken(
  1176. HANDLE *phToken) = 0;
  1177. };
  1178. #ifdef __CRT_UUID_DECL
  1179. __CRT_UUID_DECL(IWSDSSLClientCertificate, 0xde105e87, 0xa0da, 0x418e, 0x98,0xad, 0x27,0xb9,0xee,0xd8,0x7b,0xdc)
  1180. #endif
  1181. #else
  1182. typedef struct IWSDSSLClientCertificateVtbl {
  1183. BEGIN_INTERFACE
  1184. /*** IUnknown methods ***/
  1185. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  1186. IWSDSSLClientCertificate *This,
  1187. REFIID riid,
  1188. void **ppvObject);
  1189. ULONG (STDMETHODCALLTYPE *AddRef)(
  1190. IWSDSSLClientCertificate *This);
  1191. ULONG (STDMETHODCALLTYPE *Release)(
  1192. IWSDSSLClientCertificate *This);
  1193. /*** IWSDSSLClientCertificate methods ***/
  1194. HRESULT (STDMETHODCALLTYPE *GetClientCertificate)(
  1195. IWSDSSLClientCertificate *This,
  1196. PCCERT_CONTEXT *ppCertContext);
  1197. HRESULT (STDMETHODCALLTYPE *GetMappedAccessToken)(
  1198. IWSDSSLClientCertificate *This,
  1199. HANDLE *phToken);
  1200. END_INTERFACE
  1201. } IWSDSSLClientCertificateVtbl;
  1202. interface IWSDSSLClientCertificate {
  1203. CONST_VTBL IWSDSSLClientCertificateVtbl* lpVtbl;
  1204. };
  1205. #ifdef COBJMACROS
  1206. #ifndef WIDL_C_INLINE_WRAPPERS
  1207. /*** IUnknown methods ***/
  1208. #define IWSDSSLClientCertificate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  1209. #define IWSDSSLClientCertificate_AddRef(This) (This)->lpVtbl->AddRef(This)
  1210. #define IWSDSSLClientCertificate_Release(This) (This)->lpVtbl->Release(This)
  1211. /*** IWSDSSLClientCertificate methods ***/
  1212. #define IWSDSSLClientCertificate_GetClientCertificate(This,ppCertContext) (This)->lpVtbl->GetClientCertificate(This,ppCertContext)
  1213. #define IWSDSSLClientCertificate_GetMappedAccessToken(This,phToken) (This)->lpVtbl->GetMappedAccessToken(This,phToken)
  1214. #else
  1215. /*** IUnknown methods ***/
  1216. static FORCEINLINE HRESULT IWSDSSLClientCertificate_QueryInterface(IWSDSSLClientCertificate* This,REFIID riid,void **ppvObject) {
  1217. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1218. }
  1219. static FORCEINLINE ULONG IWSDSSLClientCertificate_AddRef(IWSDSSLClientCertificate* This) {
  1220. return This->lpVtbl->AddRef(This);
  1221. }
  1222. static FORCEINLINE ULONG IWSDSSLClientCertificate_Release(IWSDSSLClientCertificate* This) {
  1223. return This->lpVtbl->Release(This);
  1224. }
  1225. /*** IWSDSSLClientCertificate methods ***/
  1226. static FORCEINLINE HRESULT IWSDSSLClientCertificate_GetClientCertificate(IWSDSSLClientCertificate* This,PCCERT_CONTEXT *ppCertContext) {
  1227. return This->lpVtbl->GetClientCertificate(This,ppCertContext);
  1228. }
  1229. static FORCEINLINE HRESULT IWSDSSLClientCertificate_GetMappedAccessToken(IWSDSSLClientCertificate* This,HANDLE *phToken) {
  1230. return This->lpVtbl->GetMappedAccessToken(This,phToken);
  1231. }
  1232. #endif
  1233. #endif
  1234. #endif
  1235. #endif /* __IWSDSSLClientCertificate_INTERFACE_DEFINED__ */
  1236. /*****************************************************************************
  1237. * IWSDHttpAuthParameters interface
  1238. */
  1239. #ifndef __IWSDHttpAuthParameters_INTERFACE_DEFINED__
  1240. #define __IWSDHttpAuthParameters_INTERFACE_DEFINED__
  1241. DEFINE_GUID(IID_IWSDHttpAuthParameters, 0x0b476df0, 0x8dac, 0x480d, 0xb0,0x5c, 0x99,0x78,0x1a,0x58,0x84,0xaa);
  1242. #if defined(__cplusplus) && !defined(CINTERFACE)
  1243. MIDL_INTERFACE("0b476df0-8dac-480d-b05c-99781a5884aa")
  1244. IWSDHttpAuthParameters : public IUnknown
  1245. {
  1246. virtual HRESULT STDMETHODCALLTYPE GetClientAccessToken(
  1247. HANDLE *phToken) = 0;
  1248. virtual HRESULT STDMETHODCALLTYPE GetAuthType(
  1249. PWSD_SECURITY_HTTP_AUTH_SCHEMES pAuthType) = 0;
  1250. };
  1251. #ifdef __CRT_UUID_DECL
  1252. __CRT_UUID_DECL(IWSDHttpAuthParameters, 0x0b476df0, 0x8dac, 0x480d, 0xb0,0x5c, 0x99,0x78,0x1a,0x58,0x84,0xaa)
  1253. #endif
  1254. #else
  1255. typedef struct IWSDHttpAuthParametersVtbl {
  1256. BEGIN_INTERFACE
  1257. /*** IUnknown methods ***/
  1258. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  1259. IWSDHttpAuthParameters *This,
  1260. REFIID riid,
  1261. void **ppvObject);
  1262. ULONG (STDMETHODCALLTYPE *AddRef)(
  1263. IWSDHttpAuthParameters *This);
  1264. ULONG (STDMETHODCALLTYPE *Release)(
  1265. IWSDHttpAuthParameters *This);
  1266. /*** IWSDHttpAuthParameters methods ***/
  1267. HRESULT (STDMETHODCALLTYPE *GetClientAccessToken)(
  1268. IWSDHttpAuthParameters *This,
  1269. HANDLE *phToken);
  1270. HRESULT (STDMETHODCALLTYPE *GetAuthType)(
  1271. IWSDHttpAuthParameters *This,
  1272. PWSD_SECURITY_HTTP_AUTH_SCHEMES pAuthType);
  1273. END_INTERFACE
  1274. } IWSDHttpAuthParametersVtbl;
  1275. interface IWSDHttpAuthParameters {
  1276. CONST_VTBL IWSDHttpAuthParametersVtbl* lpVtbl;
  1277. };
  1278. #ifdef COBJMACROS
  1279. #ifndef WIDL_C_INLINE_WRAPPERS
  1280. /*** IUnknown methods ***/
  1281. #define IWSDHttpAuthParameters_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  1282. #define IWSDHttpAuthParameters_AddRef(This) (This)->lpVtbl->AddRef(This)
  1283. #define IWSDHttpAuthParameters_Release(This) (This)->lpVtbl->Release(This)
  1284. /*** IWSDHttpAuthParameters methods ***/
  1285. #define IWSDHttpAuthParameters_GetClientAccessToken(This,phToken) (This)->lpVtbl->GetClientAccessToken(This,phToken)
  1286. #define IWSDHttpAuthParameters_GetAuthType(This,pAuthType) (This)->lpVtbl->GetAuthType(This,pAuthType)
  1287. #else
  1288. /*** IUnknown methods ***/
  1289. static FORCEINLINE HRESULT IWSDHttpAuthParameters_QueryInterface(IWSDHttpAuthParameters* This,REFIID riid,void **ppvObject) {
  1290. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1291. }
  1292. static FORCEINLINE ULONG IWSDHttpAuthParameters_AddRef(IWSDHttpAuthParameters* This) {
  1293. return This->lpVtbl->AddRef(This);
  1294. }
  1295. static FORCEINLINE ULONG IWSDHttpAuthParameters_Release(IWSDHttpAuthParameters* This) {
  1296. return This->lpVtbl->Release(This);
  1297. }
  1298. /*** IWSDHttpAuthParameters methods ***/
  1299. static FORCEINLINE HRESULT IWSDHttpAuthParameters_GetClientAccessToken(IWSDHttpAuthParameters* This,HANDLE *phToken) {
  1300. return This->lpVtbl->GetClientAccessToken(This,phToken);
  1301. }
  1302. static FORCEINLINE HRESULT IWSDHttpAuthParameters_GetAuthType(IWSDHttpAuthParameters* This,PWSD_SECURITY_HTTP_AUTH_SCHEMES pAuthType) {
  1303. return This->lpVtbl->GetAuthType(This,pAuthType);
  1304. }
  1305. #endif
  1306. #endif
  1307. #endif
  1308. #endif /* __IWSDHttpAuthParameters_INTERFACE_DEFINED__ */
  1309. /*****************************************************************************
  1310. * IWSDSignatureProperty interface
  1311. */
  1312. #ifndef __IWSDSignatureProperty_INTERFACE_DEFINED__
  1313. #define __IWSDSignatureProperty_INTERFACE_DEFINED__
  1314. DEFINE_GUID(IID_IWSDSignatureProperty, 0x03ce20aa, 0x71c4, 0x45e2, 0xb3,0x2e, 0x37,0x66,0xc6,0x1c,0x79,0x0f);
  1315. #if defined(__cplusplus) && !defined(CINTERFACE)
  1316. MIDL_INTERFACE("03ce20aa-71c4-45e2-b32e-3766c61c790f")
  1317. IWSDSignatureProperty : public IUnknown
  1318. {
  1319. virtual HRESULT STDMETHODCALLTYPE IsMessageSigned(
  1320. WINBOOL *pbSigned) = 0;
  1321. virtual HRESULT STDMETHODCALLTYPE IsMessageSignatureTrusted(
  1322. WINBOOL *pbSignatureTrusted) = 0;
  1323. virtual HRESULT STDMETHODCALLTYPE GetKeyInfo(
  1324. BYTE *pbKeyInfo,
  1325. DWORD *pdwKeyInfoSize) = 0;
  1326. virtual HRESULT STDMETHODCALLTYPE GetSignature(
  1327. BYTE *pbSignature,
  1328. DWORD *pdwSignatureSize) = 0;
  1329. virtual HRESULT STDMETHODCALLTYPE GetSignedInfoHash(
  1330. BYTE *pbSignedInfoHash,
  1331. DWORD *pdwHashSize) = 0;
  1332. };
  1333. #ifdef __CRT_UUID_DECL
  1334. __CRT_UUID_DECL(IWSDSignatureProperty, 0x03ce20aa, 0x71c4, 0x45e2, 0xb3,0x2e, 0x37,0x66,0xc6,0x1c,0x79,0x0f)
  1335. #endif
  1336. #else
  1337. typedef struct IWSDSignaturePropertyVtbl {
  1338. BEGIN_INTERFACE
  1339. /*** IUnknown methods ***/
  1340. HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  1341. IWSDSignatureProperty *This,
  1342. REFIID riid,
  1343. void **ppvObject);
  1344. ULONG (STDMETHODCALLTYPE *AddRef)(
  1345. IWSDSignatureProperty *This);
  1346. ULONG (STDMETHODCALLTYPE *Release)(
  1347. IWSDSignatureProperty *This);
  1348. /*** IWSDSignatureProperty methods ***/
  1349. HRESULT (STDMETHODCALLTYPE *IsMessageSigned)(
  1350. IWSDSignatureProperty *This,
  1351. WINBOOL *pbSigned);
  1352. HRESULT (STDMETHODCALLTYPE *IsMessageSignatureTrusted)(
  1353. IWSDSignatureProperty *This,
  1354. WINBOOL *pbSignatureTrusted);
  1355. HRESULT (STDMETHODCALLTYPE *GetKeyInfo)(
  1356. IWSDSignatureProperty *This,
  1357. BYTE *pbKeyInfo,
  1358. DWORD *pdwKeyInfoSize);
  1359. HRESULT (STDMETHODCALLTYPE *GetSignature)(
  1360. IWSDSignatureProperty *This,
  1361. BYTE *pbSignature,
  1362. DWORD *pdwSignatureSize);
  1363. HRESULT (STDMETHODCALLTYPE *GetSignedInfoHash)(
  1364. IWSDSignatureProperty *This,
  1365. BYTE *pbSignedInfoHash,
  1366. DWORD *pdwHashSize);
  1367. END_INTERFACE
  1368. } IWSDSignaturePropertyVtbl;
  1369. interface IWSDSignatureProperty {
  1370. CONST_VTBL IWSDSignaturePropertyVtbl* lpVtbl;
  1371. };
  1372. #ifdef COBJMACROS
  1373. #ifndef WIDL_C_INLINE_WRAPPERS
  1374. /*** IUnknown methods ***/
  1375. #define IWSDSignatureProperty_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  1376. #define IWSDSignatureProperty_AddRef(This) (This)->lpVtbl->AddRef(This)
  1377. #define IWSDSignatureProperty_Release(This) (This)->lpVtbl->Release(This)
  1378. /*** IWSDSignatureProperty methods ***/
  1379. #define IWSDSignatureProperty_IsMessageSigned(This,pbSigned) (This)->lpVtbl->IsMessageSigned(This,pbSigned)
  1380. #define IWSDSignatureProperty_IsMessageSignatureTrusted(This,pbSignatureTrusted) (This)->lpVtbl->IsMessageSignatureTrusted(This,pbSignatureTrusted)
  1381. #define IWSDSignatureProperty_GetKeyInfo(This,pbKeyInfo,pdwKeyInfoSize) (This)->lpVtbl->GetKeyInfo(This,pbKeyInfo,pdwKeyInfoSize)
  1382. #define IWSDSignatureProperty_GetSignature(This,pbSignature,pdwSignatureSize) (This)->lpVtbl->GetSignature(This,pbSignature,pdwSignatureSize)
  1383. #define IWSDSignatureProperty_GetSignedInfoHash(This,pbSignedInfoHash,pdwHashSize) (This)->lpVtbl->GetSignedInfoHash(This,pbSignedInfoHash,pdwHashSize)
  1384. #else
  1385. /*** IUnknown methods ***/
  1386. static FORCEINLINE HRESULT IWSDSignatureProperty_QueryInterface(IWSDSignatureProperty* This,REFIID riid,void **ppvObject) {
  1387. return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  1388. }
  1389. static FORCEINLINE ULONG IWSDSignatureProperty_AddRef(IWSDSignatureProperty* This) {
  1390. return This->lpVtbl->AddRef(This);
  1391. }
  1392. static FORCEINLINE ULONG IWSDSignatureProperty_Release(IWSDSignatureProperty* This) {
  1393. return This->lpVtbl->Release(This);
  1394. }
  1395. /*** IWSDSignatureProperty methods ***/
  1396. static FORCEINLINE HRESULT IWSDSignatureProperty_IsMessageSigned(IWSDSignatureProperty* This,WINBOOL *pbSigned) {
  1397. return This->lpVtbl->IsMessageSigned(This,pbSigned);
  1398. }
  1399. static FORCEINLINE HRESULT IWSDSignatureProperty_IsMessageSignatureTrusted(IWSDSignatureProperty* This,WINBOOL *pbSignatureTrusted) {
  1400. return This->lpVtbl->IsMessageSignatureTrusted(This,pbSignatureTrusted);
  1401. }
  1402. static FORCEINLINE HRESULT IWSDSignatureProperty_GetKeyInfo(IWSDSignatureProperty* This,BYTE *pbKeyInfo,DWORD *pdwKeyInfoSize) {
  1403. return This->lpVtbl->GetKeyInfo(This,pbKeyInfo,pdwKeyInfoSize);
  1404. }
  1405. static FORCEINLINE HRESULT IWSDSignatureProperty_GetSignature(IWSDSignatureProperty* This,BYTE *pbSignature,DWORD *pdwSignatureSize) {
  1406. return This->lpVtbl->GetSignature(This,pbSignature,pdwSignatureSize);
  1407. }
  1408. static FORCEINLINE HRESULT IWSDSignatureProperty_GetSignedInfoHash(IWSDSignatureProperty* This,BYTE *pbSignedInfoHash,DWORD *pdwHashSize) {
  1409. return This->lpVtbl->GetSignedInfoHash(This,pbSignedInfoHash,pdwHashSize);
  1410. }
  1411. #endif
  1412. #endif
  1413. #endif
  1414. #endif /* __IWSDSignatureProperty_INTERFACE_DEFINED__ */
  1415. #endif
  1416. HRESULT WINAPI WSDCreateHttpAddress(IWSDHttpAddress **ppAdress);
  1417. HRESULT WINAPI WSDCreateHttpMessageParameters(IWSDHttpMessageParameters **ppTxParams);
  1418. #endif
  1419. /* Begin additional prototypes for all interfaces */
  1420. /* End additional prototypes */
  1421. #ifdef __cplusplus
  1422. }
  1423. #endif
  1424. #endif /* __wsdbase_h__ */