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) 來擷取 有效的輸出ReadLimit。
[_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
要傳遞至回呼函式 Context 參數的內容值,該參數是在 RequestCompletion 參數中指定。
傳回值
NDK_FN_ACCEPT_EX 函式會傳回下列其中一個NTSTATUS代碼。
傳回碼 | 描述 |
---|---|
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 |
目標平臺 | 窗戶 |
標頭 | ndkpi.h (包括 Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |