3.1.4.13 Application Requests Creating a CDP Snapshot

The application provides:

  • A handle to the Open identifying a VHD set.

  • TransactionId: A GUID used to uniquely identify the start operation.

  • Stage 1 value

  • Stage 2 value

  • Stage 3 value

  • Stage 4 value

  • Stage 5 value

  • Stage 6 value

  • SnapshotId: A GUID to uniquely identify the snapshot.

  • LogFileID: A GUID to identify the log file.

The client MUST construct an SVHDX_META_OPERATION_START_REQUEST structure, as specified in section 2.2.4.17, as follows:

The SVHDX_TUNNEL_OPERATION_HEADER MUST be initialized as follows:

  • The OperationCode MUST be set to RSVD_TUNNEL_META_OPERATION_START.

  • The Status field MUST be set to zero.

  • The RequestId field MUST be set to RequestIdentifier.

The SVHDX_META_OPERATION_START_REQUEST MUST be initialized as follows:

  • The TransactionId field is set to the application-provided TransactionId.

  • The OperationType field is set to SvhdxMetaOperationTypeCreateSnapshot.

  • The Data field is set to an SVHDX_META_OPERATION_CREATE_SNAPSHOT structure initialized as follows:

    • The SnapshotType field is set to SvhdxSnapshotTypeCDP.

    • The Stage1 field is set to the stage 1 value provided by the application.

    • The Stage2 field is set to the stage 2 value provided by the application.

    • The Stage3 field is set to the stage 3 value provided by the application.

    • The Stage4 field is set to the stage 4 value provided by the application.

    • The Stage5 field is set to the stage 5 value provided by the application.

    • The Stage6 field is set to the stage 6 value provided by the application.

    • The SnapshotId field is set to the SnapshotId provided by application.

    • The ParametersPayloadSize field MUST be set to 0.

    • The CdpParameters field is set to an SVHDX_META_OPERATION_CREATE_CDP_PARAMETER structure initialized as follows:

      • The LogFileNameOffset field is set to the byte offset of the LogFileName field.

      • The LogFileId field is set to the LogFileID provided by the application.

      • The LogFileName field MUST be set to an empty array.

The client MUST call the interface specified in [MS-SMB2] section 3.2.4.20.11, supplying the following input parameters:

  • Application-provided handle to identify the Open.

  • Control code: FSCTL_SVHDX_ASYNC_TUNNEL_REQUEST.

  • SVHDX_META_OPERATION_START_REQUEST structure as payload.