Configuration des services de pilote de protocole facultatif
NDIS appelle la fonction ProtocolSetOptions d’un pilote de protocole pour permettre à un pilote de protocole de configurer des services facultatifs. NDIS appelle ProtocolSetOptions dans le contexte de l’appel du pilote de protocole à la fonction NdisRegisterProtocolDriver
ProtocolSetOptions inscrit les points d’entrée par défaut pour les fonctions ProtocolXxx facultatives et peut allouer d’autres ressources de pilote. Pour inscrire des fonctions ProtocolXxx facultatives, le pilote de protocole appelle la fonction NdisSetOptionalHandlers et transmet une structure de caractéristiques au paramètre OptionalHandlers . Dans ce cas, le pilote de protocole transmet le handle du paramètre NdisDriverHandle de ProtocolSetOptions au paramètre NdisHandle de NdisSetOptionalHandlers.
Un pilote de protocole peut également appeler NdisSetOptionalHandlers à partir de la fonction ProtocolBindAdapterEx ou de la fonction ProtocolOpenAdapterCompleteEx une fois que le pilote de protocole dispose d’un handle valide à partir de la fonction NdisOpenAdapterEx . Dans ce cas, le pilote de protocole transmet le handle du paramètre NdisBindingHandle de NdisOpenAdapterEx au paramètre NdisHandle de NdisSetOptionalHandlers.
Dans ce cas, les structures de caractéristiques valides sont les suivantes :
NDIS_PROTOCOL_CO_CHARACTERISTICS
NDIS_CO_CLIENT_OPTIONAL_HANDLERS
NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS
NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS (consultez la documentation sur le déchargement de cheminée TCP NDIS 6.0)
NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS (consultez la documentation sur le déchargement de cheminée TCP NDIS 6.0)