Responder a conjuntos y consultas en un controlador intermedio
Dado que un controlador intermedio de NDIS está enlazado a un controlador NDIS demasiado excesivo, también puede recibir consultas y conjuntos de su función MiniportOidRequest . En algunos casos, el controlador intermedio simplemente pasa estas solicitudes al controlador de minipuerto subyacente. De lo contrario, puede responder a estas consultas y conjuntos según corresponda al medio que exporta en su borde superior. Tenga en cuenta que un controlador intermedio siempre debe pasar a través de las solicitudes OID_PNP_Xxx que recibe de un controlador NDIS excesivo al controlador de minipuerto subyacente. Los controladores intermedios de NDIS 6.0 también pueden cancelar las solicitudes de OID.
Para reenviar una solicitud a los controladores subyacentes, un controlador intermedio NDIS llama a NdisAllocateCloneOidRequest para asignar una estructura de NDIS_OID_REQUEST clonada. El controlador llama a la función NdisOidRequest para enviar la solicitud. Una vez completada la solicitud, el controlador debe llamar a la función NdisFreeCloneOidRequest para liberar la estructura de NDIS_OID_REQUEST.
Para cancelar una solicitud de OID, llame a la función NdisCancelOidRequest .
Normalmente, los OID generales que recibe un controlador intermedio son los mismos o similares a los que el controlador intermedio envía al controlador de miniporte subyacente. Los identificadores de identificación específicos del medio que recibe un controlador intermedio son el tipo del medio que requiere el controlador de sobreasignación.
Si un controlador intermedio procesa la configuración de un OID en lugar de pasar la solicitud set a un miniport subyacente, debe validar el valor que se va a establecer. Si el controlador intermedio determina que el valor que se va a establecer está fuera de los límites, debe producir un error en la solicitud set.
Nota Si un controlador intermedio modifica el contenido de los datos de red TCP que reenvía a un controlador de miniporte subyacente, de modo que no se puedan realizar funciones de descarga TCP en los datos de red, el controlador intermedio debe responder a OID_TCP_OFFLOAD_CURRENT_CONFIG consultas con un estado de NDIS_STATUS_NOT_SUPPORTED en lugar de pasar la solicitud a la miniport subyacente.
Para obtener información adicional sobre cómo responder a conjuntos y consultas en un controlador intermedio, vea Obtener y establecer información del controlador miniportador y compatibilidad con NDIS para WMI.