W_INITIATE_OFFLOAD_HANDLER fungsi panggilan balik (ndischimney.h)

[Fitur offload cerobong TCP tidak digunakan lagi dan tidak boleh digunakan.]

MiniportInitiateOffload membongkar status cerobong TCP dari tumpukan host.

Sintaks

W_INITIATE_OFFLOAD_HANDLER WInitiateOffloadHandler;

void WInitiateOffloadHandler(
  [in]      IN NDIS_HANDLE MiniportAdapterContext,
  [in, out] IN OUT PNDIS_MINIPORT_OFFLOAD_BLOCK_LIST OffloadBlockList
)
{...}

Parameter

[in] MiniportAdapterContext

Handel ke area konteks yang dialokasikan target offload tempat target offload mempertahankan informasi status tentang instans adaptor ini. Driver miniport menyediakan handel ini ke NDIS ketika dipanggil NdisMSetMiniportAttributes dari Fungsi MiniportInitializeEx .

[in, out] OffloadBlockList

Penunjuk ke NDIS_MINIPORT_OFFLOAD_BLOCK_LIST struktur yang dapat menjadi struktur yang berdiri sendiri atau akar daftar tertaut dari struktur tersebut.

Nilai kembali

Tidak ada

Keterangan

Fungsi MiniportInitiateOffload menyimpan penunjuk OffloadBlockList lalu kembali. Target offload selalu menyelesaikan operasi offload secara asinkron dengan memanggil NdismInitiateOffloadComplete. Pohon status yang diarahkan oleh penunjuk OffloadBlockList valid hingga driver miniport memanggil NdisMInitiateOffloadComplete.

Setelah kembali dari fungsi MiniportInitiateOffload , target offload membongkar status dari pohon status. Struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST yang anggota MiniportOffloadContext-nya menunjuk ke lokasi memori yang berisi nilai NULL diikuti oleh status yang akan dilepas. Untuk informasi selengkapnya, lihat Menyimpan dan Mereferensikan Status Terbongkar. Anggota Header dari struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST berisi anggota Jenis yang menentukan jenis status offload, dan secara implikasi, struktur atau struktur status offload , yang segera mengikuti struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST dalam memori.

Target offload membongkar status offload yang terkait dengan struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST ke area konteks offload. Untuk informasi selengkapnya, lihat Menyimpan dan Mereferensikan Status Terbongkar.

Saat status offloading, target offload harus melintasi pohon negara dengan cara depth-first/breadth-next. Sangat penting bahwa target offload membongkar status dengan cara ini.

Beberapa struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST di pohon status yang diteruskan ke fungsi MiniportInitiateOffload dapat menjadi tempat penampung atau menghubungkan simpul yang tidak memiliki status yang menyertainya untuk dibongkar. Untuk informasi selengkapnya, lihat Tempat Penampung, Linker, dan Offload Baru.

Target offload dapat menerima data buffer dari tumpukan host untuk koneksi yang sedang dilepas. Target offload harus menyalin data ini ke dalam buffernya sendiri sebelum menyelesaikan operasi offload. Untuk informasi selengkapnya tentang memproses data penerima yang di-buffer, lihat Menangani Buffered Menerima Data Selama dan Setelah Operasi Offload.

Untuk setiap objek status yang dilepaskan, target offload juga harus menyediakan nilai PVOID yang mereferensikan area konteks offload tempat target offload menyimpan objek status. Target offload menulis nilai PVOID ini ke lokasi memori yang diacu oleh anggota *MiniportOffloadContext dari struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST yang terkait dengan status. Jika target offload tidak berhasil membongkar status yang terkait dengan struktur NDIS_MINIPORT_OFFLOAD_BLOCK_LIST, target tidak boleh menulis nilai ke lokasi memori yang ditujukkan oleh anggota *MiniportOffloadContext . Untuk informasi selengkapnya, lihat Menyimpan dan Mereferensikan Status Terbongkar.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header ndischimney.h (termasuk Ndischimney.h)
IRQL Tingkat apa pun

Lihat juga

MiniportInitializeEx

NDIS_MINIPORT_OFFLOAD_BLOCK_LIST

NdismInitiateOffloadComplete

NdisMSetMiniportAttributes