Dela via


CoNDIS Miniport Driver OID-begäranden

NDIS anropar en CoNDIS-miniportdrivrutins MiniportCoOidRequest- funktion för att skicka en OID-begäran för att hämta eller ställa in information i drivrutinen. NDIS anropar MiniportCoOidRequest antingen för egen räkning eller för en överliggande drivrutin som anropade funktionen NdisCoOidRequest.

NDIS skickar MiniportCoOidRequest en pekare till en NDIS_OID_REQUEST struktur som innehåller information om begäran. Begärandestrukturen innehåller en OID_Xxx identifierare som anger typen av begäran och andra medlemmar för att definiera begärandedata.

Den Timeout- medlemmet anger en tidsgräns, uttryckt i sekunder, för begäran. NDIS kan återställa drivrutinen eller avbryta förfrågan om tidsgränsen löper ut innan drivrutinen slutför begäran.

Medlemmen RequestId anger en valfri identifierare för begäran. Miniportdrivrutiner kan ange RequestId medlem i en statusindikering till det värde som drivrutinen hämtade från RequestId medlem i en associerad OID-begäran. Vanligtvis kan miniportdrivrutiner ignorera den här medlemmen. Om en drivrutin måste ange den här medlemmen måste drivrutinen använda ett av de nödvändiga värdena, som anges på referenssidan för den specifika OID:en. För mer information om statusindikationer, se CoNDIS Miniport Driver Status Indications.

En miniportdrivrutin kan slutföra en OID-begäran synkront genom att returnera statusen lyckad eller misslyckad. Drivrutinen kan slutföra en OID-begäran asynkront genom att återge NDIS_STATUS_PENDING. I det här fallet måste drivrutinen anropa funktionen NdisMCoOidRequestComplete för att slutföra åtgärden.

Om funktionen MiniportCoOidRequest returnerar NDIS_STATUS_PENDING kan NDIS anropa MiniportCoOidRequest med en annan begäran för adaptern innan den väntande begäran har slutförts. Observera att detta skiljer sig från det anslutningslösa NDIS-gränssnittet där alla OID-begäranden serialiseras.

NDIS kan anropa en miniportdrivrutins MiniportCancelOidRequest- funktion för att avbryta en CoNDIS OID-begäran.