Solicitudes OID de MCM de CoNDIS
Al igual que otros administradores de llamadas de CoNDIS, los administradores de llamadas de miniporte (MCM) pueden consultar o establecer los parámetros operativos de los controladores de cliente de CoNDIS. Los controladores de cliente de CoNDIS pueden consultar o establecer los parámetros del administrador de llamadas o los parámetros del controlador de miniporte de un MCM.
Para originar una solicitud de OID a un controlador cliente de CoNDIS, un MCM llama a la función NdisMCmOidRequest .
En la ilustración siguiente se muestra una solicitud de OID que se originó en un MCM.
Después de que un controlador MCM llame a la función NdisMCmOidRequest , NDIS llama a la función ProtocolCoOidRequest del controlador cliente.
Para completar de forma sincrónica, NdisMCmOidRequest devuelve NDIS_STATUS_SUCCESS o un estado de error. Para completar de forma asincrónica, NdisMCmOidRequest devuelve NDIS_STATUS_PENDING.
Si NdisMCmOidRequest devuelve NDIS_STATUS_PENDING, NDIS llama a la función ProtocolCoOidRequestComplete del MCM después de que los controladores del cliente completen la solicitud OID llamando a la función NdisCoOidRequestComplete . En este caso, NDIS pasa los resultados de la solicitud en el parámetro OidRequest de ProtocolCoOidRequestComplete. NDIS pasa el estado final de la solicitud en el parámetro Status de ProtocolCoOidRequestComplete.
Si NdisMCmOidRequest devuelve NDIS_STATUS_SUCCESS, devuelve los resultados de una solicitud de consulta en la estructura NDIS_OID_REQUEST en el parámetro OidRequest . En este caso, NDIS no llama a la función ProtocolCoOidRequestComplete de MCM.
Los controladores de cliente de CoNDIS pueden consultar o establecer los parámetros operativos del administrador de llamadas o los parámetros operativos de miniporte de MCM. Para originar una solicitud de OID para los parámetros del administrador de llamadas MCM, un cliente llama a la función NdisCoOidRequest y proporciona un identificador de familia de direcciones (AF) válido en el parámetro NdisAfHandle . Para originar una solicitud OID para los parámetros de miniporte de MCM, un cliente llama a la función NdisCoOidRequest y establece el identificador af en NULL.
Después de que un cliente llame a la función NdisCoOidRequest , NDIS llama a la función MiniportCoOidRequest o a la función ProtocolCoOidRequest del controlador MCM.
En la ilustración siguiente se muestra una solicitud de OID para los parámetros de miniporte del MCM.
En la ilustración siguiente se muestra una solicitud de OID para los parámetros del administrador de llamadas del MCM.
Para completar de forma sincrónica, NdisCoOidRequest devuelve NDIS_STATUS_SUCCESS o un estado de error. Para completar de forma asincrónica, ProtocolCoOidRequest o MiniportCoOidRequest devuelve NDIS_STATUS_PENDING.
Si ProtocolCoOidRequest o MininportCoOidRequest devuelve NDIS_STATUS_PENDING, NDIS llama a la función ProtocolCoOidRequestComplete del cliente después de que mcM complete la solicitud OID llamando a la función NdisMCoOidRequestComplete o NdisMCmOidRequestComplete . En este caso, NDIS pasa los resultados de la solicitud en el parámetro OidRequest de ProtocolCoOidRequestComplete. NDIS pasa el estado final de la solicitud en el parámetro Status de ProtocolCoOidRequestComplete.
Si NdisCoOidRequest devuelve NDIS_STATUS_SUCCESS, devuelve los resultados de una solicitud de consulta en la estructura NDIS_OID_REQUEST en el parámetro OidRequest . En este caso, NDIS no llama a la función ProtocolCoOidRequestComplete del cliente.