NDIS_SWITCH_SET_NET_BUFFER_LIST_SOURCE回呼函式 (ndis.h)
SetNetBufferListSource 函式會設定 NET_BUFFER_LIST 結構所指定封包的 Hyper-V 可延伸交換器來源埠標識碼和網路適配器索引。
語法
NDIS_SWITCH_SET_NET_BUFFER_LIST_SOURCE NdisSwitchSetNetBufferListSource;
NDIS_STATUS NdisSwitchSetNetBufferListSource(
[in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
PNET_BUFFER_LIST NetBufferList,
[in] NDIS_SWITCH_PORT_ID PortId,
[in] NDIS_SWITCH_NIC_INDEX NicIndex
)
{...}
參數
[in] NdisSwitchContext
NDIS_SWITCH_CONTEXT值,其中包含附加 Hyper-V 可延伸交換器擴充功能的可延伸交換器模組句柄。 當擴充功能呼叫 NdisFGetOptionalSwitchHandlers時,此句柄會透過 NdisSwitchContext 參數傳回。
NetBufferList
單一封包 NET_BUFFER_LIST 結構的指標。
[in] PortId
NDIS_SWITCH_PORT_ID值,指定可延伸交換器上來源埠的唯一標識碼。
[in] NicIndex
NDIS_SWITCH_NIC_INDEX值,指定連接到 PortId 參數所指定之可延伸交換器埠的網路適配器索引。
如需NDIS_SWITCH_NIC_INDEX值的詳細資訊,請參閱 網路配接器索引值。
傳回值
如果呼叫成功,函式會傳回NDIS_STATUS_SUCCESS。 否則,它會傳回在 Ndis.h 中定義的NDIS_STATUS_Xxx 錯誤碼。
言論
可延伸交換器擴充功能會呼叫 SetNetBufferListSource 函式,以在封包的 NET_BUFFER_LIST 結構中設定來源埠標識符和網路適配器索引。 擴充功能會針對下列類型的封包執行此動作:
-
擴充功能已配置給傳送或接收作業的新封包。
注意:在擴充功能呼叫已配置封包 SetNetBufferListSource 之前,它必須呼叫 AllocateNetBufferListForwardingContext。
- 延伸模組從正在篩選的原始封包複製的重複封包。 擴充功能會呼叫 NdisAllocateCloneNetBufferList來複製封包。
例如,具有 NDIS_SWITCH_DEFAULT_PORT_ID 來源埠標識符的封包會受到信任,並略過許多可延伸的交換器埠原則。 這些原則包括訪問控制清單(ACL)和服務品質(QoS)。 如果擴充功能指定封包的非預設來源埠,這可讓該埠的原則套用至封包。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | NDIS 6.30 和更新版本支援。 |
目標平臺 | 桌面 |
標頭 | ndis.h (包括 Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
另請參閱
AllocateNetBufferListForwardingContext