3.2.5.5.7.4 Receiving a Convert to VHD Set Request

When the server receives a request in which the OperationType is SvhdxMetaOperationTypeConvertToVHDSet, the request processing proceeds as follows:

If the input buffer is less than 44 (size of SVHDX_TUNNEL_OPERATION_HEADER + size of the fixed part of SVHDX_META_OPERATION_START_REQUEST + size of the fixed part of SVHDX_META_OPERATION_CONVERT_TO_VHDSET) + DestinationVhdSetNameLength bytes, the server MUST fail the request with STATUS_BUFFER_TOO_SMALL. 

If the DestinationFileNameLength is not the BYTE-size of the Unicode UTF-16 string or the DestinationFileName does not contain the NULL terminating character the server MUST fail the request with STATUS_INVALID_PARAMETER.<23>

If the DestinationVhdSetName field doesn't contain the .vhds extension, the server MUST fail the request with STATUS_INVALID_PARAMETER.

The server MUST issue a convert to VHD set request to the virtual SCSI disk in an implementation-specific manner.

The server MUST set the Status field of the SVHDX_TUNNEL_OPERATION_HEADER to the error returned by the virtual SCSI disk, and return the header to the client.