NdisSetOptionalHandlers, fonction (ndis.h)

Les pilotes NDIS peuvent appeler la fonction NdisSetOptionalHandlers pour définir ou modifier les points d’entrée des fonctions de pilote.

Syntaxe

NDIS_STATUS NdisSetOptionalHandlers(
  NDIS_HANDLE                    NdisHandle,
  PNDIS_DRIVER_OPTIONAL_HANDLERS OptionalHandlers
);

Paramètres

NdisHandle

Handle NDIS qui identifie un pilote ou un pilote instance.

Pour un pilote de protocole, il s’agit de la valeur NdisDriverHandle passée à la fonction ProtocolSetOptions ou de la valeur NdisBindingHandle obtenue en appelant la fonction NdisOpenAdapterEx .

Pour un pilote miniport, il s’agit de la valeur NdisDriverHandle passée à la fonction MiniportSetOptions

Pour un pilote de filtre, il s’agit de la valeur NdisDriverHandle passée à la fonction FilterSetOptions ou de la valeur NdisFilterHandle passée à la fonction FilterAttach .

OptionalHandlers

Pointeur vers l’une des structures NDIS suivantes :

NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS

NDIS_MINIPORT_SS_CHARACTERISTICS

NDIS_NDK_PROVIDER_CHARACTERISTICS

NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS

Valeur retournée

NdisSetOptionalHandlers retourne l’une des valeurs de status suivantes :

Code de retour Description
NDIS_STATUS_SUCCESS

NdisSetOptionalHandlers retourne NDIS_STATUS_SUCCESS s’il définit les points d’entrée du pilote.

NDIS_STATUS_RESOURCES

Les gestionnaires NdisSetOptionalHandlers ont échoué en raison de ressources insuffisantes.

NDIS_STATUS_NOT_SUPPORTED

Échec de NdisSetOptionalHandlers , car le pilote miniport n’a pas spécifié qu’il prend en charge NDIS 6.0 ou version ultérieure. Un pilote miniport spécifie sa version NDIS lorsqu’il appelle le Fonction NdisMRegisterMiniportDriver .

NDIS_STATUS_FAILURE

NdisSetOptionalHandlers retourne NDIS_STATUS_FAILURE si aucune des valeurs précédentes ne s’applique.

Remarques

Un pilote NDIS peut appeler NdisSetOptionalHandlers pour remplacer ses points d’entrée par défaut. Les types de structure passés dans OptionalHandlers varient en fonction du type de pilote.

Les pilotes de protocole peuvent appeler NdisSetOptionalHandlers dans le contexte de la fonction ProtocolSetOptions . En option, les pilotes de protocole peuvent appeler NdisSetOptionalHandlers à partir de la fonction ProtocolBindAdapterEx ou du Fonction ProtocolOpenAdapterCompleteEx après que le pilote de protocole a un handle valide de la fonction NdisOpenAdapterEx .

Dans ce cas, les structures valides sont les suivantes :

NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS

Pour plus d’informations sur les 2 structures de déchargement de cheminées, consultez la documentation sur le déchargement de cheminée TCP NDIS 6.0.

Les pilotes Miniport appellent NdisSetOptionalHandlers dans le contexte de la fonction MiniportSetOptions .

Dans ce cas, les structures valides sont les suivantes :

NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICS

NDIS_MINIPORT_SS_CHARACTERISTICS

NDIS_NDK_PROVIDER_CHARACTERISTICS

NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS

Pour plus d’informations sur les 2 structures de déchargement de cheminées, consultez la documentation sur le déchargement de cheminée TCP NDIS 6.0.

Les pilotes de filtre appellent NdisSetOptionalHandlers dans le contexte de la fonction FilterSetOptions .

Il n’existe aucun service de pilote de filtre facultatif dans la version actuelle de Windows.

Les pilotes de filtre peuvent appeler NdisSetOptionalHandlers pour un module de filtre. Les pilotes de filtre appellent NdisSetOptionalHandlers dans le contexte du Fonction FilterSetModuleOptions .

Dans ce cas, les structures valides sont les suivantes :

NDIS_FILTER_PARTIAL_CHARACTERISTICS

NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS

NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS

NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS

NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS

Pour plus d’informations sur les 4 structures de déchargement de cheminées, consultez la documentation sur le déchargement de cheminée TCP NDIS 6.0.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
Plateforme cible Universal
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL PASSIVE_LEVEL
Règles de conformité DDI Irql_Miscellaneous_Function(ndis)

Voir aussi

FilterAttach

FilterRestart

FilterSetOptions

MiniportSetOptions

NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

ProtocolBindAdapterEx

ProtocolOpenAdapterCompleteEx

ProtocolSetOptions