IOCTL_EHSTOR_BANDMGMT_DELETE_BAND IOCTL (ehstorbandmgmt.h)
Uma banda configurada em um dispositivo de armazenamento é excluída com a solicitação IOCTL_EHSTOR_BANDMGMT_DELETE_BAND . Uma opção de apagamento nos parâmetros de entrada permite que a solicitação execute uma apagamento criptográfico dos dados de banda.
Código principal
Buffer de entrada
O buffer de entrada em Irp-AssociatedIrp.SystemBuffer> deve conter um DELETE_BAND_PARAMETERS e possivelmente uma estrutura AUTH_KEY.
Se o membro AuthKeyOffset do DELETE_BAND_PARAMETERS estiver definido como EHSTOR_BANDMGR_NO_KEY, os dados de entrada no buffer do sistema não precisarão incluir uma estrutura de AUTH_KEY .
Comprimento do buffer de entrada
Parameters.DeviceIoControl.InputBufferLength indica o tamanho, em bytes, do buffer, que deve ser pelo menos sizeof (DELETE_BAND_PARAMETERS) + sizeof(AUTH_KEY).
Buffer de saída
Nenhum.
Comprimento do buffer de saída
Nenhum.
Bloco de status
Um dos valores a seguir pode ser retornado no campo Status .
Valor do Status | Descrição |
---|---|
STATUS_SUCCESS | A banda foi excluída com êxito. |
STATUS_INVALID_DEVICE_REQUEST | O dispositivo de armazenamento não dá suporte ao gerenciamento de banda. |
STATUS_INVALID_BUFFER_SIZE | O tamanho do buffer de entrada está incorreto. |
STATUS_INVALID_PARAMETER | As informações no buffer de entrada são inválidas. |
STATUS_ACCESS_DENIED | A chave de autenticação é inválida ou a banda está bloqueada para gravação. |
STATUS_NOT_FOUND | A banda não foi encontrada para os critérios de seleção fornecidos. |
STATUS_IO_DEVICE_ERROR | Falha na comunicação. O dispositivo de armazenamento pode ser incompatível com protocolos de segurança. |
Comentários
Uma chave de autenticação é necessária para excluir uma banda sem executar uma apagamento primeiro. Para solicitar uma apagamento de banda, o sinalizador DELBAND_ERASE_BEFORE_DELETE é definido no membro Flags do DELETE_BAND_PARAMETERS.
Após uma exclusão de banda, todos os LBAs contidos na banda excluída são retornados para a banda global. As condições de bloqueio para a banda global agora se aplicam aos LBAs retornados à banda global. Os LBAs retornados à banda global agora estão associados à chave de mídia para a banda global e os dados criptografados nesses LBAs são irrecuperáveis.
A banda excluída permanece na tabela de banda do driver de silo, mas fica não configurada. A chave de autenticação é redefinida para o valor padrão, os metadados de banda e chave contêm zeros e os estados de bloqueio reverter para PERSISTENT_UNLOCK. A banda agora está disponível para reconfiguração com uma solicitação de IOCTL_EHSTOR_BANDMGMT_CREATE_BAND .
Excluir uma banda sem uma apagamento criptográfico não removerá a chave de criptografia dessa banda. Posteriormente, é possível criar uma banda com a mesma configuração e identificador de banda que a banda excluída. Nesse caso, os dados armazenados anteriormente na banda e não substituídos, pois a exclusão da banda anterior estará disponível. Para evitar essa situação, exclua a faixa com o sinalizador DELBAND_ERASE_BEFORE_DELETE definido em DELETE_BAND_PARAMETERS.
O IOCTL_EHSTOR_BANDMGMT_DELETE_BAND não excluirá a banda global. Uma solicitação para fazer isso retornará STATUS_INVALID_PARAMETER.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 8. |
Cabeçalho | ehstorbandmgmt.h (inclua EhStorBandMgmt.h) |