NDK_FN_ACCEPT_EX回呼函式 (ndkpi.h)
NdkAcceptEx (NDK_FN_ACCEPT_EX) 函式會透過接聽程序物件接受連入連線要求。
語法
NDK_FN_ACCEPT_EX NdkFnAcceptEx;
NTSTATUS NdkFnAcceptEx(
[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_EX DisconnectEvent,
[in, optional] PVOID DisconnectEventContext,
[in] NDK_FN_REQUEST_COMPLETION RequestCompletion,
[in, optional] PVOID RequestContext
)
{...}
參數
[in] pNdkConnector
NDK 連接器物件的指標, (NDK_CONNECTOR) 。
[in] pNdkQp
NDK 佇列配對的指標, (QP ) 物件 (NDK_QP) 與連接產生關聯。
[in] InboundReadLimit
取用者提供的傳入進行中讀取作業數目上限,可在QP上允許。 如果基礎提供者在NDK_ADAPTER_INFO結構中有較低的 MaxInboundReadLimit 值,則提供者會將取用者提供的值限制為提供者最大值。 如果對等具有較低的 OutboundReadLimit 值,提供者會使用該值作為有效的 InboundReadLimit。 取用者可以藉由呼叫 NdkGetConnectionData 函式 (NDK_FN_GET_CONNECTION_DATA) 來擷取有效的 InboundReadLimit。
[in] OutboundReadLimit
取用者提供的傳出進行中讀取作業數目上限,可在 QP 上允許。 如果基礎提供者在 NDK_ADAPTER_INFO 結構中有較低的 MaxOutboundReadLimit 值,則提供者會將取用者提供的值限制為提供者最大值。 如果對等具有較低的 InboundReadLimit,提供者會使用該值作為有效的 OutboundReadLimit。 取用者可以藉由呼叫 NdkGetConnectionData 函式 (NDK_FN_GET_CONNECTION_DATA) 來擷取有效的 OutboundReadLimit。
[_In_reads_bytes_opt_(PrivateDataLength)] pPrivateData
以接受要求傳回的私人數據。
[in] PrivateDataLength
pPrivateData 參數中提供之私用數據的長度,以位元組為單位。
[in, optional] DisconnectEvent
選擇性中斷連線通知回呼函式 NdkDisconnectEventCallbackEx NDK_FN_DISCONNECT_EVENT_CALLBACK_EX的進入點。 當對等中斷連線時,提供者會呼叫此回呼函式。
[in, optional] DisconnectEventContext
要傳遞至 DisconnectEvent 參數中指定之回調函式之 DisconnectEventContext 參數的內容值。
[in] RequestCompletion
要求完成回呼例程 NdkRequestCompletion 的指標, (NDK_FN_REQUEST_COMPLETION) 。
[in, optional] RequestContext
要傳遞至 RequestCompletion 參數中所指定回呼函式之 Context 參數的內容值。
傳回值
NDK_FN_ACCEPT_EX函式會傳回下列其中一個NTSTATUS代碼。
傳回碼 | Description |
---|---|
STATUS_SUCCESS | 作業已成功完成。 |
STATUS_PENDING | 作業擱置中,稍後將會完成。 驅動程式會呼叫指定的 RequestCompletion (NDK_FN_REQUEST_COMPLETION) 函式來完成暫止作業。 |
STATUS_CONNECTION_ABORTED | 線上對等已放棄擱置的連線建立。 |
STATUS_IO_TIMEOUT | 對等未呼叫 CompleteConnect (NDK_FN_COMPLETE_CONNECT_EX) 函式來完成擱置的連線要求。 |
其他狀態代碼 | 發生錯誤。 |
備註
NDK 取用者會呼叫 NdkAcceptEx ,以接受接聽程式對象的連入連線要求。
NdkCreateListener (NDK_FN_CREATE_LISTENER) 函式會建立 NDK 接聽程序物件,並提供 NdkConnectEventCallback 函式 (NDK_FN_CONNECT_EVENT_CALLBACK) 。
NDK 提供者會使用 NdkConnectEventCallback 函式來通知取用者每個連入連線要求。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDKPI 2.1 和更新版本支援。 |
最低支援的伺服器 | Windows Server 2022 |
目標平台 | Windows |
標頭 | ndkpi.h (包含 Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |