Condividi tramite


PROTOCOL_CL_NOTIFY_CLOSE_AF funzione di callback (ndis.h)

La funzione ProtocolClNotifyCloseAf notifica a un client CoNDIS che il client deve chiudere la famiglia di indirizzi associata.

Nota È necessario dichiarare la funzione usando il tipo di PROTOCOL_CL_NOTIFY_CLOSE_AF . Per altre informazioni, vedere la sezione Esempi seguente.
 

Sintassi

PROTOCOL_CL_NOTIFY_CLOSE_AF ProtocolClNotifyCloseAf;

NDIS_STATUS ProtocolClNotifyCloseAf(
  [in] NDIS_HANDLE ClientAfContext
)
{...}

Parametri

[in] ClientAfContext

Handle fornito dal client per l'area di contesto per l'af associato. Il client ha allocato questa area di contesto e ha passato questo handle a NDIS nella relativa chiamata a Funzione NdisClOpenAddressFamilyEx .

Valore restituito

ProtocolClNotifyCloseAf può restituire una delle opzioni seguenti:

Codice restituito Descrizione
NDIS_STATUS_SUCCESS
Il client ha chiuso correttamente la famiglia di indirizzi.
NDIS_STATUS_PENDING
Il client gestisce questa richiesta in modo asincrono e chiamerà Funzione NdisClNotifyCloseAddressFamilyComplete al termine dell'operazione di chiusura.
NDIS_STATUS_XXX
Il client non ha superato la richiesta per un motivo determinato dal driver.

Commenti

The La funzione ProtocolClNotifyCloseAf è necessaria per i client CoNDIS. NDIS chiama ProtocolClNotifyCloseAf quando un gestore chiamate notifica a NDIS che la famiglia di indirizzi (AF) che il parametro ProtocolAfContext specifica deve essere chiuso. In risposta, il client deve:

  1. Chiamare la funzione NdisClDropParty tutte le volte necessario fino a quando solo una singola parte rimane attiva in ogni connessione virtuale multipoint , se il client dispone di connessioni multipoint attive.
  2. Chiamare la funzione NdisClCloseCall tutte le volte necessario per chiudere tutte le chiamate ancora aperte e associate all'AF.
  3. Chiamare la funzione NdisClDeregisterSap quante volte necessario per annullare la registrazione di tutti i punti di accesso al servizio (SAP) registrati dal client con il gestore chiamate.
  4. Chiamare il Funzione NdisClCloseAddressFamily per chiudere l'AF.
Il client può completare queste azioni in modo asincrono restituendo NDIS_STATUS_PENDING. Se il client completa la chiamata in modo asincrono, deve successivamente chiamare il Funzione NdisClNotifyCloseAddressFamilyComplete al termine dell'operazione di chiusura. Se il client non restituisce NDIS_STATUS_PENDING, l'operazione di chiusura viene completata quando ProtocolClNotifyCloseAf restituisce .

NDIS chiama ProtocolClNotifyCloseAf in IRQL <= DISPATCH_LEVEL.

Il client può usare NdisAfHandle mentre l'AF è aperto o mentre è L'operazione ProtocolClNotifyCloseAf è in sospeso. Se il parametro La funzione ProtocolClNotifyCloseAf restituisce NDIS_STATUS_PENDING, usare l'handle in Chiamata NdisClNotifyCloseAddressFamilyComplete al termine dell'operazione di chiusura.

Esempi

Per definire una funzione ProtocolClNotifyCloseAf , è innanzitutto necessario fornire una dichiarazione di funzione che identifica il tipo di funzione che si sta definendo. Windows fornisce un set di tipi di funzione per i driver. La dichiarazione di una funzione con i tipi di funzione consente di eseguire l'analisi del codice per i driver, l'SDV ( Static Driver Verifier ) e altri strumenti di verifica rilevano gli errori ed è un requisito per la scrittura dei driver per il sistema operativo Windows.

Ad esempio, per definire una funzione ProtocolClNotifyCloseAf denominata "MyClNotifyCloseAf", usare il tipo PROTOCOL_CL_NOTIFY_CLOSE_AF , come illustrato in questo esempio di codice:

PROTOCOL_CL_NOTIFY_CLOSE_AF MyClNotifyCloseAf;

Implementare quindi la funzione come segue:

_Use_decl_annotations_
NDIS_STATUS
 MyClNotifyCloseAf(
    NDIS_HANDLE  ProtocolAfContext
    )
  {...}

Il tipo di funzione PROTOCOL_CL_NOTIFY_CLOSE_AF è definito nel file di intestazione Ndis.h. Per identificare in modo più accurato gli errori quando si eseguono gli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano utilizzate le annotazioni applicate al tipo di funzione PROTOCOL_CL_NOTIFY_CLOSE_AF nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo di funzione per i driver NDIS.

Per informazioni sulle Use_decl_annotations, vedere Annotazione del comportamento della funzione.

Requisiti

Requisito Valore
Client minimo supportato Supportato in NDIS 6.0 e versioni successive.
Piattaforma di destinazione Windows
Intestazione ndis.h (include Ndis.h)
IRQL <= DISPATCH_LEVEL

Vedi anche

NdisClCloseAddressFamily

NdisClCloseCall

NdisClDeregisterSap

NdisClDropParty

NdisClNotifyCloseAddressFamilyComplete

NdisClOpenAddressFamilyEx