NDK_FN_ACCEPT Rückruffunktion (ndkpi.h)

Die Funktion NdkAccept (NDK_FN_ACCEPT) akzeptiert eine eingehende Verbindungsanforderung über ein Listenerobjekt.

Syntax

NDK_FN_ACCEPT NdkFnAccept;

NTSTATUS NdkFnAccept(
  [in]                                      NDK_CONNECTOR *pNdkConnector,
  [in]                                      NDK_QP *pNdkQp,
  [in]                                      ULONG InboundReadLimit,
  [in]                                      ULONG OutboundReadLimit,
  [_In_reads_bytes_opt_(PrivateDataLength)] const PVOID pPrivateData,
  [in]                                      ULONG PrivateDataLength,
  [in, optional]                            NDK_FN_DISCONNECT_EVENT_CALLBACK DisconnectEvent,
  [in, optional]                            PVOID DisconnectEventContext,
  [in]                                      NDK_FN_REQUEST_COMPLETION RequestCompletion,
  [in, optional]                            PVOID RequestContext
)
{...}

Parameter

[in] pNdkConnector

Ein Zeiger auf ein NDK-Connectorobjekt (NDK_CONNECTOR).

[in] pNdkQp

Ein Zeiger auf ein QP-Objekt (NDK-Warteschlangenpaar) (NDK_QP), das der Verbindung zugeordnet werden soll.

[in] InboundReadLimit

Die vom Consumer bereitgestellte maximale Anzahl von eingehenden laufenden Lesevorgängen, die für die QP zulässig sind. Wenn der zugrunde liegende Anbieter einen niedrigeren MaxInboundReadLimit-Wert in der NDK_ADAPTER_INFO-Struktur aufweist, begrenzt der Anbieter den vom Consumer bereitgestellten Wert auf das Anbietermaximum. Wenn der Peer über einen niedrigeren OutboundReadLimit-Wert verfügt, verwendet der Anbieter diesen Wert als effektiven InboundReadLimit-Wert. Der Consumer kann das effektive InboundReadLimit abrufen, indem er die NdkGetConnectionData-Funktion (NDK_FN_GET_CONNECTION_DATA) aufruft.

[in] OutboundReadLimit

Die vom Consumer bereitgestellte maximale Anzahl von ausgehenden laufenden Lesevorgängen, die für den QP zulässig sind. Wenn der zugrunde liegende Anbieter über einen niedrigeren MaxOutboundReadLimit-Wert in der NDK_ADAPTER_INFO-Struktur verfügt, begrenzt der Anbieter den angegebenen Consumerwert auf den Maximalen des Anbieters. Wenn der Peer über ein niedrigeres InboundReadLimit verfügt, verwendet der Anbieter diesen Wert als effektives OutboundReadLimit. Der Consumer kann das effektive OutboundReadLimit abrufen, indem er die NdkGetConnectionData-Funktion (NDK_FN_GET_CONNECTION_DATA) aufruft.

[_In_reads_bytes_opt_(PrivateDataLength)] pPrivateData

Ein Zeiger auf private Daten, die mit der Accept-Anforderung zurückgesendet werden.

[in] PrivateDataLength

Die Länge der privaten Daten in Bytes, die im pPrivateData-Parameter bereitgestellt werden.

[in, optional] DisconnectEvent

Ein Einstiegspunkt für eine optionale Verbindungsbenachrichtigungsrückruffunktion NdkDisconnectEventCallback (NDK_FN_DISCONNECT_EVENT_CALLBACK). Der Anbieter ruft diese Rückruffunktion auf, wenn der Peer die Verbindung trennt.

[in, optional] DisconnectEventContext

Ein Kontextwert, der an den DisconnectEventContext-Parameter der Rückruffunktion übergeben werden soll, die im DisconnectEvent-Parameter angegeben ist.

[in] RequestCompletion

Ein Zeiger auf die Rückrufroutine NdkRequestCompletion (NDK_FN_REQUEST_COMPLETION) der Anforderungsvervollständigung.

[in, optional] RequestContext

Ein Kontextwert, der an den Context-Parameter der Rückruffunktion übergeben werden soll, der im RequestCompletion-Parameter angegeben ist.

Rückgabewert

Die NDK_FN_ACCEPT-Funktion gibt einen der folgenden NTSTATUS-Codes zurück.

Rückgabecode Beschreibung
STATUS_SUCCESS
Der Vorgang wurde erfolgreich abgeschlossen.
STATUS_PENDING
Der Vorgang ist ausstehend und wird später abgeschlossen. Der Treiber ruft die angegebene RequestCompletion-Funktion (NDK_FN_REQUEST_COMPLETION) auf, um den ausstehenden Vorgang abzuschließen.
STATUS_CONNECTION_ABORTED
Der Verbindungspeer hat die ausstehende Verbindungsherstellung abgebrochen.
STATUS_IO_TIMEOUT
Der Peer hat die Funktion CompleteConnect (NDK_FN_COMPLETE_CONNECT) nicht aufgerufen, um die ausstehende Verbindungsanforderung abzuschließen.
Andere status Codes
Ein Fehler ist aufgetreten.

Hinweise

Der NDK-Consumer ruft NdkAccept auf, um eine eingehende Verbindungsanforderung über ein Listenerobjekt zu akzeptieren.

Die Funktion NdkCreateListener (NDK_FN_CREATE_LISTENER) erstellt ein NDK-Listenerobjekt und stellt eine NdkConnectEventCallback-Funktion (NDK_FN_CONNECT_EVENT_CALLBACK) bereit.

Die NdkConnectEventCallback-Funktion wird vom NDK-Anbieter verwendet, um den Consumer über jede eingehende Verbindungsanforderung zu benachrichtigen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Keine unterstützt, unterstützt in NDIS 6.30 und höher.
Unterstützte Mindestversion (Server) Windows Server 2012
Zielplattform Windows
Kopfzeile ndkpi.h (Ndkpi.h einschließen)
IRQL <=DISPATCH_LEVEL

Weitere Informationen

Anforderungen an die Lebensdauer des NDKPI-Objekts

NDK_ADAPTER_INFO

NDK_CONNECTOR

NDK_CONNECTOR_DISPATCH

NDK_FN_COMPLETE_CONNECT

NDK_FN_CONNECT_EVENT_CALLBACK

NDK_FN_CREATE_LISTENER

NDK_FN_DISCONNECT_EVENT_CALLBACK

NDK_FN_GET_CONNECTION_DATA

NDK_FN_REJECT

NDK_FN_REQUEST_COMPLETION

NDK_QP