IWebURLAuthenticationChallenge.idl [plain text]
#ifndef DO_NO_IMPORTS
import "oaidl.idl";
import "ocidl.idl";
import "IWebError.idl";
import "IWebURLResponse.idl";
#endif
interface IWebError;
interface IWebURLAuthenticationChallengeSender;
interface IWebURLCredential;
interface IWebURLProtectionSpace;
interface IWebURLResponse;
typedef enum {
WebURLCredentialPersistenceNone,
WebURLCredentialPersistenceForSession,
WebURLCredentialPersistencePermanent
} WebURLCredentialPersistence;
[
object,
oleautomation,
uuid(5382DABA-C3C3-40c5-AA40-04079F11A844),
pointer_default(unique)
]
interface IWebURLAuthenticationChallenge : IUnknown
{
HRESULT error([out, retval] IWebError** result);
HRESULT failureResponse([out, retval] IWebURLResponse** result);
HRESULT initWithAuthenticationChallenge([in] IWebURLAuthenticationChallenge* challenge, [in] IWebURLAuthenticationChallengeSender* sender);
HRESULT initWithProtectionSpace([in] IWebURLProtectionSpace* space, [in] IWebURLCredential* proposedCredential, [in] int previousFailureCount, [in] IWebURLResponse* failureResponse, [in] IWebError* error, [in] IWebURLAuthenticationChallengeSender* sender);
HRESULT previousFailureCount([out, retval] UINT* result);
HRESULT proposedCredential([out, retval] IWebURLCredential** result);
HRESULT protectionSpace([out, retval] IWebURLProtectionSpace** result);
HRESULT sender([out, retval] IWebURLAuthenticationChallengeSender** sender);
}
[
object,
oleautomation,
uuid(9360D6FB-186C-4ff7-AE57-D1B973DA0D1C),
pointer_default(unique)
]
interface IWebURLAuthenticationChallengeSender : IUnknown
{
HRESULT cancelAuthenticationChallenge([in] IWebURLAuthenticationChallenge* challenge);
HRESULT continueWithoutCredentialForAuthenticationChallenge([in] IWebURLAuthenticationChallenge* challenge);
HRESULT useCredential([in] IWebURLCredential* credential, [in] IWebURLAuthenticationChallenge* challenge);
}
cpp_quote("#define WebURLProtectionSpaceHTTP TEXT(\"http\")")
cpp_quote("#define WebURLProtectionSpaceHTTPS TEXT(\"https\")")
cpp_quote("#define WebURLProtectionSpaceFTP TEXT(\"ftp\")")
cpp_quote("#define WebURLProtectionSpaceFTPS TEXT(\"ftps\")")
cpp_quote("#define WebURLProtectionSpaceHTTPProxy TEXT(\"http\")")
cpp_quote("#define WebURLProtectionSpaceHTTPSProxy TEXT(\"https\")")
cpp_quote("#define WebURLProtectionSpaceFTPProxy TEXT(\"ftp\")")
cpp_quote("#define WebURLProtectionSpaceSOCKSProxy TEXT(\"SOCKS\")")
cpp_quote("#define WebURLAuthenticationMethodDefault TEXT(\"WebURLAuthenticationMethodDefault\")")
cpp_quote("#define WebURLAuthenticationMethodHTTPBasic TEXT(\"WebURLAuthenticationMethodHTTPBasic\")")
cpp_quote("#define WebURLAuthenticationMethodHTTPDigest TEXT(\"WebURLAuthenticationMethodHTTPDigest\")")
cpp_quote("#define WebURLAuthenticationMethodHTMLForm TEXT(\"WebURLAuthenticationMethodHTMLForm\")")
[
object,
oleautomation,
hidden,
uuid(71D2622A-3FF2-404b-BD45-C60659C901AF),
pointer_default(unique)
]
interface IWebURLProtectionSpace : IUnknown
{
HRESULT authenticationMethod([out, retval] BSTR* result);
HRESULT host([out, retval] BSTR* result);
HRESULT initWithHost([in] BSTR host, [in] int port, [in] BSTR protocol, [in] BSTR realm, [in] BSTR authenticationMethod);
HRESULT initWithProxyHost([in] BSTR host, [in] int port, [in] BSTR proxyType, [in] BSTR realm, [in] BSTR authenticationMethod);
HRESULT isProxy([out, retval] BOOL* result);
HRESULT port([out, retval] int* result);
HRESULT protocol([out, retval] BSTR* result);
HRESULT proxyType([out, retval] BSTR* result);
HRESULT realm([out, retval] BSTR* result);
HRESULT receivesCredentialSecurely([out, retval] BOOL* result);
}
[
object,
oleautomation,
hidden,
uuid(A1E9D765-FACE-4189-BBE3-AED7EBF65EBD),
pointer_default(unique)
]
interface IWebURLCredential : IUnknown
{
HRESULT hasPassword([out, retval] BOOL* result);
HRESULT initWithUser([in] BSTR user, [in] BSTR password, [in] WebURLCredentialPersistence persistence);
HRESULT password([out, retval] BSTR* password);
HRESULT persistence([out, retval] WebURLCredentialPersistence* result);
HRESULT user([out, retval] BSTR* result);
}