3.1.4.8 AbortShadowCopySet (Opnum 7)

The AbortShadowCopySet method is invoked by the client to delete a given shadow copy set on the server.

 DWORD AbortShadowCopySet(
         [in] handle_t hBinding,
         [in] GUID ShadowCopySetId);
  

hBinding:  An RPC binding handle (as defined in [C706]).

ShadowCopySetId: The GUID of the shadow copy set.

Return Values: The method returns one of the values as specified in section 2.2.4. The most common error codes are listed in the following table.

Return value/code

Description

0x80070005

E_ACCESSDENIED

The caller does not have the permissions to perform the operation.

0x80070057

E_INVALIDARG

One or more arguments are invalid.

0x80042301

FSRVP_E_BAD_STATE

The method call is invalid because of the server's state.

0x80042501

FSRVP_E_SHADOWCOPYSET_ID_MISMATCH

The provided ShadowCopySetId does not exist.

The server MUST fail the call with E_INVALIDARG if ShadowCopySetId is set to NULL.

The server MUST look up the ShadowCopySet from GlobalShadowCopysetTable using the index ShadowCopySetId. If no shadow copy set is found, the server MUST fail the call with FSRVP_E_SHADOWCOPYSET_ID_MISMATCH.

The server MUST attempt to abort the shadow copy set. If the process returns an error, the server MUST fail the call with the same error code.

The server MUST delete ShadowCopySet from GlobalShadowCopySetTable and free the ShadowCopySet object. The server MUST set ContextSet to FALSE, set ShadowCopyClientAddress to NULL, and return ZERO to the caller.