Partager via


Vérification de l’état Oplock d’une opération de IRP_MJ_LOCK_CONTROL

Les conditions suivantes s’appliquent à chaque opération de verrouillage de plage d’octets sur le flux donné.

Conditions pour un type de requête de niveau 2

  • Toujours passer à Aucun.

  • Aucun accusé de réception n’est requis ; l’opération se poursuit immédiatement.

Conditions pour un type de demande de filtre

  • L’oplock n’est pas cassé.

  • Aucun accusé de réception n’est requis et l’opération se poursuit immédiatement.

Conditions pour les types de requête Niveau 1, Batch, Read, Read-Handle, Read-Write et Read-Write-Handle

  • Arrêt sur IRP_MJ_LOCK_CONTROL lorsque l’opération de verrouillage se produit sur un FILE_OBJECT avec une clé oplock qui diffère de la clé de l’FILE_OBJECT propriétaire de l’oplock. Si l’oplock est rompu, passez à Aucun.

  • Les exigences d’accusé de réception varient comme suit :

    • Demande de lecture : aucun accusé de réception n’est requis ; l’opération se poursuit immédiatement.

    • Read-Handle et demandes read-write-handle : bien que l’accusé de réception de l’arrêt soit requis, l’opération se poursuit immédiatement (par exemple, sans attendre l’accusé de réception).

    • Demandes de niveau 1, Batch et Read-Write : un accusé de réception doit être reçu avant la poursuite des opérations.