struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS (ndis.h)

Struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS menentukan fungsi ProtocolXxx manajer panggilan CoNDIS untuk driver yang meneruskan struktur ini ke Fungsi NdisSetOptionalHandlers .

Sintaks

typedef struct _NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS {
  NDIS_OBJECT_HEADER                  Header;
  ULONG                               Reserved;
  CO_CREATE_VC_HANDLER                CmCreateVcHandler;
  CO_DELETE_VC_HANDLER                CmDeleteVcHandler;
  CM_OPEN_AF_HANDLER                  CmOpenAfHandler;
  CM_CLOSE_AF_HANDLER                 CmCloseAfHandler;
  CM_REG_SAP_HANDLER                  CmRegisterSapHandler;
  CM_DEREG_SAP_HANDLER                CmDeregisterSapHandler;
  CM_MAKE_CALL_HANDLER                CmMakeCallHandler;
  CM_CLOSE_CALL_HANDLER               CmCloseCallHandler;
  CM_INCOMING_CALL_COMPLETE_HANDLER   CmIncomingCallCompleteHandler;
  CM_ADD_PARTY_HANDLER                CmAddPartyHandler;
  CM_DROP_PARTY_HANDLER               CmDropPartyHandler;
  CM_ACTIVATE_VC_COMPLETE_HANDLER     CmActivateVcCompleteHandler;
  CM_DEACTIVATE_VC_COMPLETE_HANDLER   CmDeactivateVcCompleteHandler;
  CM_MODIFY_CALL_QOS_HANDLER          CmModifyCallQoSHandler;
  CO_OID_REQUEST_HANDLER              CmOidRequestHandler;
  CO_OID_REQUEST_COMPLETE_HANDLER     CmOidRequestCompleteHandler;
  CM_NOTIFY_CLOSE_AF_COMPLETE_HANDLER CmNotifyCloseAfCompleteHandler;
} NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS, *PNDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS;

Anggota

Header

Struktur NDIS_OBJECT_HEADER untuk struktur karakteristik CoNDIS manajer panggilan (NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS). Atur anggota Jenis struktur yang ditentukan Header ke NDIS_OBJECT_TYPE_CO_CALL_MANAGER_OPTIONAL_HANDLERS, anggota Revisi ke NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS_REVISION_1, dan anggota Ukuran ke NDIS_SIZEOF_CO_CALL_MANAGER_OPTIONAL_HANDLERS_REVISION_1.

Reserved

Dicadangkan untuk NDIS.

CmCreateVcHandler

Titik masuk fungsi ProtocolCoCreateVc penelepon.

CmDeleteVcHandler

Titik masuk fungsi ProtocolCoDeleteVc penelepon .

CmOpenAfHandler

Titik masuk fungsi ProtocolCmOpenAf penelepon.

CmCloseAfHandler

Titik masuk fungsi ProtocolCmCloseAf penelepon.

CmRegisterSapHandler

Titik masuk pemanggil Fungsi ProtocolCmRegisterSap .

CmDeregisterSapHandler

Titik masuk pemanggil Fungsi ProtocolCmDeregisterSap .

CmMakeCallHandler

Titik masuk fungsi ProtocolCmMakeCall penelepon.

CmCloseCallHandler

Titik masuk pemanggil Fungsi ProtocolCmCloseCall .

CmIncomingCallCompleteHandler

Titik masuk pemanggil Fungsi ProtocolCmIncomingCallComplete .

CmAddPartyHandler

Titik masuk fungsi ProtocolCmAddParty penelepon.

CmDropPartyHandler

Titik masuk pemanggil Fungsi ProtocolCmDropParty .

CmActivateVcCompleteHandler

Titik masuk pemanggil Fungsi ProtocolCmActivateVcComplete .

CmDeactivateVcCompleteHandler

Titik masuk pemanggil Fungsi ProtocolCmDeactivateVcComplete .

CmModifyCallQoSHandler

Titik masuk pemanggil Fungsi ProtocolCmModifyCallQoS .

CmOidRequestHandler

Titik masuk pemanggil Fungsi ProtocolCoOidRequest .

CmOidRequestCompleteHandler

Titik masuk pemanggil Fungsi ProtocolCoOidRequestComplete .

CmNotifyCloseAfCompleteHandler

Titik masuk pemanggil Fungsi ProtocolCmNotifyCloseAfComplete .

Keterangan

Untuk menentukan titik masuk sebagai manajer panggilan CoNDIS, driver protokol atau manajer panggilan miniport (MCM) menginisialisasi struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS dan meneruskannya ke Fungsi NdisSetOptionalHandlers .

Batasan Call Manager yang Berdiri Sendiri

Manajer panggilan mandiri memanggil NdisSetOptionalHandlers dari fungsi ProtocolSetOptions . Manajer panggilan harus mengatur setiap titik masuk dalam struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS ke fungsi ProtocolXxx yang disediakan driver saat memanggil NdisSetOptionalHandlers, bahkan jika manajer panggilan tidak mendukung panggilan masuk, panggilan keluar, atau koneksi titik-ke-multipoint. Untuk subset fungsionalitas berorientasi koneksi apa pun yang tidak didukung oleh manajer panggilan seperti itu, fungsi ProtocolXxx tempat penampungnya hanya boleh mengembalikan NDIS_STATUS_NOT_SUPPORTED.

Setelah manajer panggilan mandiri memanggil Fungsi NdisCmRegisterAddressFamilyEx berhasil, NDIS mengabaikan titik masuk apa pun yang sebelumnya ditentukan manajer panggilan untuk Fungsi ProtocolOidRequestComplete dari NDIS_PROTOCOL_DRIVER_CHARACTERISTICS struktur yang diteruskan ke Fungsi NdisRegisterProtocolDriver .

Batasan MCM

MCM memanggil fungsi NdisSetOptionalHandlers dari fungsi MiniportSetOptions . MCM harus mengatur setiap anggota CmXxx dalam struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS ke fungsi ProtocolXxx yang disediakan MCM meskipun MCM tidak mendukung panggilan masuk, panggilan keluar, atau koneksi titik-ke-multipoint. Untuk subset fungsionalitas berorientasi koneksi apa pun yang tidak didukung driver MCM seperti itu, fungsi ProtocolXxx seharusnya hanya mengembalikan NDIS_STATUS_NOT_SUPPORTED. Misalnya, NDIS tidak pernah memanggil driver MCM yang terdaftar ProtocolCmActivateVcComplete atau Fungsi ProtocolCmDeactivateVcComplete , sehingga fungsi-fungsi ini dapat mengembalikan NDIS_STATUS_NOT_SUPPORTED tetapi harus memiliki titik masuk dalam struktur NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS.

Driver MCM harus menentukan titik masuk untuk fungsi ProtocolCoCreateVc dan ProtocolCoDeleteVc . Jika MCM sebelumnya mendaftarkan fungsi MiniportCoCreateVc atau MiniportCoDeleteVc . NDIS mengabaikan titik masuk untuk fungsi-fungsi ini, setiap kali NDIS memanggil driver MCM untuk membuat atau menghapus koneksi virtual (VC). Oleh karena itu, NDIS meneruskan nilai NdisAfHandle untuk parameter awal ke fungsi ProtocolCoCreateVc atau ProtocolCoDeleteVc yang disediakan MCM, bukan nilai MiniportAdapterContext yang akan diteruskan ke fungsi MiniportCoCreateVc atau MiniportCoDeleteVc dari driver miniport non-MCM.

Driver MCM tidak dapat mengatur anggota cmOidRequestHandler dari NDIS_CO_CALL_MANAGER_OPTIONAL_HANDLERS ke fungsi MiniportCoOidRequest-nya . Driver harus menyediakan titik masuk terpisah untuk fungsi ProtocolCoOidRequest . Driver MCM harus memiliki fungsi ProtocolCoOidRequest untuk menangani permintaan manajer panggilan dari klien CoNDIS dan harus memiliki Fungsi ProtocolCoOidRequestComplete .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Didukung di NDIS 6.0 dan yang lebih baru.
Header ndis.h (termasuk Ndis.h)

Lihat juga

MiniportCoCreateVc

MiniportCoDeleteVc

MiniportCoOidRequest

MiniportSetOptions

NDIS_OBJECT_HEADER

NDIS_PROTOCOL_DRIVER_CHARACTERISTICS NdisCmRegisterAddressFamilyEx

NdisRegisterProtocolDriver

NdisSetOptionalHandlers

ProtocolCmActivateVcComplete

ProtocolCmAddParty

ProtocolCmCloseAf

ProtocolCmCloseCall

ProtocolCmDeactivateVcComplete

ProtocolCmDeregisterSap

ProtocolCmDropParty

ProtocolCmIncomingCallComplete

ProtocolCmMakeCall

ProtocolCmModifyCallQoS

ProtocolCmOpenAf

ProtocolCmRegisterSap

ProtocolOidRequestComplete

ProtocolSetOptions