TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER fungsi panggilan balik (ndischimney.h)

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

NDIS memanggil driver protokol atau driver perantara Fungsi ProtocolTcpOffloadReceiveIndicate untuk mengirimkan data yang diterima yang ditunjukkan oleh driver atau target offload yang mendasar.

Sintaks

TCP_OFFLOAD_RECEIVE_INDICATE_HANDLER TcpOffloadReceiveIndicateHandler;

NDIS_STATUS TcpOffloadReceiveIndicateHandler(
  [in]  IN PVOID OffloadContext,
  [in]  IN PNET_BUFFER_LIST NetBufferList,
  [in]  IN NDIS_STATUS Status,
  [out] OUT PULONG BytesConsumed
)
{...}

Parameter

[in] OffloadContext

Penunjuk ke protokol atau struktur NDIS_OFFLOAD_HANDLE driver perantara untuk koneksi TCP tempat indikasi sedang dibuat. Protokol atau driver perantara menyediakan pointer ini sebagai parameter input ke fungsi NdisInitiateOffload saat membongkar koneksi.

[in] NetBufferList

Penunjuk ke struktur NET_BUFFER_LIST . Setiap struktur NET_BUFFER_LIST menjelaskan daftar struktur NET_BUFFER . Setiap struktur NET_BUFFER dalam daftar memetakan ke rantai daftar deskriptor memori (MDL). MDL berisi data yang diterima. MDL dikunci sehingga tetap tinggal, tetapi tidak dipetakan ke dalam memori sistem.

Struktur NET_BUFFER_LIST yang ditentukan oleh NetBufferList harus merupakan struktur yang berdiri sendiri dan tidak dapat menjadi struktur pertama dalam daftar struktur NET_BUFFER_LIST yang ditautkan. Target offload dapat mengatasi batasan ini dengan menautkan MDL sebanyak yang diperlukan ke NET_BUFFER yang sama dalam indikasi penerima offload.

[in] Status

Driver perantara harus menyebarkan status ini saat memanggil NdisTcpOffloadReceiveHandler.

[out] BytesConsumed

Penunjuk ke variabel berjenis ULONG yang menerima jumlah byte yang digunakan oleh aplikasi klien.

Nilai kembali

The Fungsi ProtocolTcpOffloadReceiveIndicate dapat mengembalikan salah satu nilai berikut:

Menampilkan kode Deskripsi
NDIS_STATUS_SUCCESS
Aplikasi klien menggunakan semua data penerima yang ditunjukkan.
NDIS_STATUS_OFFLOAD_DATA_NOT_ACCEPTED
Aplikasi klien menolak semua data penerima yang ditunjukkan.
NDIS_STATUS_OFFLOAD_DATA_PARTIALLY_ACCEPTED
Aplikasi klien menggunakan subset dari data penerima yang ditunjukkan. Jumlah data, dalam byte, yang digunakan oleh aplikasi klien dikembalikan dalam variabel yang ditentukan oleh parameter BytesConsumed .

Keterangan

Untuk menyebarkan indikasi ke driver atau tumpukan host yang terlalu berlebihan, driver perantara memanggil Fungsi NdisTcpOffloadReceiveHandler . Driver perantara meneruskan parameter berikut ke fungsi NdisTcpOffloadReceiveHandler :

  • NdisOffloadHandle yang disimpan target offload dalam konteksnya untuk koneksi TCP yang dilepas. Untuk mengetahui informasi selengkapnya, lihat Mereferensikan Status Offload melalui Driver Perantara.
  • Penunjuk NetBufferList yang diteruskan NDIS ke fungsi ProtocolTcpOffloadReceiveIndicate driver menengah.
  • Status yang diteruskan NDIS ke fungsi ProtocolTcpOffloadReceiveIndicate driver menengah.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header ndischimney.h (termasuk Ndischimney.h)

Lihat juga

MDL

NDIS_OFFLOAD_HANDLE

NET_BUFFER

NET_BUFFER_LIST

NdisInitiateOffload

NdisOffloadTcpReceiveReturn

NdisTcpOffloadReceiveHandler