48 INTERFACESAFE_FOR_UNTRUSTED_CALLER |
49 INTERFACESAFE_FOR_UNTRUSTED_DATA |
50 INTERFACE_USES_SECURITY_MANAGER;
138 static const char* readystates[] = {
139 "READYSTATE_UNINITIALIZED",
140 "READYSTATE_LOADING",
142 "READYSTATE_INTERACTIVE",
143 "READYSTATE_COMPLETE"};
223 if (
bsc->binding) IBinding_Abort(
bsc->binding);
242 *
ppv = &
This->IBindStatusCallback_iface;
246 *
ppv = &
This->IHttpNegotiate_iface;
250 *
ppv = &
This->IAuthenticate_iface;
262 IBindStatusCallback_AddRef(iface);
276 TRACE(
"%p, refcount %ld.\n", iface,
ref);
286 TRACE(
"%p, refcount %ld.\n", iface,
ref);
290 if (
This->binding) IBinding_Release(
This->binding);
291 if (
This->stream) IStream_Release(
This->stream);
308 This->binding = pbind;
309 IBinding_AddRef(pbind);
335 TRACE(
"%p, %lu, %lu, %lu, %s.\n", iface, ulProgress, ulProgressMax, ulStatusCode,
350 IBinding_Release(
This->binding);
365 DWORD *bind_flags, BINDINFO *pbindinfo)
369 TRACE(
"(%p)->(%p %p)\n",
This, bind_flags, pbindinfo);
372 if (
This->request->async) *bind_flags |= BINDF_ASYNCHRONOUS;
374 if (
This->request->verb != BINDVERB_GET &&
This->body)
376 pbindinfo->stgmedData.tymed = TYMED_HGLOBAL;
377 pbindinfo->stgmedData.hGlobal =
This->body;
380 IBindStatusCallback_QueryInterface(iface, &
IID_IUnknown, (
void**)&pbindinfo->stgmedData.pUnkForRelease);
383 pbindinfo->dwBindVerb =
This->request->verb;
384 if (
This->request->verb == BINDVERB_CUSTOM)
387 lstrcpyW(pbindinfo->szCustomVerb,
This->request->custom);
405 hr = IStream_Read(stgmed->pstm,
buf,
sizeof(
buf), &
read);
409 }
while((
hr ==
S_OK) && written != 0 &&
read != 0);
444 return IBindStatusCallback_QueryInterface(&
This->IBindStatusCallback_iface,
riid,
ppv);
450 return IBindStatusCallback_AddRef(&
This->IBindStatusCallback_iface);
456 return IBindStatusCallback_Release(&
This->IBindStatusCallback_iface);
462 static const WCHAR content_type_utf8W[] = {
'C',
'o',
'n',
't',
'e',
'n',
't',
'-',
'T',
'y',
'p',
'e',
':',
' ',
463 't',
'e',
'x',
't',
'/',
'p',
'l',
'a',
'i',
'n',
';',
'c',
'h',
'a',
'r',
's',
'e',
't',
'=',
'u',
't',
'f',
'-',
'8',
'\r',
'\n',0};
464 static const WCHAR refererW[] = {
'R',
'e',
'f',
'e',
'r',
'e',
'r',
':',
' ',0};
476 if (
This->request->use_utf8_content)
477 size =
sizeof(content_type_utf8W);
482 if (
This->request->base_uri)
484 IUri_GetRawUri(
This->request->base_uri, &base_uri);
502 if (
This->request->use_utf8_content)
550 while (*++
ptr ==
' ')
600 if (*
ptr ==
'\r' && *(
ptr+1) ==
'\n')
631 return IBindStatusCallback_QueryInterface(&
This->IBindStatusCallback_iface,
riid,
ppv);
637 return IBindStatusCallback_AddRef(&
This->IBindStatusCallback_iface);
643 return IBindStatusCallback_Release(&
This->IBindStatusCallback_iface);
703 if (
This->verb != BINDVERB_GET)
705 void *send_data, *
ptr;
810 IBindCtx_Release(pbc);
828 if(!(
This->safeopt & INTERFACESAFE_FOR_UNTRUSTED_DATA))
838 hr = IUri_GetScheme(
This->base_uri, &base_scheme);
842 if(
scheme != base_scheme) {
843 WARN(
"Schemes don't match\n");
848 FIXME(
"Unknown scheme\n");
856 hr = IUri_GetHost(
This->base_uri, &base_host);
859 WARN(
"Hosts don't match\n");
872 static const WCHAR MethodHeadW[] = {
'H',
'E',
'A',
'D',0};
873 static const WCHAR MethodGetW[] = {
'G',
'E',
'T',0};
874 static const WCHAR MethodPutW[] = {
'P',
'U',
'T',0};
875 static const WCHAR MethodPostW[] = {
'P',
'O',
'S',
'T',0};
876 static const WCHAR MethodDeleteW[] = {
'D',
'E',
'L',
'E',
'T',
'E',0};
877 static const WCHAR MethodPropFindW[] = {
'P',
'R',
'O',
'P',
'F',
'I',
'N',
'D',0};
886 IUri_Release(
This->uri);
897 This->verb = BINDVERB_GET;
901 This->verb = BINDVERB_PUT;
905 This->verb = BINDVERB_POST;
911 This->verb = BINDVERB_CUSTOM;
926 WARN(
"Could not create IUri object, hr %#lx.\n",
hr);
956 IUriBuilder_SetUserName(builder,
This->user);
957 IUriBuilder_SetPassword(builder,
This->password);
958 hr = IUriBuilder_CreateUri(builder, -1, 0, 0, &full_uri);
965 WARN(
"failed to create modified uri, hr %#lx.\n",
hr);
966 IUriBuilder_Release(builder);
969 WARN(
"IUriBuilder creation failed, hr %#lx.\n",
hr);
988 if (
This->state != READYSTATE_LOADING)
return E_FAIL;
1038 if (*
ptr ==
'\r' && *(
ptr+1) ==
'\n')
1075 if (
This->state != READYSTATE_LOADING)
return E_FAIL;
1106 if (
This->state != READYSTATE_COMPLETE)
return E_FAIL;
1130 if (
in[0] == 0 &&
in[1] == 0 &&
in[2] == 0 &&
in[3] == 0x3c)
1132 if (
in[0] == 0x3c &&
in[1] == 0 &&
in[2] == 0 &&
in[3] == 0)
1134 if (
in[0] == 0 &&
in[1] == 0 &&
in[2] == 0x3c &&
in[3] == 0)
1136 if (
in[0] == 0 &&
in[1] == 0x3c &&
in[2] == 0 &&
in[3] == 0)
1138 if (
in[0] == 0x4c &&
in[1] == 0x6f &&
in[2] == 0xa7 &&
in[3] == 0x94)
1140 if (
in[0] == 0x3c &&
in[1] == 0x3f &&
in[2] == 0x78 &&
in[3] == 0x6d)
1142 if (
in[0] == 0x3c &&
in[1] == 0 &&
in[2] == 0x3f &&
in[3] == 0)
1144 if (
in[0] == 0 &&
in[1] == 0x3c &&
in[2] == 0 &&
in[3] == 0x3f)
1150 if (
in[0] == 0xef &&
in[1] == 0xbb &&
in[2] == 0xbf)
1156 if (
in[0] == 0xfe &&
in[1] == 0xff)
1158 if (
in[0] == 0xff &&
in[1] == 0xfe)
1171 if (
This->state != READYSTATE_COMPLETE)
return E_FAIL;
1184 TRACE(
"detected encoding: %u.\n", encoding);
1190 FIXME(
"unsupported response encoding: %u.\n", encoding);
1222 if (
This->state != READYSTATE_COMPLETE)
return E_FAIL;
1232 hr = IXMLDOMDocument3_loadXML(doc,
str, &
ok);
1237 IXMLDOMDocument3_Release(doc);
1306 IStream_Seek(
stream, move, STREAM_SEEK_SET,
NULL);
1324 if (
This->sink) IDispatch_Release(
This->sink);
1333 IUnknown_Release(
This->site );
1335 IUri_Release(
This->uri);
1337 IUri_Release(
This->base_uri);
1351 if (
This->sink) IDispatch_Release(
This->sink);
1367 *ppvObject = &
This->IObjectWithSite_iface;
1371 *ppvObject = &
This->IObjectSafety_iface;
1375 *ppvObject = &
This->ISupportErrorInfo_iface;
1384 IUnknown_AddRef((
IUnknown *)*ppvObject);
1393 TRACE(
"%p, refcount %lu.\n", iface,
ref);
1402 TRACE(
"%p, refcount %lu.\n", iface,
ref);
1415 TRACE(
"%p, %p.\n", iface, pctinfo);
1425 TRACE(
"%p, %u, %lx,%p.\n", iface, iTInfo,
lcid, ppTInfo);
1436 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
1439 if(!rgszNames || cNames == 0 || !rgDispId)
1445 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
1454 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
1459 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
1460 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1465 hr = ITypeInfo_Invoke(
typeinfo, iface, dispIdMember,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1498 TRACE(
"(%p)->(%p)\n",
This, respheaders);
1602 return IXMLHTTPRequest_QueryInterface(&
This->IXMLHTTPRequest_iface,
riid, ppvObject);
1608 return IXMLHTTPRequest_AddRef(&
This->IXMLHTTPRequest_iface);
1614 return IXMLHTTPRequest_Release(&
This->IXMLHTTPRequest_iface);
1626 return IUnknown_QueryInterface(
This->site, iid, ppvSite );
1632 IHTMLDocument2 *doc;
1637 hr = IUnknown_QueryInterface(
site, &IID_IServiceProvider, (
void**)&provider);
1641 hr = IServiceProvider_QueryService(provider, &SID_SContainerDispatch, &IID_IHTMLDocument2, (
void**)&doc);
1643 hr = IServiceProvider_QueryService(provider, &SID_SInternetHostSecurityManager, &IID_IHTMLDocument2, (
void**)&doc);
1644 IServiceProvider_Release(provider);
1648 hr = IHTMLDocument2_get_URL(doc, &
url);
1649 IHTMLDocument2_Release(doc);
1670 IUnknown_Release(
This->site );
1672 IUri_Release(
This->base_uri);
1678 IUnknown_AddRef(
punk );
1698 return IXMLHTTPRequest_QueryInterface(&
This->IXMLHTTPRequest_iface,
riid,
ppv);
1704 return IXMLHTTPRequest_AddRef(&
This->IXMLHTTPRequest_iface);
1710 return IXMLHTTPRequest_Release(&
This->IXMLHTTPRequest_iface);
1754 return IXMLHTTPRequest_QueryInterface(&
This->IXMLHTTPRequest_iface,
riid,
obj);
1760 return IXMLHTTPRequest_AddRef(&
This->IXMLHTTPRequest_iface);
1766 return IXMLHTTPRequest_Release(&
This->IXMLHTTPRequest_iface);
1802 *
obj = &
This->req.ISupportErrorInfo_iface;
1820 TRACE(
"%p, refcount %lu.\n", iface,
ref );
1829 TRACE(
"%p, refcount %lu.\n", iface,
ref );
1853 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
1864 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
1867 if(!rgszNames || cNames == 0 || !rgDispId)
1873 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
1882 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
1887 TRACE(
"%p, %ld, %s %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
1888 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1893 hr = ITypeInfo_Invoke(
typeinfo, iface, dispIdMember,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1926 TRACE(
"(%p)->(%p)\n",
This, respheaders);
2001 LONG sendTimeout,
LONG receiveTimeout)
2003 FIXME(
"%p, %ld, %ld, %ld, %ld: stub\n", iface, resolveTimeout, connectTimeout, sendTimeout, receiveTimeout);
2071 req->
state = READYSTATE_UNINITIALIZED;
2094 req =
malloc(
sizeof(*req));
2101 TRACE(
"returning iface %p\n", *
obj);
2112 req =
malloc(
sizeof(*req));
2121 TRACE(
"returning iface %p\n", *
obj);
static struct sockaddr_in sa
HRESULT get_typeinfo(enum type_id tid, ITypeInfo **ret)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void user(int argc, const char *argv[])
static void list_remove(struct list_entry *entry)
static int list_empty(struct list_entry *head)
static void list_add_head(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
#define WideCharToMultiByte
#define MultiByteToWideChar
_ACRTIMP int __cdecl wcscmp(const wchar_t *, const wchar_t *)
HRESULT dom_document_create(MSXML_VERSION version, void **ppObj)
HRESULT WINAPI GetHGlobalFromStream(IStream *pstm, HGLOBAL *phglobal)
HRESULT WINAPI CreateStreamOnHGlobal(HGLOBAL hGlobal, BOOL fDeleteOnRelease, LPSTREAM *ppstm)
HRESULT WINAPI SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound)
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
SAFEARRAY *WINAPI SafeArrayCreate(VARTYPE vt, UINT cDims, SAFEARRAYBOUND *rgsabound)
HRESULT WINAPI CreateUri(LPCWSTR pwzURI, DWORD dwFlags, DWORD_PTR dwReserved, IUri **ppURI)
HRESULT WINAPI CoInternetCombineUrlEx(IUri *pBaseUri, LPCWSTR pwzRelativeUrl, DWORD dwCombineFlags, IUri **ppCombinedUri, DWORD_PTR dwReserved)
HRESULT WINAPI CreateIUriBuilder(IUri *pIUri, DWORD dwFlags, DWORD_PTR dwReserved, IUriBuilder **ppIUriBuilder)
static unsigned char buff[32768]
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLenum const GLfloat * params
GLenum GLuint GLenum GLsizei const GLchar * buf
GLuint GLsizei GLsizei * length
GLsizei GLenum GLboolean sink
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HGLOBAL NTAPI GlobalFree(HGLOBAL hMem)
BOOL NTAPI GlobalUnlock(HGLOBAL hMem)
HGLOBAL NTAPI GlobalAlloc(UINT uFlags, SIZE_T dwBytes)
SIZE_T NTAPI GlobalSize(HGLOBAL hMem)
static void httprequest_release(httprequest *This)
static const WCHAR colspaceW[]
static HRESULT httprequest_getResponseHeader(httprequest *This, BSTR header, BSTR *value)
static HRESULT WINAPI XMLHTTPRequest_GetTypeInfo(IXMLHTTPRequest *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static ULONG WINAPI httprequest_Safety_AddRef(IObjectSafety *iface)
static HRESULT WINAPI BSCHttpNegotiate_OnResponse(IHttpNegotiate *iface, DWORD code, LPCWSTR resp_headers, LPCWSTR req_headers, LPWSTR *add_reqheaders)
static HRESULT WINAPI Authenticate_QueryInterface(IAuthenticate *iface, REFIID riid, void **ppv)
static HRESULT WINAPI XMLHTTPRequest_get_status(IXMLHTTPRequest *iface, LONG *status)
static httprequest * impl_from_IXMLHTTPRequest(IXMLHTTPRequest *iface)
static HRESULT WINAPI ServerXMLHTTPRequest_getOption(IServerXMLHTTPRequest *iface, SERVERXMLHTTP_OPTION option, VARIANT *value)
static HRESULT WINAPI ServerXMLHTTPRequest_get_responseStream(IServerXMLHTTPRequest *iface, VARIANT *body)
static HRESULT WINAPI XMLHTTPRequest_open(IXMLHTTPRequest *iface, BSTR method, BSTR url, VARIANT async, VARIANT user, VARIANT password)
static HRESULT WINAPI httprequest_Safety_QueryInterface(IObjectSafety *iface, REFIID riid, void **ppv)
static const DWORD safety_supported_options
static ULONG WINAPI BindStatusCallback_AddRef(IBindStatusCallback *iface)
static httprequest * impl_from_IObjectSafety(IObjectSafety *iface)
static HRESULT WINAPI SupportErrorInfo_InterfaceSupportsErrorInfo(ISupportErrorInfo *iface, REFIID riid)
static void BindStatusCallback_Detach(BindStatusCallback *bsc)
static HRESULT WINAPI ServerXMLHTTPRequest_send(IServerXMLHTTPRequest *iface, VARIANT body)
IUri * get_base_uri(IUnknown *site)
static HRESULT WINAPI BindStatusCallback_OnObjectAvailable(IBindStatusCallback *iface, REFIID riid, IUnknown *punk)
static const IObjectWithSiteVtbl ObjectWithSiteVtbl
static HRESULT WINAPI ServerXMLHTTPRequest_getAllResponseHeaders(IServerXMLHTTPRequest *iface, BSTR *respheaders)
static HRESULT WINAPI Authenticate_Authenticate(IAuthenticate *iface, HWND *hwnd, LPWSTR *username, LPWSTR *password)
static HRESULT WINAPI BindStatusCallback_OnLowResource(IBindStatusCallback *iface, DWORD reserved)
static HRESULT WINAPI BindStatusCallback_GetPriority(IBindStatusCallback *iface, LONG *pPriority)
static void free_request_headers(httprequest *This)
static HRESULT WINAPI httprequest_Safety_GetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD *supported, DWORD *enabled)
static HRESULT httprequest_abort(httprequest *This)
static HRESULT httprequest_getAllResponseHeaders(httprequest *This, BSTR *respheaders)
static httprequest * impl_from_IObjectWithSite(IObjectWithSite *iface)
HRESULT ServerXMLHTTP_create(void **obj)
static HRESULT WINAPI XMLHTTPRequest_put_onreadystatechange(IXMLHTTPRequest *iface, IDispatch *sink)
static HRESULT WINAPI XMLHTTPRequest_getAllResponseHeaders(IXMLHTTPRequest *iface, BSTR *respheaders)
static ULONG WINAPI XMLHTTPRequest_Release(IXMLHTTPRequest *iface)
static HRESULT WINAPI ServerXMLHTTPRequest_abort(IServerXMLHTTPRequest *iface)
static HRESULT httprequest_open(httprequest *This, BSTR method, BSTR url, VARIANT async, VARIANT user, VARIANT password)
static void add_response_header(httprequest *This, const WCHAR *data, int len)
static HRESULT WINAPI ServerXMLHTTPRequest_setTimeouts(IServerXMLHTTPRequest *iface, LONG resolveTimeout, LONG connectTimeout, LONG sendTimeout, LONG receiveTimeout)
static HRESULT WINAPI ServerXMLHTTPRequest_put_onreadystatechange(IServerXMLHTTPRequest *iface, IDispatch *sink)
static HRESULT httprequest_get_responseBody(httprequest *This, VARIANT *body)
static HRESULT WINAPI ServerXMLHTTPRequest_setOption(IServerXMLHTTPRequest *iface, SERVERXMLHTTP_OPTION option, VARIANT value)
static ULONG WINAPI BindStatusCallback_Release(IBindStatusCallback *iface)
static ULONG WINAPI XMLHTTPRequest_AddRef(IXMLHTTPRequest *iface)
static HRESULT httprequest_setRequestHeader(httprequest *This, BSTR header, BSTR value)
static HRESULT WINAPI XMLHTTPRequest_get_responseXML(IXMLHTTPRequest *iface, IDispatch **body)
static HRESULT WINAPI ServerXMLHTTPRequest_open(IServerXMLHTTPRequest *iface, BSTR method, BSTR url, VARIANT async, VARIANT user, VARIANT password)
static HRESULT WINAPI XMLHTTPRequest_setRequestHeader(IXMLHTTPRequest *iface, BSTR header, BSTR value)
static HRESULT WINAPI BindStatusCallback_OnStartBinding(IBindStatusCallback *iface, DWORD reserved, IBinding *pbind)
static HRESULT httprequest_put_onreadystatechange(httprequest *This, IDispatch *sink)
static unsigned int detect_response_encoding(const BYTE *in, unsigned int len)
static HRESULT WINAPI BSCHttpNegotiate_BeginningTransaction(IHttpNegotiate *iface, LPCWSTR url, LPCWSTR headers, DWORD reserved, LPWSTR *add_headers)
static HRESULT WINAPI ServerXMLHTTPRequest_setRequestHeader(IServerXMLHTTPRequest *iface, BSTR header, BSTR value)
static ULONG WINAPI SupportErrorInfo_AddRef(ISupportErrorInfo *iface)
static const WCHAR crlfW[]
static const IBindStatusCallbackVtbl BindStatusCallbackVtbl
static HRESULT WINAPI XMLHTTPRequest_get_responseText(IXMLHTTPRequest *iface, BSTR *body)
static HRESULT WINAPI httprequest_ObjectWithSite_SetSite(IObjectWithSite *iface, IUnknown *punk)
static const IObjectSafetyVtbl ObjectSafetyVtbl
static HRESULT WINAPI ServerXMLHTTPRequest_waitForResponse(IServerXMLHTTPRequest *iface, VARIANT timeout, VARIANT_BOOL *isSuccessful)
static HRESULT httprequest_get_responseXML(httprequest *This, IDispatch **body)
static HRESULT WINAPI BindStatusCallback_GetBindInfo(IBindStatusCallback *iface, DWORD *bind_flags, BINDINFO *pbindinfo)
static HRESULT WINAPI ServerXMLHTTPRequest_GetTypeInfoCount(IServerXMLHTTPRequest *iface, UINT *pctinfo)
static HRESULT WINAPI ServerXMLHTTPRequest_get_responseBody(IServerXMLHTTPRequest *iface, VARIANT *body)
static HRESULT WINAPI ServerXMLHTTPRequest_QueryInterface(IServerXMLHTTPRequest *iface, REFIID riid, void **obj)
static HRESULT WINAPI BindStatusCallback_OnStopBinding(IBindStatusCallback *iface, HRESULT hr, LPCWSTR error)
static HRESULT WINAPI ServerXMLHTTPRequest_GetIDsOfNames(IServerXMLHTTPRequest *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static ULONG WINAPI BSCHttpNegotiate_Release(IHttpNegotiate *iface)
static HRESULT WINAPI ServerXMLHTTPRequest_GetTypeInfo(IServerXMLHTTPRequest *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static BindStatusCallback * impl_from_IAuthenticate(IAuthenticate *iface)
static ULONG WINAPI Authenticate_AddRef(IAuthenticate *iface)
static ULONG WINAPI ServerXMLHTTPRequest_AddRef(IServerXMLHTTPRequest *iface)
static HRESULT WINAPI httprequest_Safety_SetInterfaceSafetyOptions(IObjectSafety *iface, REFIID riid, DWORD mask, DWORD enabled)
static HRESULT WINAPI httprequest_ObjectWithSite_QueryInterface(IObjectWithSite *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI ServerXMLHTTPRequest_getResponseHeader(IServerXMLHTTPRequest *iface, BSTR header, BSTR *value)
static HRESULT WINAPI XMLHTTPRequest_QueryInterface(IXMLHTTPRequest *iface, REFIID riid, void **ppvObject)
static HRESULT BindStatusCallback_create(httprequest *This, BindStatusCallback **obj, const VARIANT *body)
static HRESULT WINAPI XMLHTTPRequest_get_readyState(IXMLHTTPRequest *iface, LONG *state)
static HRESULT WINAPI SupportErrorInfo_QueryInterface(ISupportErrorInfo *iface, REFIID riid, void **obj)
static HRESULT WINAPI ServerXMLHTTPRequest_Invoke(IServerXMLHTTPRequest *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT httprequest_get_status(httprequest *This, LONG *status)
static ULONG WINAPI SupportErrorInfo_Release(ISupportErrorInfo *iface)
static HRESULT WINAPI XMLHTTPRequest_get_responseBody(IXMLHTTPRequest *iface, VARIANT *body)
static HRESULT WINAPI XMLHTTPRequest_getResponseHeader(IXMLHTTPRequest *iface, BSTR header, BSTR *value)
static HRESULT WINAPI XMLHTTPRequest_get_statusText(IXMLHTTPRequest *iface, BSTR *status)
static HRESULT WINAPI ServerXMLHTTPRequest_get_status(IServerXMLHTTPRequest *iface, LONG *status)
static void init_httprequest(httprequest *req)
static HRESULT WINAPI ServerXMLHTTPRequest_get_responseXML(IServerXMLHTTPRequest *iface, IDispatch **body)
@ RESPONSE_ENCODING_UCS4_3412
@ RESPONSE_ENCODING_UCS4_2143
@ RESPONSE_ENCODING_UTF16LE
@ RESPONSE_ENCODING_UCS4LE
@ RESPONSE_ENCODING_UTF16BE
@ RESPONSE_ENCODING_UCS4BE
@ RESPONSE_ENCODING_EBCDIC
static HRESULT WINAPI XMLHTTPRequest_abort(IXMLHTTPRequest *iface)
static HRESULT WINAPI XMLHTTPRequest_get_responseStream(IXMLHTTPRequest *iface, VARIANT *body)
HRESULT XMLHTTPRequest_create(void **obj)
static ULONG WINAPI BSCHttpNegotiate_AddRef(IHttpNegotiate *iface)
static ULONG WINAPI httprequest_ObjectWithSite_AddRef(IObjectWithSite *iface)
static HRESULT WINAPI BSCHttpNegotiate_QueryInterface(IHttpNegotiate *iface, REFIID riid, void **ppv)
static HRESULT httprequest_send(httprequest *This, VARIANT body)
static void free_response_headers(httprequest *This)
static ULONG WINAPI ServerXMLHTTPRequest_Release(IServerXMLHTTPRequest *iface)
static HRESULT WINAPI BindStatusCallback_OnProgress(IBindStatusCallback *iface, ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR szStatusText)
static HRESULT WINAPI XMLHTTPRequest_GetIDsOfNames(IXMLHTTPRequest *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static const IHttpNegotiateVtbl BSCHttpNegotiateVtbl
static BindStatusCallback * impl_from_IBindStatusCallback(IBindStatusCallback *iface)
static const IAuthenticateVtbl AuthenticateVtbl
static void httprequest_setreadystate(httprequest *This, READYSTATE state)
static const struct IXMLHTTPRequestVtbl XMLHTTPRequestVtbl
static BindStatusCallback * impl_from_IHttpNegotiate(IHttpNegotiate *iface)
static const struct IServerXMLHTTPRequestVtbl ServerXMLHTTPRequestVtbl
static HRESULT WINAPI XMLHTTPRequest_send(IXMLHTTPRequest *iface, VARIANT body)
static httprequest * impl_from_ISupportErrorInfo(ISupportErrorInfo *iface)
static HRESULT WINAPI BindStatusCallback_OnDataAvailable(IBindStatusCallback *iface, DWORD flags, DWORD size, FORMATETC *format, STGMEDIUM *stgmed)
static HRESULT WINAPI ServerXMLHTTPRequest_get_readyState(IServerXMLHTTPRequest *iface, LONG *state)
static ULONG WINAPI httprequest_Safety_Release(IObjectSafety *iface)
static ULONG WINAPI httprequest_ObjectWithSite_Release(IObjectWithSite *iface)
static HRESULT WINAPI XMLHTTPRequest_Invoke(IXMLHTTPRequest *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static ULONG WINAPI Authenticate_Release(IAuthenticate *iface)
static HRESULT WINAPI ServerXMLHTTPRequest_get_responseText(IServerXMLHTTPRequest *iface, BSTR *body)
static HRESULT httprequest_get_responseText(httprequest *This, BSTR *body)
static HRESULT WINAPI httprequest_ObjectWithSite_GetSite(IObjectWithSite *iface, REFIID iid, void **ppvSite)
static HRESULT WINAPI ServerXMLHTTPRequest_get_statusText(IServerXMLHTTPRequest *iface, BSTR *status)
static HRESULT verify_uri(httprequest *This, IUri *uri)
static const ISupportErrorInfoVtbl SupportErrorInfoVtbl
static HRESULT WINAPI XMLHTTPRequest_GetTypeInfoCount(IXMLHTTPRequest *iface, UINT *pctinfo)
static HRESULT WINAPI BindStatusCallback_QueryInterface(IBindStatusCallback *iface, REFIID riid, void **ppv)
static serverhttp * impl_from_IServerXMLHTTPRequest(IServerXMLHTTPRequest *iface)
static HRESULT httprequest_get_readyState(httprequest *This, LONG *state)
static HRESULT httprequest_get_responseStream(httprequest *This, VARIANT *body)
static HRESULT httprequest_get_statusText(httprequest *This, BSTR *status)
VOID WINAPI CoTaskMemFree(LPVOID ptr)
LPVOID WINAPI CoTaskMemAlloc(SIZE_T size)
static ERESOURCE GlobalLock
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
#define memcpy(s1, s2, n)
const IID IID_IObjectWithSite
static const char * debugstr_variant(const VARIANT *var)
static IActiveScriptSite * site
static VARIANTARG static DISPID
@ IServerXMLHTTPRequest_tid
#define LOCALE_SYSTEM_DEFAULT
HRESULT WINAPI CreateBindCtx(DWORD reserved, LPBC *ppbc)
UINT WINAPI SysStringByteLen(BSTR str)
BSTR WINAPI SysAllocString(LPCOLESTR str)
INT WINAPI SysReAllocString(LPBSTR old, LPCOLESTR str)
UINT WINAPI SysStringLen(BSTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
BSTR WINAPI DECLSPEC_HOTPATCH SysAllocStringByteLen(LPCSTR str, UINT len)
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
#define IsEqualGUID(rguid1, rguid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
static const void * body(MD5_CTX *ctx, const void *data, unsigned long size)
vector< Header * > headers
IBindStatusCallback IBindStatusCallback_iface
IHttpNegotiate IHttpNegotiate_iface
IAuthenticate IAuthenticate_iface
IBindStatusCallback IBindStatusCallback_iface
ISupportErrorInfo ISupportErrorInfo_iface
IObjectWithSite IObjectWithSite_iface
IXMLHTTPRequest IXMLHTTPRequest_iface
IObjectSafety IObjectSafety_iface
IServerXMLHTTPRequest IServerXMLHTTPRequest_iface
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI CreateURLMonikerEx2(IMoniker *pmkContext, IUri *pUri, IMoniker **ppmk, DWORD dwFlags)
HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pbsc, IBindStatusCallback **ppbscPrevious, DWORD dwReserved)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantChangeType(VARIANTARG *pvargDest, VARIANTARG *pvargSrc, USHORT wFlags, VARTYPE vt)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
void WINAPI VariantInit(VARIANTARG *pVarg)
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
@ INTERNET_SCHEME_UNKNOWN