include: Add httprequestid.h and httprequest.idl.

This commit is contained in:
Hans Leidekker 2011-07-08 16:45:54 +02:00 committed by Alexandre Julliard
parent 9df500d45d
commit 7c938ac2a6
4 changed files with 231 additions and 0 deletions

1
.gitignore vendored
View File

@ -178,6 +178,7 @@ include/fusion.h
include/gameux.h include/gameux.h
include/hlink.h include/hlink.h
include/htiframe.h include/htiframe.h
include/httprequest.h
include/iads.h include/iads.h
include/icftypes.h include/icftypes.h
include/iextag.h include/iextag.h

View File

@ -38,6 +38,7 @@ PUBLIC_IDL_H_SRCS = \
gameux.idl \ gameux.idl \
hlink.idl \ hlink.idl \
htiframe.idl \ htiframe.idl \
httprequest.idl \
iads.idl \ iads.idl \
icftypes.idl \ icftypes.idl \
iextag.idl \ iextag.idl \
@ -286,6 +287,7 @@ SRCDIR_INCLUDES = \
hlguids.h \ hlguids.h \
htmlhelp.h \ htmlhelp.h \
http.h \ http.h \
httprequestid.h \
i_cryptasn1tls.h \ i_cryptasn1tls.h \
icm.h \ icm.h \
icmpapi.h \ icmpapi.h \

186
include/httprequest.idl Normal file
View File

@ -0,0 +1,186 @@
/*
* Copyright 2011 Hans Leidekker for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include "httprequestid.h"
import "oaidl.idl";
[
uuid(662901fc-6951-4854-9eb2-d9a2570f2b2e),
helpstring("Microsoft WinHTTP Services, version 5.1"),
lcid(0x0000),
version(5.1)
]
library WinHttp {
importlib ("stdole2.tlb");
typedef [public] LONG HTTPREQUEST_PROXY_SETTING;
const HTTPREQUEST_PROXY_SETTING HTTPREQUEST_PROXYSETTING_DEFAULT = 0x00000000;
const HTTPREQUEST_PROXY_SETTING HTTPREQUEST_PROXYSETTING_PRECONFIG = 0x00000000;
const HTTPREQUEST_PROXY_SETTING HTTPREQUEST_PROXYSETTING_DIRECT = 0x00000001;
const HTTPREQUEST_PROXY_SETTING HTTPREQUEST_PROXYSETTING_PROXY = 0x00000002;
typedef [public] LONG HTTPREQUEST_SETCREDENTIALS_FLAGS;
const HTTPREQUEST_SETCREDENTIALS_FLAGS HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0x00000000;
const HTTPREQUEST_SETCREDENTIALS_FLAGS HTTPREQUEST_SETCREDENTIALS_FOR_PROXY = 0x00000001;
typedef
[uuid(12782009-fe90-4877-9730-e5e183669b19)]
enum WinHttpRequestOption
{
WinHttpRequestOption_UserAgentString,
WinHttpRequestOption_URL,
WinHttpRequestOption_URLCodePage,
WinHttpRequestOption_EscapePercentInURL,
WinHttpRequestOption_SslErrorIgnoreFlags,
WinHttpRequestOption_SelectCertificate,
WinHttpRequestOption_EnableRedirects,
WinHttpRequestOption_UrlEscapeDisable,
WinHttpRequestOption_UrlEscapeDisableQuery,
WinHttpRequestOption_SecureProtocols,
WinHttpRequestOption_EnableTracing,
WinHttpRequestOption_RevertImpersonationOverSsl,
WinHttpRequestOption_EnableHttpsToHttpRedirects,
WinHttpRequestOption_EnablePassportAuthentication,
WinHttpRequestOption_MaxAutomaticRedirects,
WinHttpRequestOption_MaxResponseHeaderSize,
WinHttpRequestOption_MaxResponseDrainSize,
WinHttpRequestOption_EnableHttp1_1,
WinHttpRequestOption_EnableCertificateRevocationCheck,
WinHttpRequestOption_RejectUserpwd
} WinHttpRequestOption;
typedef
[uuid(9d8a6df8-13de-4b1f-a330-67c719d62514)]
enum WinHttpRequestAutoLogonPolicy
{
AutoLogonPolicy_Always,
AutoLogonPolicy_OnlyIfBypassProxy,
AutoLogonPolicy_Never
} WinHttpRequestAutoLogonPolicy;
[
object,
uuid(016fe2ec-b2c8-45f8-b23b-39e53a75396b),
odl,
dual,
oleautomation,
nonextensible,
pointer_default(unique)
]
interface IWinHttpRequest : IDispatch
{
[id(DISPID_HTTPREQUEST_SETPROXY)]
HRESULT SetProxy(
[in] HTTPREQUEST_PROXY_SETTING proxy_setting,
[in, optional] VARIANT proxy_server,
[in, optional] VARIANT bypass_list);
[id(DISPID_HTTPREQUEST_SETCREDENTIALS)]
HRESULT SetCredentials(
[in] BSTR username,
[in] BSTR password,
[in] HTTPREQUEST_SETCREDENTIALS_FLAGS flags);
[id(DISPID_HTTPREQUEST_OPEN)]
HRESULT Open(
[in] BSTR method,
[in] BSTR url,
[in, optional] VARIANT async);
[id(DISPID_HTTPREQUEST_SETREQUESTHEADER)]
HRESULT SetRequestHeader(
[in] BSTR header,
[in] BSTR value);
[id(DISPID_HTTPREQUEST_GETRESPONSEHEADER)]
HRESULT GetResponseHeader(
[in] BSTR header,
[out, retval] BSTR *value);
[id(DISPID_HTTPREQUEST_GETALLRESPONSEHEADERS)]
HRESULT GetAllResponseHeaders(
[out, retval] BSTR *headers);
[id(DISPID_HTTPREQUEST_SEND)]
HRESULT Send(
[in, optional] VARIANT body);
[propget, id(DISPID_HTTPREQUEST_STATUS)]
HRESULT Status(
[out, retval] LONG *status);
[propget, id(DISPID_HTTPREQUEST_STATUSTEXT)]
HRESULT StatusText(
[out, retval] BSTR *status);
[propget, id(DISPID_HTTPREQUEST_RESPONSETEXT)]
HRESULT ResponseText(
[out, retval] BSTR *body);
[propget, id(DISPID_HTTPREQUEST_RESPONSEBODY)]
HRESULT ResponseBody(
[out, retval] VARIANT *body);
[propget, id(DISPID_HTTPREQUEST_RESPONSESTREAM)]
HRESULT ResponseStream(
[out, retval] VARIANT *body);
[propget, id(DISPID_HTTPREQUEST_OPTION)]
HRESULT Option(
[in] WinHttpRequestOption option,
[out, retval] VARIANT *value);
[propput, id(DISPID_HTTPREQUEST_OPTION)]
HRESULT Option(
[in] WinHttpRequestOption option,
[in] VARIANT value);
[id(DISPID_HTTPREQUEST_WAITFORRESPONSE)]
HRESULT WaitForResponse(
[in, optional] VARIANT timeout,
[out, retval] VARIANT_BOOL *succeeded);
[id(DISPID_HTTPREQUEST_ABORT)]
HRESULT Abort();
[id(DISPID_HTTPREQUEST_SETTIMEOUTS)]
HRESULT SetTimeouts(
[in] LONG resolve_timeout,
[in] LONG connect_timeout,
[in] LONG send_timeout,
[in] LONG receive_timeout);
[id(DISPID_HTTPREQUEST_SETCLIENTCERTIFICATE)]
HRESULT SetClientCertificate(
[in] BSTR certificate);
[id(DISPID_HTTPREQUEST_SETAUTOLOGONPOLICY)]
HRESULT SetAutoLogonPolicy(
[in] WinHttpRequestAutoLogonPolicy policy);
}
[
helpstring("WinHttpRequest Component version 5.1"),
threading(apartment),
progid("WinHttp.WinHttpRequest.5.1"),
uuid(2087c2f4-2cef-4953-a8ab-66779b670495)
]
coclass WinHttpRequest { interface IWinHttpRequest; }
} /* WinHttp */

42
include/httprequestid.h Normal file
View File

@ -0,0 +1,42 @@
/*
* Copyright 2011 Hans Leidekker for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#ifndef __WINE_HTTPREQUESTID_H
#define __WINE_HTTPREQUESTID_H
#define DISPID_HTTPREQUEST_BASE 1
#define DISPID_HTTPREQUEST_OPEN (DISPID_HTTPREQUEST_BASE)
#define DISPID_HTTPREQUEST_SETREQUESTHEADER (DISPID_HTTPREQUEST_BASE + 1)
#define DISPID_HTTPREQUEST_GETRESPONSEHEADER (DISPID_HTTPREQUEST_BASE + 2)
#define DISPID_HTTPREQUEST_GETALLRESPONSEHEADERS (DISPID_HTTPREQUEST_BASE + 3)
#define DISPID_HTTPREQUEST_SEND (DISPID_HTTPREQUEST_BASE + 4)
#define DISPID_HTTPREQUEST_OPTION (DISPID_HTTPREQUEST_BASE + 5)
#define DISPID_HTTPREQUEST_STATUS (DISPID_HTTPREQUEST_BASE + 6)
#define DISPID_HTTPREQUEST_STATUSTEXT (DISPID_HTTPREQUEST_BASE + 7)
#define DISPID_HTTPREQUEST_RESPONSETEXT (DISPID_HTTPREQUEST_BASE + 8)
#define DISPID_HTTPREQUEST_RESPONSEBODY (DISPID_HTTPREQUEST_BASE + 9)
#define DISPID_HTTPREQUEST_RESPONSESTREAM (DISPID_HTTPREQUEST_BASE + 10)
#define DISPID_HTTPREQUEST_ABORT (DISPID_HTTPREQUEST_BASE + 11)
#define DISPID_HTTPREQUEST_SETPROXY (DISPID_HTTPREQUEST_BASE + 12)
#define DISPID_HTTPREQUEST_SETCREDENTIALS (DISPID_HTTPREQUEST_BASE + 13)
#define DISPID_HTTPREQUEST_WAITFORRESPONSE (DISPID_HTTPREQUEST_BASE + 14)
#define DISPID_HTTPREQUEST_SETTIMEOUTS (DISPID_HTTPREQUEST_BASE + 15)
#define DISPID_HTTPREQUEST_SETCLIENTCERTIFICATE (DISPID_HTTPREQUEST_BASE + 16)
#define DISPID_HTTPREQUEST_SETAUTOLOGONPOLICY (DISPID_HTTPREQUEST_BASE + 17)
#endif /* __WINE_HTTPREQUESTID_H */