NdisMSendNetBufferListsComplete 函式 (ndis.h)
迷你埠驅動程式會呼叫 NdisMSendNetBufferListsComplete 函式,將 NET_BUFFER_LIST 結構的連結清單傳回至過度配置驅動程式,並傳回傳送要求的最終狀態。
語法
void NdisMSendNetBufferListsComplete(
[in] NDIS_HANDLE MiniportAdapterHandle,
PNET_BUFFER_LIST NetBufferList,
[in] ULONG SendCompleteFlags
);
參數
[in] MiniportAdapterHandle
NDIS 傳遞至 MiniportInitializeEx 函式的迷你埠句柄。
NetBufferList
NET_BUFFER_LIST 結構連結清單的指標。 迷你埠驅動程式在先前對 MiniportSendNetBufferLists 函式的呼叫中收到NET_BUFFER_LIST結構。
[in] SendCompleteFlags
可與 OR 作業結合的 NDIS 旗標。 若要清除所有旗標,請將此成員設定為零。 此函式支援NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL旗標;如果已設定,則表示目前的 IRQL DISPATCH_LEVEL。 如需此旗標的詳細資訊,請參閱 分派 IRQL 追蹤。
傳回值
無
備註
迷你埠驅動程式會呼叫 NdisMSendNetBufferListsComplete 來完成傳送 NDIS 對驅動程式 的 MiniportSendNetBufferLists 函式提出的要求。 迷你埠驅動程式會指定與已完成傳送要求相關聯的 NET_BUFFER_LIST 結構連結清單。 當傳送要求的狀態擱置時,迷你埠驅動程式會保留NET_BUFFER_LIST結構的擁有權,以及與NET_BUFFER_LIST結構相關聯的所有通訊協定配置資源。
迷你埠驅動程式呼叫 NdisMSendNetBufferListsComplete 之後,NDIS 會呼叫 NdisSendNetBufferListsComplete 驅動程序的 ProtocolSendNetBufferListsComplete 函式,以起始傳送要求。
迷你埠驅動程式可以依任何順序完成傳送要求。 例如,迷你埠驅動程式可以從多個 MiniportSendNetBufferLists 呼叫串連NET_BUFFER_LIST結構清單,或從 MiniportSendNetBufferLists 呼叫分割清單。 不過,迷你埠驅動程式不得修改與NET_BUFFER_LIST結構相關聯的 NET_BUFFER 結構清單。
迷你埠驅動程序必須在 NetBufferLists 參數所指定之每個NET_BUFFER_LIST結構的 Status 成員中設定下列其中一個狀態代碼:
結構 | Description |
---|---|
NDIS_STATUS_SUCCESS | NET_BUFFER_LIST結構和相關NET_BUFFER結構描述的所有網路數據都已成功處理傳輸。 例如,迷你埠驅動程式會將數據複製到佇列或數據已經傳輸。 |
NDIS_STATUS_INVALID_LENGTH | 與此NET_BUFFER_LIST結構相關聯的某些NET_BUFFER結構中的數據大小對基礎 NIC 而言太大。 |
NDIS_STATUS_RESOURCES | 此NET_BUFFER_LIST結構的傳送要求因為資源不足而失敗。 |
NDIS_STATUS_PAUSED | 迷你埠配接器處於暫停狀態,如 MiniportPause 函式的參考頁面上所述。 |
NDIS_STATUS_SEND_ABORTED | NDIS 稱為 MiniportCancelSend 函式,以取消此NET_BUFFER_LIST結構的傳送作業。 |
NDIS_STATUS_RESET_IN_PROGRESS | 迷你埠驅動程序因為重設而中止傳送要求。 |
NDIS_STATUS_FAILURE | 迷你埠驅動程序因為先前所述的其他原因而失敗傳送要求。 例如,迷你埠驅動程式可能會因為硬體失敗而失敗傳送要求。 |
迷你埠驅動程式對 NdisMSendNetBufferListsComplete 的呼叫不一定表示傳送要求的數據已透過網路傳輸。 數據可能會在 NIC 硬體中排入佇列。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平台 | Universal |
標頭 | ndis.h (包括 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_SendRcv_Function (ndis) 、NdisTimedDataHang、NdisTimedDataSend |