オプションのプロトコル ドライバー サービスの構成
NDIS は、プロトコル ドライバーの ProtocolSetOptions 関数を呼び出して、プロトコル ドライバーがオプションのサービスを構成できるようにします。 NDISは、プロトコル ドライバーのNdisRegisterProtocolDriver関数の 呼び出しのコンテキスト内でProtocolSetOptionsを呼び出し ます
ProtocolSetOptions は 、オプション の ProtocolXxx 関数の既定のエントリ ポイントを登録し、他のドライバー リソースを割り当てることができます。 省略可能な ProtocolXxx 関数を登録するには、プロトコル ドライバーは NdisSetOptionalHandlers 関数を呼び出し、OptionalHandlers パラメーターで特性構造体を渡します。 この場合、プロトコル ドライバーは、NdisSetOptionalHandlers の NdisHandle パラメーターで ProtocolSetOptions の NdisDriverHandle パラメーターからハンドルを渡します。
プロトコル ドライバーは、プロトコル ドライバーが NdisOpenAdapterEx 関数からの有効なハンドルを持っている後、ProtocolBindAdapterEx 関数またはProtocolOpenAdapterCompleteEx 関数からNdisSetOptionalHandlers を呼び出すこともできます。 この場合、プロトコル ドライバーは、 NdisOpenAdapterEx の NdisBindingHandle パラメーターからNdisSetOptionalHandlersのNdisHandleパラメーターでハンドルを渡します。
この場合、有効な特性構造は次のとおりです。
NDIS_PROTOCOL_CO_CHARACTERISTICS
NDIS_CO_CLIENT_OPTIONAL_HANDLERS
NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS
NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS (NDIS 6.0 TCP のチムニー オフロードドキュメントを参照)
NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS (NDIS 6.0 TCP のチムニー オフロードドキュメントを参照)