summaryrefslogtreecommitdiffstats
path: root/third_party/rust/winapi/src/um/bits2_0.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/winapi/src/um/bits2_0.rs')
-rw-r--r--third_party/rust/winapi/src/um/bits2_0.rs51
1 files changed, 51 insertions, 0 deletions
diff --git a/third_party/rust/winapi/src/um/bits2_0.rs b/third_party/rust/winapi/src/um/bits2_0.rs
new file mode 100644
index 0000000000..15e5827086
--- /dev/null
+++ b/third_party/rust/winapi/src/um/bits2_0.rs
@@ -0,0 +1,51 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+use shared::basetsd::UINT64;
+use shared::minwindef::DWORD;
+use um::bits::{IBackgroundCopyFile, IBackgroundCopyFileVtbl};
+use um::bits1_5::{IBackgroundCopyJob2, IBackgroundCopyJob2Vtbl};
+use um::winnt::{HRESULT, LPCWSTR};
+pub const BG_LENGTH_TO_EOF: UINT64 = -1i64 as u64;
+STRUCT!{struct BG_FILE_RANGE {
+ InitialOffset: UINT64,
+ Length: UINT64,
+}}
+pub const BG_COPY_FILE_OWNER: DWORD = 1;
+pub const BG_COPY_FILE_GROUP: DWORD = 2;
+pub const BG_COPY_FILE_DACL: DWORD = 4;
+pub const BG_COPY_FILE_SACL: DWORD = 8;
+pub const BG_COPY_FILE_ALL: DWORD = 15;
+RIDL!{#[uuid(0x443c8934, 0x90ff, 0x48ed, 0xbc, 0xde, 0x26, 0xf5, 0xc7, 0x45, 0x00, 0x42)]
+interface IBackgroundCopyJob3(IBackgroundCopyJob3Vtbl):
+ IBackgroundCopyJob2(IBackgroundCopyJob2Vtbl) {
+ fn ReplaceRemotePrefix(
+ OldPrefix: LPCWSTR,
+ NewPrefix: LPCWSTR,
+ ) -> HRESULT,
+ fn AddFileWithRanges(
+ RemoteUrl: LPCWSTR,
+ LocalName: LPCWSTR,
+ RangeCount: DWORD,
+ Ranges: *mut BG_FILE_RANGE,
+ ) -> HRESULT,
+ fn SetFileACLFlags(
+ Flags: DWORD,
+ ) -> HRESULT,
+ fn GetFileACLFlags(
+ Flags: *mut DWORD,
+ ) -> HRESULT,
+}}
+RIDL!{#[uuid(0x83e81b93, 0x0873, 0x474d, 0x8a, 0x8c, 0xf2, 0x01, 0x8b, 0x1a, 0x93, 0x9c)]
+interface IBackgroundCopyFile2(IBackgroundCopyFile2Vtbl):
+ IBackgroundCopyFile(IBackgroundCopyFileVtbl) {
+ fn GetFileRanges(
+ RangeCount: *mut DWORD,
+ Ranges: *mut *mut BG_FILE_RANGE,
+ ) -> HRESULT,
+ fn SetRemoteName(
+ Val: LPCWSTR,
+ ) -> HRESULT,
+}}