diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2008-05-15 16:34:01 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2008-05-15 16:34:01 +0000 |
commit | 4c153b24d98b49d34a17a0ba91dd959e7b9d6dc7 (patch) | |
tree | 07178ce3c1abad0f7c1f8d8b8ee5c21d35f2c4bd /winsup/cygwin/ntdll.h | |
parent | 43334bd027aed0c02a9f6fb71f995cdcd4cfc733 (diff) | |
download | cygnal-4c153b24d98b49d34a17a0ba91dd959e7b9d6dc7.tar.gz cygnal-4c153b24d98b49d34a17a0ba91dd959e7b9d6dc7.tar.bz2 cygnal-4c153b24d98b49d34a17a0ba91dd959e7b9d6dc7.zip |
* autoload.cc (LoadDLLfuncNt): Re-invent.
(NtCreateTransaction): Define.
(NtCommitTransaction): Define.
(NtRollbackTransaction): Define.
(RtlGetCurrentTransaction): Define.
(RtlSetCurrentTransaction): Define.
* ntdll.h (TRANSACTION_ALL_ACCESS): Define.
(NtCreateTransaction): Declare.
(NtCommitTransaction): Declare.
(NtRollbackTransaction): Declare.
(RtlGetCurrentTransaction): Declare.
(RtlSetCurrentTransaction): Declare.
* syscalls.cc (start_transaction): New static function to start TxF
transaction.
(stop_transaction): New static function to end TxF transaction.
(rename): Call start_transaction and stop_transaction where appropriate
on systems supporting transactions.
* wincap.h (wincaps::has_transactions): New element.
* wincap.cc: Implement above element throughout.
Diffstat (limited to 'winsup/cygwin/ntdll.h')
-rw-r--r-- | winsup/cygwin/ntdll.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/winsup/cygwin/ntdll.h b/winsup/cygwin/ntdll.h index bf901eaaa..cc2f95f77 100644 --- a/winsup/cygwin/ntdll.h +++ b/winsup/cygwin/ntdll.h @@ -77,6 +77,9 @@ #define FILE_AUTOGENERATED_DEVICE_NAME 0x00000080 #define FILE_DEVICE_SECURE_OPEN 0x00000100 +/* Transaction access rights. */ +#define TRANSACTION_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | 0x3F) + typedef enum _FILE_INFORMATION_CLASS { FileDirectoryInformation = 1, @@ -855,6 +858,7 @@ extern "C" NTSTATUS NTAPI NtAdjustPrivilegesToken (HANDLE, BOOLEAN, PTOKEN_PRIVILEGES, ULONG, PTOKEN_PRIVILEGES, PULONG); NTSTATUS NTAPI NtClose (HANDLE); + NTSTATUS NTAPI NtCommitTransaction (HANDLE, BOOLEAN); NTSTATUS NTAPI NtCreateDirectoryObject (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES); NTSTATUS NTAPI NtCreateEvent (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, @@ -876,6 +880,9 @@ extern "C" PTOKEN_GROUPS, PTOKEN_PRIVILEGES, PTOKEN_OWNER, PTOKEN_PRIMARY_GROUP, PTOKEN_DEFAULT_DACL, PTOKEN_SOURCE); + NTSTATUS NTAPI NtCreateTransaction (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, + LPGUID, HANDLE, ULONG, ULONG, ULONG, + PLARGE_INTEGER, PUNICODE_STRING); NTSTATUS NTAPI NtFsControlFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, ULONG, PVOID, ULONG, PVOID, ULONG); @@ -929,6 +936,7 @@ extern "C" NTSTATUS NTAPI NtReadFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, PVOID, ULONG, PLARGE_INTEGER, PULONG); + NTSTATUS NTAPI NtRollbackTransaction (HANDLE, BOOLEAN); NTSTATUS NTAPI NtSetEaFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG); NTSTATUS NTAPI NtSetInformationFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, FILE_INFORMATION_CLASS); @@ -957,6 +965,7 @@ extern "C" VOID NTAPI RtlFreeAnsiString (PANSI_STRING); VOID NTAPI RtlFreeOemString (POEM_STRING); VOID NTAPI RtlFreeUnicodeString (PUNICODE_STRING); + HANDLE NTAPI RtlGetCurrentTransaction (); VOID NTAPI RtlInitEmptyUnicodeString (PUNICODE_STRING, PCWSTR, USHORT); VOID NTAPI RtlInitUnicodeString (PUNICODE_STRING, PCWSTR); NTSTATUS NTAPI RtlIntegerToUnicodeString (ULONG, ULONG, PUNICODE_STRING); @@ -968,6 +977,7 @@ extern "C" BOOLEAN); VOID NTAPI RtlReleasePebLock (); VOID NTAPI RtlSecondsSince1970ToTime (ULONG, PLARGE_INTEGER); + BOOLEAN NTAPI RtlSetCurrentTransaction (HANDLE); NTSTATUS NTAPI RtlUnicodeStringToAnsiString (PANSI_STRING, PUNICODE_STRING, BOOLEAN); NTSTATUS NTAPI RtlUnicodeStringToOemString (PANSI_STRING, PUNICODE_STRING, |