Funzione NdisSetOptionalHandlers (ndis.h)
I driver NDIS possono chiamare la funzione NdisSetOptionalHandlers per impostare o modificare i punti di ingresso delle funzioni driver.
Sintassi
NDIS_STATUS NdisSetOptionalHandlers(
NDIS_HANDLE NdisHandle,
PNDIS_DRIVER_OPTIONAL_HANDLERS OptionalHandlers
);
Parametri
NdisHandle
Handle NDIS che identifica un driver o un'istanza del driver.
Per un driver di protocollo, si tratta del valore NdisDriverHandle passato alla funzione ProtocolSetOptions o al valore NdisBindingHand le ottenuto chiamando la funzione NdisOpenAdapterEx.
Per un driver miniport, questo è il valore NdisDriverHandle passato alla funzione MiniportSetOptions
Per un driver di filtro, si tratta del valore NdisDriverHandle passato alla funzione FilterSetOptions o al valore NdisFilterHandle passato alla funzione FilterAttach.
OptionalHandlers
Puntatore a una delle strutture NDIS seguenti:
NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_FILTER_PARTIAL_CHARACTERISTICS NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICSValore restituito
NdisSetOptionalHandlers restituisce uno dei valori di stato seguenti:
Codice restituito | Descrizione |
---|---|
|
NdisSetOptionalHandlers restituisce NDIS_STATUS_SUCCESS se imposta i punti di ingresso del driver. |
|
NdisSetOptionalHandlers non è riuscito a causa di risorse insufficienti. |
|
NdisSetOptionalHandlers non riuscito perché il driver miniport non ha specificato che supporta NDIS 6.0 o versione successiva. Un driver miniport specifica la versione NDIS quando chiama funzione NdisMRegisterMiniportDriver. |
|
NdisSetOptionalHandlers restituisce NDIS_STATUS_FAILURE se nessuno dei valori precedenti viene applicato. |
Osservazioni
Un driver NDIS può chiamare NdisSetOptionalHandlers per sovrascrivere i punti di ingresso predefiniti. I tipi di struttura passati a OptionalHandlers variano in base al tipo di driver.
I driver di protocollo possono chiamare NdisSetOptionalHandlers nel contesto della funzione ProtocolSetOptions. Come opzione, i driver di protocollo possono chiamare NdisSetOptionalHandlers dalla funzione ProtocolBindAdapterEx o dalla funzione funzione protocolOpenAdapterCompleteEx dopo che il driver del protocollo ha un handle valido dalla funzione NdisOpenAdapterEx.
In questo caso, le strutture valide sono:
NDIS_PROTOCOL_CO_CHARACTERISTICS NDIS_CO_CLIENT_OPTIONAL_HANDLERS NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICSPer altre informazioni sulle 2 strutture di offload del camino, vedere documentazione di offload del camino TCP 6.0 NDIS 6.0.
I driver Miniport chiamano NdisSetOptionalHandlers nel contesto della funzione MiniportSetOptions.
In questo caso, le strutture valide sono:
NDIS_MINIPORT_CO_CHARACTERISTICS NDIS_MINIPORT_PNP_CHARACTERISTICSNDIS_MINIPORT_SS_CHARACTERISTICS
NDIS_NDK_PROVIDER_CHARACTERISTICS
NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS NDIS_SHARED_MEMORY_PROVIDER_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICSPer altre informazioni sulle 2 strutture di offload del camino, vedere documentazione di offload del camino TCP 6.0 NDIS 6.0.
I driver di filtro chiamano NdisSetOptionalHandlers nel contesto della funzione FilterSetOptions.
Nella versione corrente di Windows non sono disponibili servizi driver di filtro facoltativi.
I driver di filtro possono chiamare NdisSetOptionalHandlers per un modulo di filtro. I driver di filtro chiamano NdisSetOptionalHandlers nel contesto di funzione di FilterSetModuleOptions.
In questo caso, le strutture valide sono:
NDIS_FILTER_PARTIAL_CHARACTERISTICSNDIS_CLIENT_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_CLIENT_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS
NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS
Per altre informazioni sulle 4 strutture di offload del camino, vedere documentazione sull'offload del camino TCP 6.0.