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 demande d’E/S spécifiée.

Syntaxe

KPROCESSOR_MODE WdfRequestGetRequestorMode(
  [in] WDFREQUEST Request
);

Paramètres

[in] Request

Handle pour un objet de requête d’infrastructure.

Valeur retournée

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

Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.

Remarques

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

Exemples

L’exemple de code suivant provient de l’exemple de pilote NDISProt . Cet exemple recherche 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;
}

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
Version UMDF minimale 2.0
En-tête wdfrequest.h (inclure 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)