Makro NdisMCmDispatchIncomingCloseCall (ndis.h)

NdisMCmDispatchIncomingCloseCall memberi tahu klien untuk merobek panggilan aktif atau ditawarkan, biasanya karena driver MCM telah menerima permintaan dari jaringan untuk menutup koneksi.

Sintaks

void NdisMCmDispatchIncomingCloseCall(
   _S_,
   _H_,
   _B_,
   _Z_
);

Parameter

_S_

Menentukan NDIS_STATUS_XXXX yang ditentukan penelepon, menunjukkan alasan permintaan pemutusan sambungan. Selama operasi jaringan normal, driver MCM melewati NDIS_STATUS_SUCCESS untuk menunjukkan bahwa ia telah menerima permintaan, yang dimulai oleh pihak jarak jauh, untuk menutup panggilan aktif.

_H_

Menentukan handel ke VC panggilan yang terputus. Handel ini disediakan oleh NDIS ketika VC awalnya dibuat, baik oleh driver MCM dengan NdisMCmCreateVc atau sebagai parameter input untuk fungsi ProtocolCoCreateVc-nya .

_B_

Penunjuk ke buffer residen yang dialokasikan penelepon yang berisi data pemutusan khusus protokol tambahan, jika ada. Tergantung pada media yang mendasar, pointer ini bisa NULL.

_Z_

Menentukan ukuran dalam byte buffer, nol jika Bufferadalah NULL.

Mengembalikan nilai

Tidak ada

Keterangan

Dalam operasi jaringan normal, driver MCM memanggil NdisMCmDispatchIncomingCloseCall dengan CloseStatus diatur ke NDIS_STATUS_SUCCESS karena klien yang sesuai pada simpul jarak jauh telah disebut NdisClCloseCall.

Namun, driver MCM juga dapat memanggil NdisMCmDispatchIncomingCloseCall jika salah satu hal berikut ini terjadi:

  • Driver MCM telah memberi tahu klien tentang penawaran panggilan masuk. Ketika driver miniport Fungsi ProtocolCmIncomingCallComplete dipanggil dengan penerimaan klien, ini memvalidasi parameter panggilan input, yang telah dimodifikasi klien. ProtocolCmIncomingCallComplete menentukan bahwa klien mengusulkan parameter panggilan yang tidak didukung untuk koneksi, sehingga memanggil NdisMCmDispatchIncomingCloseCall.
  • Kondisi jaringan abnormal memaksa driver MCM untuk merobek panggilan aktif. Misalnya, jika driver MCM diberi tahu ketika ada tautan pada koneksi antara klien ini dan pihak jarak jauh ke koneksi tidak berfungsi, driver miniport akan memanggil NdisCmDispatchIncomingCloseCall untuk mencegah klien mencoba (atau mengharapkan) transfer data lebih lanjut pada koneksi yang rusak tersebut.
Setelah klien memanggil NdisClCloseCall sehingga menyebabkan penonaktifan VC, pembuat asli VC bertanggung jawab untuk menghancurkan VC. Baik klien memanggil NdisCoDeleteVc, yang menyebabkan NDIS memanggil fungsi ProtocolCoDeleteVc driver MCM, atau driver MCM memanggil NdisMCmDeleteVc setelah memanggil NdisMCmDeactivateVc dan merilis sumber daya tambahan yang terkait dengan VC yang dibuatnya.

Panggilan ke NdisMCmDispatchIncomingCloseCall menyebabkan NDIS memanggil klien Fungsi ProtocolClIncomingCloseCall .

Hanya driver miniport berorientasi koneksi yang menyediakan dukungan manajemen panggilan yang dapat memanggil NdisMCmDispatchIncomingCall. Manajer panggilan mandiri, yang mendaftarkan diri mereka dengan NDIS sebagai driver protokol, panggil NdisCmDispatchIncomingCloseCall sebagai gantinya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung untuk driver NDIS 6.0 dan NDIS 5.1 (lihat NdisMCmDispatchIncomingCloseCall (NDIS 5.1)) di Windows Vista. Didukung untuk driver NDIS 5.1 (lihat NdisMCmDispatchIncomingCloseCall (NDIS 5.1)) di Windows XP.
Target Platform Desktop
Header ndis.h (termasuk Ndis.h)
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI Irql_MCM_Function(ndis)

Lihat juga

MiniportInterruptDPC

NdisClCloseCall

NdisMCmDeactivateVc

NdisMCmDeleteVc

NdisMCmDispatchIncomingCall

NdisMCmDispatchIncomingDropParty

ProtocolClIncomingCloseCall

ProtocolCoDeleteVc