From c6b5651dc41a2cb3e7576bfd48eb92ab5d5edf11 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Sun, 10 Feb 2019 22:48:08 +0000 Subject: [PATCH] include: Add more VSS_* typedefs. Signed-off-by: Alistair Leslie-Hughes Signed-off-by: Alexandre Julliard --- include/vss.idl | 90 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/include/vss.idl b/include/vss.idl index 62335ea8408..902a6aec784 100644 --- a/include/vss.idl +++ b/include/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;