master
  1/*** Autogenerated by WIDL 10.4 from include/httprequest.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __httprequest_h__
 17#define __httprequest_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IWinHttpRequest_FWD_DEFINED__
 22#define __IWinHttpRequest_FWD_DEFINED__
 23typedef interface IWinHttpRequest IWinHttpRequest;
 24#ifdef __cplusplus
 25interface IWinHttpRequest;
 26#endif /* __cplusplus */
 27#endif
 28
 29#ifndef __WinHttpRequest_FWD_DEFINED__
 30#define __WinHttpRequest_FWD_DEFINED__
 31#ifdef __cplusplus
 32typedef class WinHttpRequest WinHttpRequest;
 33#else
 34typedef struct WinHttpRequest WinHttpRequest;
 35#endif /* defined __cplusplus */
 36#endif /* defined __WinHttpRequest_FWD_DEFINED__ */
 37
 38/* Headers for imported files */
 39
 40#include <oaidl.h>
 41
 42#ifdef __cplusplus
 43extern "C" {
 44#endif
 45
 46#ifndef __WinHttp_LIBRARY_DEFINED__
 47#define __WinHttp_LIBRARY_DEFINED__
 48
 49DEFINE_GUID(LIBID_WinHttp, 0x662901fc, 0x6951, 0x4854, 0x9e,0xb2, 0xd9,0xa2,0x57,0x0f,0x2b,0x2e);
 50
 51typedef LONG HTTPREQUEST_PROXY_SETTING;
 52#define HTTPREQUEST_PROXYSETTING_DEFAULT (0x0)
 53
 54#define HTTPREQUEST_PROXYSETTING_PRECONFIG (0x0)
 55
 56#define HTTPREQUEST_PROXYSETTING_DIRECT (0x1)
 57
 58#define HTTPREQUEST_PROXYSETTING_PROXY (0x2)
 59
 60typedef LONG HTTPREQUEST_SETCREDENTIALS_FLAGS;
 61#define HTTPREQUEST_SETCREDENTIALS_FOR_SERVER (0x0)
 62
 63#define HTTPREQUEST_SETCREDENTIALS_FOR_PROXY (0x1)
 64
 65typedef enum WinHttpRequestOption {
 66    WinHttpRequestOption_UserAgentString = 0,
 67    WinHttpRequestOption_URL = 1,
 68    WinHttpRequestOption_URLCodePage = 2,
 69    WinHttpRequestOption_EscapePercentInURL = 3,
 70    WinHttpRequestOption_SslErrorIgnoreFlags = 4,
 71    WinHttpRequestOption_SelectCertificate = 5,
 72    WinHttpRequestOption_EnableRedirects = 6,
 73    WinHttpRequestOption_UrlEscapeDisable = 7,
 74    WinHttpRequestOption_UrlEscapeDisableQuery = 8,
 75    WinHttpRequestOption_SecureProtocols = 9,
 76    WinHttpRequestOption_EnableTracing = 10,
 77    WinHttpRequestOption_RevertImpersonationOverSsl = 11,
 78    WinHttpRequestOption_EnableHttpsToHttpRedirects = 12,
 79    WinHttpRequestOption_EnablePassportAuthentication = 13,
 80    WinHttpRequestOption_MaxAutomaticRedirects = 14,
 81    WinHttpRequestOption_MaxResponseHeaderSize = 15,
 82    WinHttpRequestOption_MaxResponseDrainSize = 16,
 83    WinHttpRequestOption_EnableHttp1_1 = 17,
 84    WinHttpRequestOption_EnableCertificateRevocationCheck = 18,
 85    WinHttpRequestOption_RejectUserpwd = 19
 86} WinHttpRequestOption;
 87typedef enum WinHttpRequestAutoLogonPolicy {
 88    AutoLogonPolicy_Always = 0,
 89    AutoLogonPolicy_OnlyIfBypassProxy = 1,
 90    AutoLogonPolicy_Never = 2
 91} WinHttpRequestAutoLogonPolicy;
 92/*****************************************************************************
 93 * IWinHttpRequest interface
 94 */
 95#ifndef __IWinHttpRequest_INTERFACE_DEFINED__
 96#define __IWinHttpRequest_INTERFACE_DEFINED__
 97
 98DEFINE_GUID(IID_IWinHttpRequest, 0x016fe2ec, 0xb2c8, 0x45f8, 0xb2,0x3b, 0x39,0xe5,0x3a,0x75,0x39,0x6b);
 99#if defined(__cplusplus) && !defined(CINTERFACE)
100MIDL_INTERFACE("016fe2ec-b2c8-45f8-b23b-39e53a75396b")
101IWinHttpRequest : public IDispatch
102{
103    virtual HRESULT STDMETHODCALLTYPE SetProxy(
104        HTTPREQUEST_PROXY_SETTING proxy_setting,
105        VARIANT proxy_server,
106        VARIANT bypass_list) = 0;
107
108    virtual HRESULT STDMETHODCALLTYPE SetCredentials(
109        BSTR username,
110        BSTR password,
111        HTTPREQUEST_SETCREDENTIALS_FLAGS flags) = 0;
112
113    virtual HRESULT STDMETHODCALLTYPE Open(
114        BSTR method,
115        BSTR url,
116        VARIANT async) = 0;
117
118    virtual HRESULT STDMETHODCALLTYPE SetRequestHeader(
119        BSTR header,
120        BSTR value) = 0;
121
122    virtual HRESULT STDMETHODCALLTYPE GetResponseHeader(
123        BSTR header,
124        BSTR *value) = 0;
125
126    virtual HRESULT STDMETHODCALLTYPE GetAllResponseHeaders(
127        BSTR *headers) = 0;
128
129    virtual HRESULT STDMETHODCALLTYPE Send(
130        VARIANT body) = 0;
131
132    virtual HRESULT STDMETHODCALLTYPE get_Status(
133        LONG *status) = 0;
134
135    virtual HRESULT STDMETHODCALLTYPE get_StatusText(
136        BSTR *status) = 0;
137
138    virtual HRESULT STDMETHODCALLTYPE get_ResponseText(
139        BSTR *body) = 0;
140
141    virtual HRESULT STDMETHODCALLTYPE get_ResponseBody(
142        VARIANT *body) = 0;
143
144    virtual HRESULT STDMETHODCALLTYPE get_ResponseStream(
145        VARIANT *body) = 0;
146
147    virtual HRESULT STDMETHODCALLTYPE get_Option(
148        WinHttpRequestOption option,
149        VARIANT *value) = 0;
150
151    virtual HRESULT STDMETHODCALLTYPE put_Option(
152        WinHttpRequestOption option,
153        VARIANT value) = 0;
154
155    virtual HRESULT STDMETHODCALLTYPE WaitForResponse(
156        VARIANT timeout,
157        VARIANT_BOOL *succeeded) = 0;
158
159    virtual HRESULT STDMETHODCALLTYPE Abort(
160        ) = 0;
161
162    virtual HRESULT STDMETHODCALLTYPE SetTimeouts(
163        LONG resolve_timeout,
164        LONG connect_timeout,
165        LONG send_timeout,
166        LONG receive_timeout) = 0;
167
168    virtual HRESULT STDMETHODCALLTYPE SetClientCertificate(
169        BSTR certificate) = 0;
170
171    virtual HRESULT STDMETHODCALLTYPE SetAutoLogonPolicy(
172        WinHttpRequestAutoLogonPolicy policy) = 0;
173
174};
175#ifdef __CRT_UUID_DECL
176__CRT_UUID_DECL(IWinHttpRequest, 0x016fe2ec, 0xb2c8, 0x45f8, 0xb2,0x3b, 0x39,0xe5,0x3a,0x75,0x39,0x6b)
177#endif
178#else
179typedef struct IWinHttpRequestVtbl {
180    BEGIN_INTERFACE
181
182    /*** IUnknown methods ***/
183    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
184        IWinHttpRequest *This,
185        REFIID riid,
186        void **ppvObject);
187
188    ULONG (STDMETHODCALLTYPE *AddRef)(
189        IWinHttpRequest *This);
190
191    ULONG (STDMETHODCALLTYPE *Release)(
192        IWinHttpRequest *This);
193
194    /*** IDispatch methods ***/
195    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
196        IWinHttpRequest *This,
197        UINT *pctinfo);
198
199    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
200        IWinHttpRequest *This,
201        UINT iTInfo,
202        LCID lcid,
203        ITypeInfo **ppTInfo);
204
205    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
206        IWinHttpRequest *This,
207        REFIID riid,
208        LPOLESTR *rgszNames,
209        UINT cNames,
210        LCID lcid,
211        DISPID *rgDispId);
212
213    HRESULT (STDMETHODCALLTYPE *Invoke)(
214        IWinHttpRequest *This,
215        DISPID dispIdMember,
216        REFIID riid,
217        LCID lcid,
218        WORD wFlags,
219        DISPPARAMS *pDispParams,
220        VARIANT *pVarResult,
221        EXCEPINFO *pExcepInfo,
222        UINT *puArgErr);
223
224    /*** IWinHttpRequest methods ***/
225    HRESULT (STDMETHODCALLTYPE *SetProxy)(
226        IWinHttpRequest *This,
227        HTTPREQUEST_PROXY_SETTING proxy_setting,
228        VARIANT proxy_server,
229        VARIANT bypass_list);
230
231    HRESULT (STDMETHODCALLTYPE *SetCredentials)(
232        IWinHttpRequest *This,
233        BSTR username,
234        BSTR password,
235        HTTPREQUEST_SETCREDENTIALS_FLAGS flags);
236
237    HRESULT (STDMETHODCALLTYPE *Open)(
238        IWinHttpRequest *This,
239        BSTR method,
240        BSTR url,
241        VARIANT async);
242
243    HRESULT (STDMETHODCALLTYPE *SetRequestHeader)(
244        IWinHttpRequest *This,
245        BSTR header,
246        BSTR value);
247
248    HRESULT (STDMETHODCALLTYPE *GetResponseHeader)(
249        IWinHttpRequest *This,
250        BSTR header,
251        BSTR *value);
252
253    HRESULT (STDMETHODCALLTYPE *GetAllResponseHeaders)(
254        IWinHttpRequest *This,
255        BSTR *headers);
256
257    HRESULT (STDMETHODCALLTYPE *Send)(
258        IWinHttpRequest *This,
259        VARIANT body);
260
261    HRESULT (STDMETHODCALLTYPE *get_Status)(
262        IWinHttpRequest *This,
263        LONG *status);
264
265    HRESULT (STDMETHODCALLTYPE *get_StatusText)(
266        IWinHttpRequest *This,
267        BSTR *status);
268
269    HRESULT (STDMETHODCALLTYPE *get_ResponseText)(
270        IWinHttpRequest *This,
271        BSTR *body);
272
273    HRESULT (STDMETHODCALLTYPE *get_ResponseBody)(
274        IWinHttpRequest *This,
275        VARIANT *body);
276
277    HRESULT (STDMETHODCALLTYPE *get_ResponseStream)(
278        IWinHttpRequest *This,
279        VARIANT *body);
280
281    HRESULT (STDMETHODCALLTYPE *get_Option)(
282        IWinHttpRequest *This,
283        WinHttpRequestOption option,
284        VARIANT *value);
285
286    HRESULT (STDMETHODCALLTYPE *put_Option)(
287        IWinHttpRequest *This,
288        WinHttpRequestOption option,
289        VARIANT value);
290
291    HRESULT (STDMETHODCALLTYPE *WaitForResponse)(
292        IWinHttpRequest *This,
293        VARIANT timeout,
294        VARIANT_BOOL *succeeded);
295
296    HRESULT (STDMETHODCALLTYPE *Abort)(
297        IWinHttpRequest *This);
298
299    HRESULT (STDMETHODCALLTYPE *SetTimeouts)(
300        IWinHttpRequest *This,
301        LONG resolve_timeout,
302        LONG connect_timeout,
303        LONG send_timeout,
304        LONG receive_timeout);
305
306    HRESULT (STDMETHODCALLTYPE *SetClientCertificate)(
307        IWinHttpRequest *This,
308        BSTR certificate);
309
310    HRESULT (STDMETHODCALLTYPE *SetAutoLogonPolicy)(
311        IWinHttpRequest *This,
312        WinHttpRequestAutoLogonPolicy policy);
313
314    END_INTERFACE
315} IWinHttpRequestVtbl;
316
317interface IWinHttpRequest {
318    CONST_VTBL IWinHttpRequestVtbl* lpVtbl;
319};
320
321#ifdef COBJMACROS
322#ifndef WIDL_C_INLINE_WRAPPERS
323/*** IUnknown methods ***/
324#define IWinHttpRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
325#define IWinHttpRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
326#define IWinHttpRequest_Release(This) (This)->lpVtbl->Release(This)
327/*** IDispatch methods ***/
328#define IWinHttpRequest_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
329#define IWinHttpRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
330#define IWinHttpRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
331#define IWinHttpRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
332/*** IWinHttpRequest methods ***/
333#define IWinHttpRequest_SetProxy(This,proxy_setting,proxy_server,bypass_list) (This)->lpVtbl->SetProxy(This,proxy_setting,proxy_server,bypass_list)
334#define IWinHttpRequest_SetCredentials(This,username,password,flags) (This)->lpVtbl->SetCredentials(This,username,password,flags)
335#define IWinHttpRequest_Open(This,method,url,async) (This)->lpVtbl->Open(This,method,url,async)
336#define IWinHttpRequest_SetRequestHeader(This,header,value) (This)->lpVtbl->SetRequestHeader(This,header,value)
337#define IWinHttpRequest_GetResponseHeader(This,header,value) (This)->lpVtbl->GetResponseHeader(This,header,value)
338#define IWinHttpRequest_GetAllResponseHeaders(This,headers) (This)->lpVtbl->GetAllResponseHeaders(This,headers)
339#define IWinHttpRequest_Send(This,body) (This)->lpVtbl->Send(This,body)
340#define IWinHttpRequest_get_Status(This,status) (This)->lpVtbl->get_Status(This,status)
341#define IWinHttpRequest_get_StatusText(This,status) (This)->lpVtbl->get_StatusText(This,status)
342#define IWinHttpRequest_get_ResponseText(This,body) (This)->lpVtbl->get_ResponseText(This,body)
343#define IWinHttpRequest_get_ResponseBody(This,body) (This)->lpVtbl->get_ResponseBody(This,body)
344#define IWinHttpRequest_get_ResponseStream(This,body) (This)->lpVtbl->get_ResponseStream(This,body)
345#define IWinHttpRequest_get_Option(This,option,value) (This)->lpVtbl->get_Option(This,option,value)
346#define IWinHttpRequest_put_Option(This,option,value) (This)->lpVtbl->put_Option(This,option,value)
347#define IWinHttpRequest_WaitForResponse(This,timeout,succeeded) (This)->lpVtbl->WaitForResponse(This,timeout,succeeded)
348#define IWinHttpRequest_Abort(This) (This)->lpVtbl->Abort(This)
349#define IWinHttpRequest_SetTimeouts(This,resolve_timeout,connect_timeout,send_timeout,receive_timeout) (This)->lpVtbl->SetTimeouts(This,resolve_timeout,connect_timeout,send_timeout,receive_timeout)
350#define IWinHttpRequest_SetClientCertificate(This,certificate) (This)->lpVtbl->SetClientCertificate(This,certificate)
351#define IWinHttpRequest_SetAutoLogonPolicy(This,policy) (This)->lpVtbl->SetAutoLogonPolicy(This,policy)
352#else
353/*** IUnknown methods ***/
354static inline HRESULT IWinHttpRequest_QueryInterface(IWinHttpRequest* This,REFIID riid,void **ppvObject) {
355    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
356}
357static inline ULONG IWinHttpRequest_AddRef(IWinHttpRequest* This) {
358    return This->lpVtbl->AddRef(This);
359}
360static inline ULONG IWinHttpRequest_Release(IWinHttpRequest* This) {
361    return This->lpVtbl->Release(This);
362}
363/*** IDispatch methods ***/
364static inline HRESULT IWinHttpRequest_GetTypeInfoCount(IWinHttpRequest* This,UINT *pctinfo) {
365    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
366}
367static inline HRESULT IWinHttpRequest_GetTypeInfo(IWinHttpRequest* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
368    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
369}
370static inline HRESULT IWinHttpRequest_GetIDsOfNames(IWinHttpRequest* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
371    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
372}
373static inline HRESULT IWinHttpRequest_Invoke(IWinHttpRequest* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
374    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
375}
376/*** IWinHttpRequest methods ***/
377static inline HRESULT IWinHttpRequest_SetProxy(IWinHttpRequest* This,HTTPREQUEST_PROXY_SETTING proxy_setting,VARIANT proxy_server,VARIANT bypass_list) {
378    return This->lpVtbl->SetProxy(This,proxy_setting,proxy_server,bypass_list);
379}
380static inline HRESULT IWinHttpRequest_SetCredentials(IWinHttpRequest* This,BSTR username,BSTR password,HTTPREQUEST_SETCREDENTIALS_FLAGS flags) {
381    return This->lpVtbl->SetCredentials(This,username,password,flags);
382}
383static inline HRESULT IWinHttpRequest_Open(IWinHttpRequest* This,BSTR method,BSTR url,VARIANT async) {
384    return This->lpVtbl->Open(This,method,url,async);
385}
386static inline HRESULT IWinHttpRequest_SetRequestHeader(IWinHttpRequest* This,BSTR header,BSTR value) {
387    return This->lpVtbl->SetRequestHeader(This,header,value);
388}
389static inline HRESULT IWinHttpRequest_GetResponseHeader(IWinHttpRequest* This,BSTR header,BSTR *value) {
390    return This->lpVtbl->GetResponseHeader(This,header,value);
391}
392static inline HRESULT IWinHttpRequest_GetAllResponseHeaders(IWinHttpRequest* This,BSTR *headers) {
393    return This->lpVtbl->GetAllResponseHeaders(This,headers);
394}
395static inline HRESULT IWinHttpRequest_Send(IWinHttpRequest* This,VARIANT body) {
396    return This->lpVtbl->Send(This,body);
397}
398static inline HRESULT IWinHttpRequest_get_Status(IWinHttpRequest* This,LONG *status) {
399    return This->lpVtbl->get_Status(This,status);
400}
401static inline HRESULT IWinHttpRequest_get_StatusText(IWinHttpRequest* This,BSTR *status) {
402    return This->lpVtbl->get_StatusText(This,status);
403}
404static inline HRESULT IWinHttpRequest_get_ResponseText(IWinHttpRequest* This,BSTR *body) {
405    return This->lpVtbl->get_ResponseText(This,body);
406}
407static inline HRESULT IWinHttpRequest_get_ResponseBody(IWinHttpRequest* This,VARIANT *body) {
408    return This->lpVtbl->get_ResponseBody(This,body);
409}
410static inline HRESULT IWinHttpRequest_get_ResponseStream(IWinHttpRequest* This,VARIANT *body) {
411    return This->lpVtbl->get_ResponseStream(This,body);
412}
413static inline HRESULT IWinHttpRequest_get_Option(IWinHttpRequest* This,WinHttpRequestOption option,VARIANT *value) {
414    return This->lpVtbl->get_Option(This,option,value);
415}
416static inline HRESULT IWinHttpRequest_put_Option(IWinHttpRequest* This,WinHttpRequestOption option,VARIANT value) {
417    return This->lpVtbl->put_Option(This,option,value);
418}
419static inline HRESULT IWinHttpRequest_WaitForResponse(IWinHttpRequest* This,VARIANT timeout,VARIANT_BOOL *succeeded) {
420    return This->lpVtbl->WaitForResponse(This,timeout,succeeded);
421}
422static inline HRESULT IWinHttpRequest_Abort(IWinHttpRequest* This) {
423    return This->lpVtbl->Abort(This);
424}
425static inline HRESULT IWinHttpRequest_SetTimeouts(IWinHttpRequest* This,LONG resolve_timeout,LONG connect_timeout,LONG send_timeout,LONG receive_timeout) {
426    return This->lpVtbl->SetTimeouts(This,resolve_timeout,connect_timeout,send_timeout,receive_timeout);
427}
428static inline HRESULT IWinHttpRequest_SetClientCertificate(IWinHttpRequest* This,BSTR certificate) {
429    return This->lpVtbl->SetClientCertificate(This,certificate);
430}
431static inline HRESULT IWinHttpRequest_SetAutoLogonPolicy(IWinHttpRequest* This,WinHttpRequestAutoLogonPolicy policy) {
432    return This->lpVtbl->SetAutoLogonPolicy(This,policy);
433}
434#endif
435#endif
436
437#endif
438
439
440#endif  /* __IWinHttpRequest_INTERFACE_DEFINED__ */
441
442/*****************************************************************************
443 * WinHttpRequest coclass
444 */
445
446DEFINE_GUID(CLSID_WinHttpRequest, 0x2087c2f4, 0x2cef, 0x4953, 0xa8,0xab, 0x66,0x77,0x9b,0x67,0x04,0x95);
447
448#ifdef __cplusplus
449class DECLSPEC_UUID("2087c2f4-2cef-4953-a8ab-66779b670495") WinHttpRequest;
450#ifdef __CRT_UUID_DECL
451__CRT_UUID_DECL(WinHttpRequest, 0x2087c2f4, 0x2cef, 0x4953, 0xa8,0xab, 0x66,0x77,0x9b,0x67,0x04,0x95)
452#endif
453#endif
454
455#endif /* __WinHttp_LIBRARY_DEFINED__ */
456/* Begin additional prototypes for all interfaces */
457
458ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
459unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
460unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
461void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
462ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
463unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
464unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
465void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
466
467/* End additional prototypes */
468
469#ifdef __cplusplus
470}
471#endif
472
473#endif /* __httprequest_h__ */