1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
// 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 //! FFI bindings to ktmw32. use shared::guiddef::LPGUID; use shared::minwindef::{BOOL, DWORD}; use um::minwinbase::LPSECURITY_ATTRIBUTES; use um::winnt::{HANDLE, LPWSTR}; extern "system" { pub fn CreateTransaction( lpTransactionAttributes: LPSECURITY_ATTRIBUTES, UOW: LPGUID, CreateOptions: DWORD, IsolationLevel: DWORD, IsolationFlags: DWORD, Timeout: DWORD, Description: LPWSTR, ) -> HANDLE; // pub fn OpenTransaction(); pub fn CommitTransaction( TransactionHandle: HANDLE, ) -> BOOL; // pub fn CommitTransactionAsync(); pub fn RollbackTransaction( TransactionHandle: HANDLE, ) -> BOOL; // pub fn RollbackTransactionAsync(); // pub fn GetTransactionId(); // pub fn GetTransactionInformation(); // pub fn SetTransactionInformation(); // pub fn CreateTransactionManager(); // pub fn OpenTransactionManager(); // pub fn OpenTransactionManagerById(); // pub fn RenameTransactionManager(); // pub fn RollforwardTransactionManager(); // pub fn RecoverTransactionManager(); // pub fn GetCurrentClockTransactionManager(); // pub fn GetTransactionManagerId(); // pub fn CreateResourceManager(); // pub fn OpenResourceManager(); // pub fn RecoverResourceManager(); // pub fn GetNotificationResourceManager(); // pub fn GetNotificationResourceManagerAsync(); // pub fn SetResourceManagerCompletionPort(); // pub fn CreateEnlistment(); // pub fn OpenEnlistment(); // pub fn RecoverEnlistment(); // pub fn GetEnlistmentRecoveryInformation(); // pub fn GetEnlistmentId(); // pub fn SetEnlistmentRecoveryInformation(); // pub fn PrepareEnlistment(); // pub fn PrePrepareEnlistment(); // pub fn CommitEnlistment(); // pub fn RollbackEnlistment(); // pub fn PrePrepareComplete(); // pub fn PrepareComplete(); // pub fn ReadOnlyEnlistment(); // pub fn CommitComplete(); // pub fn RollbackComplete(); // pub fn SinglePhaseReject(); }