https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9994a4309c666acd2856721dad0c1475b46554fd
commit 9994a4309c666acd2856721dad0c1475b46554fd Author: Oleg Dubinskiy <oleg.dubinskij2...@yandex.ua> AuthorDate: Wed Mar 25 20:59:25 2020 +0200 Commit: Mark Jansen <mark.jan...@reactos.org> CommitDate: Sun Jun 7 19:45:05 2020 +0200 [PSDK] Add some missing definitions from Wine in vss.idl Required by vssapi stubs and Wine's vsbackup.idl CORE-9511. --- sdk/include/psdk/vss.idl | 90 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/sdk/include/psdk/vss.idl b/sdk/include/psdk/vss.idl index 62335ea8408..902a6aec784 100644 --- a/sdk/include/psdk/vss.idl +++ b/sdk/include/psdk/vss.idl @@ -19,6 +19,8 @@ import "oaidl.idl"; typedef GUID VSS_ID; +typedef [unique, string] WCHAR *VSS_PWSZ; +typedef LONGLONG VSS_TIMESTAMP; typedef enum _VSS_APPLICATION_LEVEL { @@ -29,3 +31,91 @@ typedef enum _VSS_APPLICATION_LEVEL VSS_APP_FRONT_END = 3, VSS_APP_SYSTEM_RM = 4 } VSS_APPLICATION_LEVEL; + +typedef enum _VSS_BACKUP_TYPE +{ + VSS_BT_UNDEFINED, + VSS_BT_FULL, + VSS_BT_INCREMENTAL, + VSS_BT_DIFFERENTIAL, + VSS_BT_LOG, + VSS_BT_COPY, + VSS_BT_OTHER +} VSS_BACKUP_TYPE, *PVSS_BACKUP_TYPE; + +typedef enum _VSS_RESTORE_TYPE +{ + VSS_RTYPE_UNDEFINED, + VSS_RTYPE_BY_COPY, + VSS_RTYPE_IMPORT, + VSS_RTYPE_OTHER +} VSS_RESTORE_TYPE, *PVSS_RESTORE_TYPE; + +typedef enum _VSS_WRITER_STATE +{ + VSS_WS_UNKNOWN, + VSS_WS_STABLE, + VSS_WS_WAITING_FOR_FREEZE, + VSS_WS_WAITING_FOR_THAW, + VSS_WS_WAITING_FOR_POST_SNAPSHOT, + VSS_WS_WAITING_FOR_BACKUP_COMPLETE, + VSS_WS_FAILED_AT_IDENTIFY, + VSS_WS_FAILED_AT_PREPARE_BACKUP, + VSS_WS_FAILED_AT_PREPARE_SNAPSHOT, + VSS_WS_FAILED_AT_FREEZE, + VSS_WS_FAILED_AT_THAW, + VSS_WS_FAILED_AT_POST_SNAPSHOT, + VSS_WS_FAILED_AT_BACKUP_COMPLETE, + VSS_WS_FAILED_AT_PRE_RESTORE, + VSS_WS_FAILED_AT_POST_RESTORE, + VSS_WS_FAILED_AT_BACKUPSHUTDOWN, + VSS_WS_COUNT +} VSS_WRITER_STATE, *PVSS_WRITER_STATE; + +typedef enum _VSS_OBJECT_TYPE +{ + VSS_OBJECT_UNKNOWN, + VSS_OBJECT_NONE, + VSS_OBJECT_SNAPSHOT_SET, + VSS_OBJECT_SNAPSHOT, + VSS_OBJECT_PROVIDER, + VSS_OBJECT_TYPE_COUNT +} VSS_OBJECT_TYPE, *PVSS_OBJECT_TYPE; + +typedef enum _VSS_SNAPSHOT_STATE +{ + VSS_SS_UNKNOWN = 0, + VSS_SS_PREPARING, + VSS_SS_PROCESSING_PREPARE, + VSS_SS_PREPARED, + VSS_SS_PROCESSING_PRECOMMIT, + VSS_SS_PRECOMMITTED, + VSS_SS_PROCESSING_COMMIT, + VSS_SS_COMMITTED, + VSS_SS_PROCESSING_POSTCOMMIT, + VSS_SS_PROCESSING_PREFINALCOMMIT, + VSS_SS_PREFINALCOMMITTED, + VSS_SS_PROCESSING_POSTFINALCOMMIT, + VSS_SS_CREATED, + VSS_SS_ABORTED, + VSS_SS_DELETED, + VSS_SS_POSTCOMMITTED, + VSS_SS_COUNT +} VSS_SNAPSHOT_STATE, *PVSS_SNAPSHOT_STATE; + +typedef struct _VSS_SNAPSHOT_PROP +{ + VSS_ID m_SnapshotId; + VSS_ID m_SnapshotSetId; + LONG m_lSnapshotsCount; + VSS_PWSZ m_pwszSnapshotDeviceObject; + VSS_PWSZ m_pwszOriginalVolumeName; + VSS_PWSZ m_pwszOriginatingMachine; + VSS_PWSZ m_pwszServiceMachine; + VSS_PWSZ m_pwszExposedName; + VSS_PWSZ m_pwszExposedPath; + VSS_ID m_ProviderId; + LONG m_lSnapshotAttributes; + VSS_TIMESTAMP m_tsCreationTimestamp; + VSS_SNAPSHOT_STATE m_eStatus; +} VSS_SNAPSHOT_PROP, *PVSS_SNAPSHOT_PROP;