1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use shared
::minwindef
::ULONG
;
7 use shared
::rpcndr
::byte
;
8 use um
::unknwnbase
::{IUnknown, IUnknownVtbl}
;
9 use um
::winnt
::{HRESULT, LPCWSTR, LPWSTR}
;
10 ENUM
!{enum BG_CERT_STORE_LOCATION
{
11 BG_CERT_STORE_LOCATION_CURRENT_USER
= 0,
12 BG_CERT_STORE_LOCATION_LOCAL_MACHINE
= BG_CERT_STORE_LOCATION_CURRENT_USER
+ 1,
13 BG_CERT_STORE_LOCATION_CURRENT_SERVICE
= BG_CERT_STORE_LOCATION_LOCAL_MACHINE
+ 1,
14 BG_CERT_STORE_LOCATION_SERVICES
= BG_CERT_STORE_LOCATION_CURRENT_SERVICE
+ 1,
15 BG_CERT_STORE_LOCATION_USERS
= BG_CERT_STORE_LOCATION_SERVICES
+ 1,
16 BG_CERT_STORE_LOCATION_CURRENT_USER_GROUP_POLICY
= BG_CERT_STORE_LOCATION_USERS
+ 1,
17 BG_CERT_STORE_LOCATION_LOCAL_MACHINE_GROUP_POLICY
18 = BG_CERT_STORE_LOCATION_CURRENT_USER_GROUP_POLICY
+ 1,
19 BG_CERT_STORE_LOCATION_LOCAL_MACHINE_ENTERPRISE
20 = BG_CERT_STORE_LOCATION_LOCAL_MACHINE_GROUP_POLICY
+ 1,
22 RIDL
!{#[uuid(0xf1bd1079, 0x9f01, 0x4bdc, 0x80, 0x36, 0xf0, 0x9b, 0x70, 0x09, 0x50, 0x66)]
23 interface
IBackgroundCopyJobHttpOptions(IBackgroundCopyJobHttpOptionsVtbl
):
24 IUnknown(IUnknownVtbl
) {
25 fn SetClientCertificateByID(
26 StoreLocation
: BG_CERT_STORE_LOCATION
,
28 pCertHashBlob
: *mut byte
,
30 fn SetClientCertificateByName(
31 StoreLocation
: BG_CERT_STORE_LOCATION
,
35 fn RemoveClientCertificate() -> HRESULT
,
36 fn GetClientCertificate(
37 pStoreLocation
: *mut BG_CERT_STORE_LOCATION
,
38 pStoreName
: *mut LPWSTR
,
39 ppCertHashBlob
: *mut *mut byte
,
40 pSubjectName
: *mut LPWSTR
,
43 RequestHeaders
: LPCWSTR
,
46 pRequestHeaders
: *mut LPWSTR
,
55 pub const BG_SSL_ENABLE_CRL_CHECK
: ULONG
= 0x0001;
56 pub const BG_SSL_IGNORE_CERT_CN_INVALID
: ULONG
= 0x0002;
57 pub const BG_SSL_IGNORE_CERT_DATE_INVALID
: ULONG
= 0x0004;
58 pub const BG_SSL_IGNORE_UNKNOWN_CA
: ULONG
= 0x0008;
59 pub const BG_SSL_IGNORE_CERT_WRONG_USAGE
: ULONG
= 0x0010;
60 pub const BG_HTTP_REDIRECT_POLICY_MASK
: ULONG
= 0x0700;
61 pub const BG_HTTP_REDIRECT_POLICY_ALLOW_SILENT
: ULONG
= 0x0000;
62 pub const BG_HTTP_REDIRECT_POLICY_ALLOW_REPORT
: ULONG
= 0x0100;
63 pub const BG_HTTP_REDIRECT_POLICY_DISALLOW
: ULONG
= 0x0200;
64 pub const BG_HTTP_REDIRECT_POLICY_ALLOW_HTTPS_TO_HTTP
: ULONG
= 0x0800;