Condividi tramite


Funzione KsValidateConnectRequest (ks.h)

La funzione KsValidateConnectRequest convalida una richiesta di connessione e restituisce un puntatore alla struttura di connessione associata alla richiesta.

Questa funzione può essere chiamata solo in PASSIVE_LEVEL.

Sintassi

KSDDKAPI NTSTATUS KsValidateConnectRequest(
  [in]  PIRP                   Irp,
  [in]  ULONG                  DescriptorsCount,
  [in]  const KSPIN_DESCRIPTOR *Descriptor,
  [out] PKSPIN_CONNECT         *Connect
);

Parametri

[in] Irp

Puntatore a un IRP che specifica la richiesta di connessione.

[in] DescriptorsCount

Specifica il numero di descrittori pin passati.

[in] Descriptor

Specifica un puntatore all'elenco di strutture KSPIN_DESCRIPTOR .

[out] Connect

Specifica una posizione in cui posizionare un puntatore al puntatore KSPIN_CONNECT passato alla richiesta di creazione. Se KsValidateConnectRequest restituisce l'esito positivo, Connect+1 conterrà un puntatore a KSDATAFORMAT con cui è stato aperto il pin.

Valore restituito

La funzione KsValidateConnectRequest restituisce STATUS_SUCCESS se ha esito positivo o restituisce un errore.

Commenti

La funzione KsValidateConnectRequest gestisce le eccezioni di accesso alla struttura di connessione di base e convalida i requisiti di comunicazione, il supporto, il protocollo e il formato dati di base. La convalida eseguita nel formato dati passato si basa sull'elenco di intervalli di dati per il pin specificato in base al quale deve essere creata un'istanza del pin. La convalida ha esito positivo in tre istanze: se un formato principale di un intervallo è un carattere jolly, il formato principale dell'intervallo corrisponde e il sottoformatto dell'intervallo è un carattere jolly o il formato principale dell'intervallo, il sottoformatto dell'intervallo e l'identificatore di intervallo corrispondono tutte.

Il buffer viene passato a una copia del buffer di input originale, se l'originatore non era in modalità kernel ed è quindi sicuro per l'accesso.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione ks.h (include Ks.h)
Libreria Ks.lib