Partager via


WdfRequestGetRequestorMode, fonction (wdfrequest.h)

[S’applique à KMDF et UMDF]

La méthode WdfRequestGetRequestorMode retourne le mode d’accès processeur de l’initiateur d’une requête d’E/S spécifiée.

Syntaxe

KPROCESSOR_MODE WdfRequestGetRequestorMode(
  [in] WDFREQUEST Request
);

Paramètres

[in] Request

Handle vers un objet de requête de framework.

Valeur de retour

WdfRequestGetRequestorMode retourne KernelMode si l’initiateur de la requête d’E/S s’exécute en mode noyau. Sinon, cette méthode retourne UserMode. Les constantes KernelMode et UserMode sont définies dans wdm.h.

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Remarques

Pour plus d’informations sur WdfRequestGetRequestorMode, consultez Obtenir des informations sur une demande d’E/S.

Exemples

L’exemple de code suivant provient de l’exemple de pilote NDISProt. Cet exemple vérifie une adresse MAC valide si la demande d’E/S provient d’une application en mode utilisateur.

//
// To prevent applications from sending packets with spoofed MAC address,
// perform the following check to make sure the source address 
// in the packet is the same as the current MAC address of the NIC.
//
if ((WdfRequestGetRequestorMode(Request) == UserMode) && 
    !NPROT_MEM_CMP(pEthHeader->SrcAddr, pOpenContext->CurrentAddress, NPROT_MAC_ADDR_LEN))
{
    DEBUGP(DL_WARN, ("Write: Failing with invalid Source address"));
    NtStatus = STATUS_INVALID_PARAMETER;
    break;
}

Exigences

Exigence Valeur
plateforme cible Universel
version minimale de KMDF 1.0
version minimale de UMDF 2.0
d’en-tête wdfrequest.h (include Wdf.h)
bibliothèque Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)
IRQL <=DISPATCH_LEVEL
règles de conformité DDI DriverCreate(kmdf), InvalidReqAccess(kmdf), InvalidReqAccessLocal(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)